.pc-app,.pc-dashboard{--pc-accent:#2E5CE6;--pc-navy:#16235B;--pc-ok:#16a34a;--pc-ko:#E5342A;--pc-bg:#fff;--pc-soft:#f1f5f9;--pc-border:#e2e8f0;--pc-text:#16235B;--pc-muted:#64748b;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--pc-text);max-width:760px;margin:0 auto;line-height:1.5}
.pc-app *,.pc-dashboard *{box-sizing:border-box}
.pc-card{background:var(--pc-bg);border:1px solid var(--pc-border);border-radius:14px;padding:28px;box-shadow:0 1px 3px rgba(0,0,0,.06);margin-bottom:18px}
.pc-h1{font-size:1.6rem;font-weight:700;margin:0 0 8px}
.pc-lead{color:var(--pc-muted);margin:0 0 22px}
.pc-meta{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 22px}
.pc-chip{background:var(--pc-soft);border-radius:999px;padding:6px 14px;font-size:.85rem}
.pc-btn{display:inline-block;background:var(--pc-accent);color:#fff;border:none;border-radius:10px;padding:13px 26px;font-size:1rem;font-weight:600;cursor:pointer;transition:filter .15s;text-decoration:none}
.pc-btn:hover{filter:brightness(1.08)}
.pc-btn:disabled{opacity:.45;cursor:not-allowed}
.pc-btn-ghost{background:transparent;color:var(--pc-accent);border:1.5px solid var(--pc-border)}
.pc-topbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;flex-wrap:wrap}
.pc-progress{font-size:.9rem;color:var(--pc-muted)}
.pc-timer{font-variant-numeric:tabular-nums;font-weight:700;font-size:1.05rem;background:var(--pc-soft);padding:6px 12px;border-radius:8px}
.pc-timer.pc-warn{color:var(--pc-ko)}
.pc-bar{height:7px;background:var(--pc-soft);border-radius:999px;overflow:hidden;margin-bottom:22px}
.pc-bar>span{display:block;height:100%;background:var(--pc-accent);transition:width .25s}
.pc-theme-tag{display:inline-block;font-size:.78rem;font-weight:600;color:var(--pc-accent);background:#eff6ff;padding:4px 10px;border-radius:6px;margin-bottom:12px}
.pc-q{font-size:1.18rem;font-weight:600;margin:0 0 18px}
.pc-choices{display:flex;flex-direction:column;gap:10px;margin-bottom:24px}
.pc-choice{border:1.5px solid var(--pc-border);border-radius:10px;padding:14px 16px;cursor:pointer;display:flex;align-items:center;gap:12px;transition:border-color .15s,background .15s}
.pc-choice:hover{border-color:var(--pc-accent)}
.pc-choice.pc-sel{border-color:var(--pc-accent);background:#eff6ff}
.pc-letter{flex:0 0 26px;height:26px;border-radius:50%;background:var(--pc-soft);display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700}
.pc-choice.pc-sel .pc-letter{background:var(--pc-accent);color:#fff}
.pc-choice.pc-correct{border-color:var(--pc-ok);background:#f0fdf4}
.pc-choice.pc-correct .pc-letter{background:var(--pc-ok);color:#fff}
.pc-choice.pc-wrong{border-color:var(--pc-ko);background:#fef2f2}
.pc-choice.pc-wrong .pc-letter{background:var(--pc-ko);color:#fff}
.pc-q-feedback{margin:-8px 0 12px;font-weight:700}
.pc-q-feedback.ok{color:var(--pc-ok)}
.pc-q-feedback.ko{color:var(--pc-ko)}
.pc-q-exp{margin:0 0 22px;background:var(--pc-soft);border-left:3px solid var(--pc-accent);border-radius:8px;padding:12px 14px;font-size:.95rem;line-height:1.55;color:var(--pc-text)}
.pc-nav{display:flex;justify-content:space-between;gap:12px}
.pc-verdict{font-size:1.2rem;font-weight:700;margin-bottom:4px}
.pc-verdict.ok{color:var(--pc-ok)}
.pc-verdict.ko{color:var(--pc-ko)}
.pc-score-big{font-size:3rem;font-weight:800;margin:6px 0}
.pc-result-actions{margin-top:22px;display:flex;gap:12px;flex-wrap:wrap}
.pc-tline{display:flex;align-items:center;gap:12px;margin:10px 0}
.pc-tname{flex:1;font-weight:500}
.pc-tbar{flex:0 0 140px;height:8px;background:var(--pc-soft);border-radius:999px;overflow:hidden}
.pc-tbar>span{display:block;height:100%;background:var(--pc-accent)}
.pc-tval{flex:0 0 56px;text-align:right;font-variant-numeric:tabular-nums;font-weight:600}
.pc-review{margin-top:24px}
.pc-rev-q{border:1px solid var(--pc-border);border-radius:10px;padding:16px;margin-bottom:12px}
.pc-rev-qt{font-weight:600;margin:6px 0 8px}
.pc-rev-line{padding:4px 0;font-size:.95rem}
.pc-rev-line.ok{color:var(--pc-ok)}
.pc-rev-line.ko{color:var(--pc-ko)}
.pc-rev-exp{margin-top:8px;padding:10px 12px;background:var(--pc-soft);border-radius:8px;font-size:.9rem;color:var(--pc-text)}
.pc-hidden{display:none}
.pc-history{width:100%;border-collapse:collapse;font-size:.93rem}
.pc-history th,.pc-history td{text-align:left;padding:9px 8px;border-bottom:1px solid var(--pc-border)}
.pc-history th{color:var(--pc-muted);font-weight:600}
.pc-ok-txt{color:var(--pc-ok);font-weight:600}
.pc-ko-txt{color:var(--pc-ko);font-weight:600}
.pc-login h3{margin-top:0}

/* ===== Espace membre ===== */
.pc-em{--pc-accent:#2E5CE6;--pc-navy:#16235B;--pc-ok:#16a34a;--pc-soft:#f1f5f9;--pc-border:#e2e8f0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--pc-navy);max-width:920px;margin:0 auto}
.pc-em *{box-sizing:border-box}
.pc-em-head{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:22px}
.pc-em-hello{font-size:1.7rem;font-weight:800;margin:0}
.pc-em-sub{color:#64748b;margin:4px 0 0}
.pc-em-score{text-align:center;background:#fff;border:1px solid var(--pc-border);border-radius:14px;padding:12px 22px}
.pc-em-score-num{display:block;font-size:1.9rem;font-weight:800;color:var(--pc-accent);line-height:1}
.pc-em-score-lbl{display:block;font-size:.8rem;color:#64748b;margin-top:2px}
.pc-em-heroes{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:30px}
@media(max-width:720px){.pc-em-heroes{grid-template-columns:1fr}}
.pc-em-hero{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;background:var(--pc-navy);color:#fff;border-radius:18px;padding:26px 28px;text-decoration:none;transition:filter .15s}
.pc-em-hero:hover{filter:brightness(1.1)}
.pc-em-hero-txt{display:flex;flex-direction:column;gap:4px}
.pc-em-hero-kicker{font-size:.85rem;opacity:.85;font-weight:600}
.pc-em-hero-title{font-size:1.5rem;font-weight:800}
.pc-em-hero-desc{font-size:.9rem;opacity:.8}
.pc-em-hero-last{font-size:.9rem;margin-top:6px;color:#cfe0ff}
.pc-em-hero-cta{background:var(--pc-accent);color:#fff;font-weight:700;padding:12px 22px;border-radius:10px;white-space:nowrap}
.pc-em-section{font-size:1.15rem;font-weight:700;margin:0 0 14px;color:var(--pc-navy)}
.pc-em-sec{display:flex;align-items:center;gap:16px;margin:42px 0 20px}
.pc-em-sec::before,.pc-em-sec::after{content:"";height:1px;background:var(--pc-border);flex:1}
.pc-em-sec>span{font-weight:800;font-size:1.18rem;color:var(--pc-navy);white-space:nowrap;letter-spacing:.2px}
.pc-em-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin-bottom:30px}
.pc-em-card{display:flex;flex-direction:column;gap:8px;background:#fff;border:1px solid var(--pc-border);border-radius:14px;padding:18px;text-decoration:none;color:var(--pc-navy);transition:transform .12s,box-shadow .12s,border-color .12s}
.pc-em-card:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(22,35,91,.10);border-color:var(--pc-accent)}
.pc-em-badge{align-self:flex-start;font-size:.72rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--pc-accent);background:#eef3ff;padding:4px 10px;border-radius:6px}
.pc-em-badge-alt{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:9px;font-size:1rem;background:var(--pc-navy);color:#fff;padding:0}
.pc-em-card-title{font-weight:700;font-size:1rem;line-height:1.3;flex:1}
.pc-em-card-meter{height:6px;background:var(--pc-soft);border-radius:999px;overflow:hidden}
.pc-em-card-meter>span{display:block;height:100%;border-radius:999px}
.pc-em-card-go{font-size:.85rem;color:var(--pc-accent);font-weight:600}
.pc-em-foot{margin-top:6px}

/* ===== Dashboard détaillé (ma-progression) ===== */
.pc-dashboard h3{font-size:1.1rem;margin:0 0 16px;padding-left:11px;border-left:3px solid var(--pc-accent);line-height:1.25}
.pc-btn-sm{padding:8px 16px;font-size:.88rem;border-radius:8px}
.pc-dash-head .pc-h1{font-size:1.7rem;font-weight:800}

/* Tuiles de statistiques */
.pc-mtiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:18px}
.pc-mtile{background:#fff;border:1px solid var(--pc-border);border-radius:14px;padding:16px 18px;box-shadow:0 1px 3px rgba(22,35,91,.05)}
.pc-mtile-num{display:block;font-size:1.7rem;font-weight:800;color:var(--pc-navy);line-height:1}
.pc-mtile-num small{font-size:.95rem;font-weight:600;color:var(--pc-muted)}
.pc-mtile-date{font-size:1.15rem}
.pc-mtile-lbl{display:block;font-size:.8rem;color:var(--pc-muted);margin-top:7px}

/* Bandeau activité (legacy) */
.pc-act{display:flex;flex-wrap:wrap;gap:10px}
.pc-act-i{background:var(--pc-soft);border-radius:999px;padding:7px 14px;font-size:.85rem;color:var(--pc-muted)}
.pc-act-i strong{color:var(--pc-text)}

/* 1. Préparation CR/CSP */
.pc-ready{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:560px){.pc-ready{grid-template-columns:1fr}}
.pc-ready-card{display:flex;flex-direction:column;gap:6px;padding:18px;border-radius:14px;border:1.5px solid var(--pc-border);text-decoration:none;color:var(--pc-text);background:#fff;transition:transform .12s,box-shadow .12s}
.pc-ready-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.08)}
.pc-ready-top{display:flex;justify-content:space-between;align-items:center}
.pc-ready-tag{font-weight:800;letter-spacing:.5px}
.pc-ready-verdict{font-size:.78rem;font-weight:700;padding:3px 10px;border-radius:999px}
.pc-ready-score{font-size:2.1rem;font-weight:800;line-height:1.1}
.pc-ready-score small{font-size:1rem;font-weight:600;color:var(--pc-muted)}
.pc-ready-sub{font-size:.82rem;color:var(--pc-muted)}
.pc-ready-ok{border-color:#bbf7d0;background:#f0fdf4}
.pc-ready-ok .pc-ready-verdict{background:#dcfce7;color:#15803d}
.pc-ready-ok .pc-ready-score{color:var(--pc-ok)}
.pc-ready-warn{border-color:#fde68a;background:#fffbeb}
.pc-ready-warn .pc-ready-verdict{background:#fef3c7;color:#b45309}
.pc-ready-low .pc-ready-verdict{background:#fee2e2;color:#b91c1c}
.pc-ready-none .pc-ready-verdict{background:var(--pc-soft);color:var(--pc-muted)}
.pc-ready-none .pc-ready-score{color:var(--pc-muted)}

/* 2. Courbe */
.pc-chart{width:100%;height:auto;display:block}
.pc-legend{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.82rem;color:var(--pc-muted);margin:10px 0 0}
.pc-legend .pc-dot{width:11px;height:11px;border-radius:50%;display:inline-block;margin-left:6px}
.pc-legend .pc-dash{width:18px;height:0;border-top:2px dashed #16a34a;display:inline-block;margin-left:6px}

/* 3. Priorité */
.pc-prio{padding:14px 0;border-bottom:1px solid var(--pc-border)}
.pc-prio:last-of-type{border-bottom:none}
.pc-prio-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.pc-prio-name{font-weight:700}
.pc-prio-rate{font-size:.84rem;color:var(--pc-muted);font-variant-numeric:tabular-nums}
.pc-prio-actions{display:flex;gap:8px;flex-wrap:wrap}

/* 4. Lecture + maîtrise */
.pc-dual{display:flex;align-items:center;gap:14px;margin:12px 0;flex-wrap:wrap}
.pc-dual-name{flex:0 0 150px;font-weight:600}
.pc-dual-pair{display:flex;gap:18px;flex:1;flex-wrap:wrap}
.pc-dual-mini{display:flex;align-items:center;gap:8px;min-width:200px;flex:1}
.pc-dual-lbl{flex:0 0 58px;font-size:.78rem;color:var(--pc-muted)}
.pc-dual-mini .pc-tbar{flex:1 1 auto}
.pc-dual-val{flex:0 0 42px;text-align:right;font-variant-numeric:tabular-nums;font-weight:600;font-size:.88rem}

/* ===== Espace membre : bandeau d'accueil ===== */
.pc-hero{background:linear-gradient(125deg,#16235B 0%,#243a8f 55%,#2E5CE6 100%);border-radius:20px;padding:26px 30px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:22px}
.pc-hero-greet{color:#fff;min-width:180px}
.pc-hero-h{font-size:1.7rem;font-weight:800;margin:0;color:#fff}
.pc-hero-sub{color:#c7d2fe;margin:6px 0 0;font-size:.95rem}
.pc-hero-viz{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.pc-ring{width:104px;height:104px;flex:0 0 auto}
.pc-radar{width:210px;height:auto;flex:0 0 auto}
@media(max-width:560px){
	.pc-hero{justify-content:center;text-align:center}
	.pc-hero-viz{justify-content:center;width:100%}
}

/* Carte « Reprendre » */
.pc-resume{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid var(--pc-border);border-left:5px solid var(--pc-accent);border-radius:14px;padding:16px 20px;text-decoration:none;color:var(--pc-navy);margin-bottom:30px;transition:transform .12s,box-shadow .12s}
.pc-resume:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(22,35,91,.10)}
.pc-resume-done{border-left-color:var(--pc-ok)}
.pc-resume-ic{flex:0 0 auto;width:48px;height:48px;border-radius:12px;background:#eef3ff;display:flex;align-items:center;justify-content:center;font-size:1.5rem}
.pc-resume-txt{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0}
.pc-resume-k{font-size:.74rem;font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:var(--pc-muted)}
.pc-resume-title{font-weight:800;font-size:1.05rem}
.pc-resume-meter{display:flex;align-items:center;gap:10px;margin-top:4px}
.pc-resume-meter .pc-tbar{flex:1 1 auto;max-width:220px}
.pc-resume-pct{font-size:.8rem;color:var(--pc-muted);font-variant-numeric:tabular-nums}
.pc-resume-go{flex:0 0 auto;background:var(--pc-accent);color:#fff;font-weight:700;padding:11px 18px;border-radius:10px;white-space:nowrap}

/* Cartes à icône */
.pc-em-card-ic{border-top:3px solid var(--pc-accent)}
.pc-em-cardhead{display:flex;align-items:center;justify-content:space-between;gap:10px}
.pc-em-ic{width:40px;height:40px;border-radius:11px;background:#eef3ff;display:flex;align-items:center;justify-content:center;font-size:1.35rem}
.pc-em-ic-alt{background:#eaf3ee}

/* Bandeau : lignes de maîtrise par thème */
.pc-hero-themes{margin-top:18px;display:flex;flex-direction:column;gap:9px}
.pc-htline{display:flex;align-items:center;gap:12px}
.pc-htname{flex:0 0 88px;color:#fff;font-size:.85rem;font-weight:600}
.pc-htbar{flex:1;height:7px;background:rgba(255,255,255,.18);border-radius:999px;overflow:hidden}
.pc-htbar>span{display:block;height:100%;background:#34D399;border-radius:999px;transition:width .4s ease}
.pc-htval{flex:0 0 42px;text-align:right;color:#c7d2fe;font-size:.8rem;font-variant-numeric:tabular-nums;font-weight:600}

/* Bouton « progression détaillée » */
.pc-progress-cta{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid var(--pc-border);border-radius:16px;padding:16px 20px;text-decoration:none;color:var(--pc-navy);margin-bottom:30px;transition:transform .12s,box-shadow .12s}
.pc-progress-cta:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(22,35,91,.12)}
.pc-progress-ic{flex:0 0 auto;width:48px;height:48px;border-radius:12px;background:#eef3ff;display:flex;align-items:center;justify-content:center;font-size:1.5rem}
.pc-progress-txt{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}
.pc-progress-title{font-weight:800;font-size:1.05rem}
.pc-progress-sub{font-size:.85rem;color:var(--pc-muted)}
.pc-progress-go{flex:0 0 auto;background:var(--pc-accent);color:#fff;font-weight:700;padding:11px 20px;border-radius:10px;white-space:nowrap}
.pc-em-card-ic .pc-em-badge-alt{width:auto;height:auto;padding:4px 10px;border-radius:6px;background:#eaf3ee;color:#0f6e56;font-size:.72rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase}
.pc-em-card-ic.pc-em-card{justify-content:flex-start}
