:root{--navy:#07194a;--blue:#1265ff;--blue2:#54a0ff;--soft:#f4f8ff;--line:#dce8fb;--text:#101b4d;--muted:#64729a;--green:#10b981;--orange:#f59e0b;--purple:#7c3aed;--shadow:0 16px 40px rgba(12,31,74,.10);--radius:22px}*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:linear-gradient(180deg,#f7fbff,#fff);color:var(--text)}a{color:var(--blue);text-decoration:none}.topbar{height:76px;background:linear-gradient(90deg,#06184b,#08266a);display:flex;align-items:center;padding:0 56px;gap:32px;color:#fff;position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:12px;font-weight:700;font-size:29px;color:#fff}.brand span span{color:#2f86ff}.brand-icon{width:34px;height:34px;background:#fff;border-radius:10px;color:var(--blue);display:grid;place-items:center;font-size:13px;box-shadow:inset 0 0 0 5px #dbeaff}.topbar nav{display:flex;align-items:center;gap:28px;flex:1;justify-content:center}.topbar nav a{color:#fff;opacity:.95;font-weight:600}.topbar nav a.active{border-bottom:3px solid #36a3ff;padding-bottom:9px}.page{max-width:1460px;margin:0 auto;padding:36px 48px 46px;min-height:calc(100vh - 150px);background:radial-gradient(circle at 10% 15%,#eaf3ff 0 110px,transparent 120px),radial-gradient(circle at 80% 12%,#f1f6ff 0 150px,transparent 170px)}.footer{background:#06184b;color:#fff;display:flex;align-items:center;padding:22px 56px;justify-content:space-between}.footer .brand{font-size:24px}.footer-links{display:flex;gap:44px}.footer a{color:#fff}.socials{display:flex;gap:14px}.socials span{border:1px solid rgba(255,255,255,.45);width:30px;height:30px;border-radius:50%;display:grid;place-items:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:12px;padding:14px 24px;font-weight:600;border:0;cursor:pointer;transition:.18s;background:#fff}.btn.small{padding:11px 24px}.btn-primary{background:linear-gradient(135deg,#075cff,#208dff);color:#fff;box-shadow:0 8px 20px rgba(18,101,255,.25)}.btn-outline{border:1.5px solid var(--blue);color:var(--blue);background:#fff}.btn.full{width:100%}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.danger{border:1px solid #ffd3d3;color:#ef4444;background:#fff}.card{background:rgba(255,255,255,.92);border:1px solid #e2ecfb;border-radius:var(--radius);box-shadow:var(--shadow);padding:24px}.glass{background:rgba(255,255,255,.88);backdrop-filter:blur(12px)}.alert{padding:14px 18px;border-radius:14px;margin-bottom:18px;border:1px solid}.alert.success{background:#ecfdf5;border-color:#bbf7d0;color:#047857}.alert.error{background:#fef2f2;border-color:#fecaca;color:#b91c1c}.alert.info{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.hero{display:grid;grid-template-columns:1fr 1.15fr;gap:42px;align-items:center;padding:24px 0 20px}.hero h1{font-size:62px;line-height:1.04;margin:0 0 24px;color:#07164a;letter-spacing:-2px}.hero h1 span{color:var(--blue)}.hero p{font-size:21px;line-height:1.55;color:#3a4774;max-width:560px}.actions{display:flex;gap:18px;margin-top:30px}.hero-card{padding:24px}.card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.sim-preview{display:grid;grid-template-columns:270px 1fr;gap:18px}.sim-settings{display:grid;gap:10px}.sim-settings div{background:#fff;border:1px solid #e5edfb;padding:13px;border-radius:12px}.sim-settings small{display:block;color:var(--muted);margin-top:4px}.avatars{min-height:310px;border-radius:18px;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;background:linear-gradient(135deg,#dce7ff,#f5f1ff);position:relative}.avatar{display:grid;place-items:center;font-size:120px}.avatar.male{background:rgba(0,60,160,.08)}.avatar.female{background:rgba(245,220,210,.55)}.video-controls{position:absolute;left:0;right:0;bottom:0;background:rgba(3,12,35,.75);color:#fff;text-align:center;padding:16px;font-size:22px}.feature-grid,.kpis,.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.feature-grid{margin:28px 0}.feature-grid .card{display:grid;grid-template-columns:80px 1fr;align-items:center}.feature-grid h3{margin:0}.feature-grid p{margin:6px 0;color:var(--muted);line-height:1.5}.icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;font-size:27px}.icon.blue{background:#e5f0ff}.icon.green{background:#d9f8ec}.icon.purple{background:#efe5ff}.business-panel{display:grid;grid-template-columns:1fr 1.4fr;gap:30px;align-items:center;margin:26px 0}.kpis{grid-template-columns:repeat(4,1fr);margin:22px 0}.kpis.compact{grid-template-columns:repeat(4,1fr)}.kpis .card,.kpis div{min-height:116px;display:flex;flex-direction:column;gap:4px}.kpis strong{font-size:32px}.kpis small{color:var(--muted);font-weight:700}.credits-strip{background:#eef6ff;border-radius:22px;padding:28px;margin-top:28px;text-align:center}.packs{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.pack{background:#fff;border:1px solid #d8e7ff;border-radius:16px;padding:20px;display:grid;grid-template-columns:80px 1fr;align-items:center;text-align:left;color:var(--text)}.pack strong{background:linear-gradient(135deg,#1265ff,#54a0ff);color:#fff;border-radius:50%;width:70px;height:70px;display:grid;place-items:center;font-size:35px;grid-row:span 2}.pack span{font-weight:700}.pack small{color:var(--muted)}.pack.teal strong{background:linear-gradient(135deg,#14b8a6,#38e2cf)}.pack.purple strong{background:linear-gradient(135deg,#7c3aed,#c084fc)}.auth-card{max-width:520px;margin:50px auto}.form{display:grid;gap:16px}.form label{font-weight:700;color:#26345f;display:grid;gap:8px}.form input,.form textarea,.form select,.chat-input{width:100%;border:1px solid var(--line);border-radius:12px;padding:14px 15px;font:inherit;background:#fff;color:var(--text)}textarea{resize:vertical}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.page-title h1,.dashboard-head h1{font-size:44px;margin:10px 0;color:#08184a}.page-title p,.dashboard-head p{color:#45527f;font-size:18px}.dashboard-head{display:flex;justify-content:space-between;gap:30px;align-items:center}.cta-card{background:linear-gradient(135deg,#075cff,#0d7dff);color:#fff;border-radius:22px;padding:28px;min-width:330px;display:grid;gap:10px;text-align:center;box-shadow:var(--shadow)}.cta-card b{background:#fff;color:var(--blue);padding:14px;border-radius:10px}.grid-main{display:grid;grid-template-columns:1fr 430px;gap:26px}.cv-row{display:grid;grid-template-columns:70px 1fr auto;align-items:center;margin-bottom:18px}.table{width:100%;border-collapse:collapse}.table th,.table td{border-bottom:1px solid #e6eefb;text-align:left;padding:13px 10px}.table th{color:#34436e;font-size:13px}.pill{border-radius:999px;background:#eef4ff;color:var(--blue);padding:6px 10px;font-weight:600;font-size:12px;display:inline-block}.pill.green{background:#dcfce7;color:#15803d}.progress{height:12px;background:#e4edfb;border-radius:999px;overflow:hidden}.progress span{height:100%;display:block;background:linear-gradient(90deg,var(--blue),#31a0ff);border-radius:999px}.progress-card{margin-top:18px}.side-stack{display:grid;gap:18px;align-content:start}.tags{display:flex;flex-wrap:wrap;gap:12px}.tags span{background:#f1f5ff;border-radius:999px;padding:11px 14px;font-weight:600;color:#3d4b78}.simulation-layout{display:grid;grid-template-columns:1fr 340px;gap:28px}.config-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.config-grid .card:nth-child(4),.config-grid .card:nth-child(5){grid-column:span 1}.step{background:var(--blue);color:#fff;border-radius:50%;width:27px;height:27px;display:inline-grid;place-items:center;font-size:14px;margin-right:8px}.upload{border:1.5px dashed #9fc4ff;background:#f6faff;border-radius:16px;min-height:145px;display:grid!important;place-items:center;text-align:center;color:var(--blue);padding:18px}.upload input{display:none}.choice-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px}.choice{border:1px solid var(--line);border-radius:14px;text-align:center;padding:10px;cursor:pointer}.choice input{display:none}.choice:has(input:checked){border:2px solid var(--blue);box-shadow:0 0 0 4px #eaf2ff}.avatar-mini{font-size:82px;background:#edf4ff;border-radius:12px;padding:12px}.pills{display:flex;gap:12px;flex-wrap:wrap}.pills label{border:1px solid var(--line);border-radius:12px;padding:15px 18px;background:#fff;cursor:pointer;font-weight:600}.pills input{accent-color:var(--blue)}.recap{position:sticky;top:100px;height:max-content}.cost{background:#eff6ff;border:1px solid #d4e7ff;border-radius:14px;padding:16px;text-align:center;display:grid;gap:5px;margin:16px 0}.cost span{font-size:40px}.cost strong{font-size:28px}.recap li{margin:12px 0;color:#48557f}.interview-header{display:flex;justify-content:space-between;align-items:center}.live-dot{width:10px;height:10px;background:var(--green);display:inline-block;border-radius:50%;margin-right:7px}.interview-grid{display:grid;grid-template-columns:300px 1fr 300px;gap:20px}.meta-list{list-style:none;padding:0;margin:0}.meta-list li{padding:13px 0;border-bottom:1px solid #edf3fd;display:flex;justify-content:space-between;gap:12px}.video-card{padding:14px}.ai-video{height:420px;border-radius:18px;background:radial-gradient(circle at 50% 40%,#aebbd0,#303846);position:relative;overflow:hidden;display:grid;place-items:center}.avatar-big{font-size:190px;filter:drop-shadow(0 18px 18px rgba(0,0,0,.25))}.badge{position:absolute;top:16px;left:16px;background:rgba(0,0,0,.55);color:#fff;border-radius:10px;padding:10px 14px}.video-bar{position:absolute;left:0;right:0;bottom:0;text-align:center;background:rgba(0,0,0,.7);padding:17px;color:#fff;font-size:22px}.question-card{text-align:center;margin-top:16px}.question-top{display:flex;justify-content:space-between;color:#526087}.score-ring{width:94px;height:94px;border-radius:50%;display:grid;place-items:center;margin:auto;background:conic-gradient(var(--blue) 0 72%,#dfe9f8 72%);font-size:25px;font-weight:700}.score-ring small{font-size:14px}.green-text{color:var(--green)}.chat-bubble{background:#f3f7ff;border-radius:12px;padding:15px;margin:10px 0}.secure-note{text-align:center;margin:18px auto 0;background:#fff;border:1px solid #e0eaff;border-radius:14px;padding:12px;width:max-content;box-shadow:var(--shadow)}.report-page{max-width:1000px;margin:30px auto}.report-head{display:flex;justify-content:space-between;align-items:center}.score-big{width:130px;height:130px;border-radius:50%;background:#dcfce7;color:#15803d;display:grid;place-items:center;font-size:38px;font-weight:700}.soft-card{background:#f7fbff;border:1px solid #e3eefc;border-radius:18px;padding:20px}.price{text-align:center}.coin{width:96px;height:96px;border-radius:50%;background:linear-gradient(135deg,#1265ff,#55a3ff);display:grid;place-items:center;color:#fff;font-size:45px;font-weight:700;margin:0 auto 16px}.org-pill{background:#fff;border:1px solid #e3ecfb;border-radius:14px;padding:14px 22px;box-shadow:var(--shadow)}.org-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px}.donut{width:170px;height:170px;border-radius:50%;margin:10px auto;background:conic-gradient(var(--blue) 0 56%,#8bbcff 56% 87%,#70dfb0 87%);display:grid;place-items:center;position:relative}.donut:before{content:"";position:absolute;inset:24px;background:#fff;border-radius:50%}.donut span,.donut small{position:relative}.donut span{font-size:34px;font-weight:700}.donut small{margin-top:42px;color:var(--muted)}.bars label{display:grid;grid-template-columns:160px 1fr 70px;gap:12px;align-items:center;margin:18px 0}.bars span{height:10px;background:#e3ebf8;border-radius:999px}.bars b{display:block;height:100%;background:var(--blue);border-radius:999px}.wallet-row{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:18px 0}.inline-form{display:flex;gap:12px;margin-top:12px}.inline-form input{max-width:130px}.form.compact{gap:10px}@media(max-width:1100px){.topbar{padding:0 18px;gap:16px}.topbar nav{display:none}.hero,.simulation-layout,.grid-main,.interview-grid,.org-grid,.business-panel{grid-template-columns:1fr}.config-grid,.feature-grid,.pricing-grid,.kpis,.packs,.grid-3{grid-template-columns:1fr}.page{padding:24px 18px}.hero h1{font-size:43px}.footer{padding:20px;flex-direction:column;gap:18px}.cv-row{grid-template-columns:1fr}.recap{position:static}.ai-video{height:320px}}
/* Correctif upload CV V1.2 */
.upload .upload-icon{font-size:34px;line-height:1}.upload span{display:block;color:#3967b4}.upload.has-file{border-color:#10b981;background:#ecfdf5;color:#047857}.upload.has-file span,.upload.has-file strong{color:#047857}.upload.dragover{border-color:#1265ff;background:#eaf2ff;transform:translateY(-1px)}


.selected-file{display:flex;align-items:center;gap:12px;margin-top:12px;padding:12px 14px;border:1px solid rgba(30,115,255,.18);background:#eef6ff;border-radius:16px;color:#17345f}
.selected-file span{font-size:24px}.selected-file small{display:block;color:#64748b}.selected-file strong{display:block;word-break:break-word}.hidden{display:none!important}.upload.has-file{border-color:#1e73ff;background:#f4f9ff}.upload.dragover{border-color:#16b6a5;background:#ecfffb}

/* JobPaca IA V1.4 - avatar parlant */
.voice-controls{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}.voice-controls button{border:0;border-radius:999px;padding:9px 13px;background:#fff;color:#0b2a6c;font-weight:700;cursor:pointer;box-shadow:0 5px 14px rgba(0,0,0,.18)}.voice-controls button:hover{transform:translateY(-1px);background:#eef6ff}.voice-panel{margin:14px auto 18px;padding:12px 14px;border:1px solid #dce8fb;background:#f7fbff;border-radius:14px;display:flex;justify-content:center;gap:14px;align-items:center;flex-wrap:wrap}.voice-panel label{display:flex!important;align-items:center;gap:8px;font-weight:600;color:#24345f}.voice-panel small{color:#64729a}.badge small{margin-left:8px;background:rgba(255,255,255,.22);padding:3px 7px;border-radius:999px;font-size:11px;text-transform:uppercase;letter-spacing:.04em}.ai-video.is-speaking{box-shadow:0 0 0 4px rgba(18,101,255,.18),0 0 38px rgba(18,101,255,.36)}.ai-video.is-speaking .avatar-big{animation:jobpacaTalk 1s ease-in-out infinite}.ai-video.is-speaking:after{content:"";position:absolute;inset:26px;border:2px solid rgba(255,255,255,.45);border-radius:22px;animation:jobpacaPulse 1.2s ease-out infinite;pointer-events:none}@keyframes jobpacaTalk{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-5px) scale(1.03)}}@keyframes jobpacaPulse{0%{opacity:.8;transform:scale(.98)}100%{opacity:0;transform:scale(1.05)}}


/* JobPaca IA V1.5 - réponse vocale candidat */
.speech-answer-panel{border:1px solid #dce8fb;background:linear-gradient(180deg,#f7fbff,#fff);border-radius:18px;padding:16px;display:grid;gap:12px;text-align:left}.speech-answer-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.speech-answer-head strong{color:#16275b}.speech-status{border-radius:999px;background:#eef4ff;color:#1265ff;padding:7px 11px;font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.03em}.speech-status[data-state="listening"]{background:#dcfce7;color:#15803d}.speech-status[data-state="error"]{background:#fee2e2;color:#b91c1c}.speech-status[data-state="done"]{background:#ecfdf5;color:#047857}.speech-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.speech-live{border:1px dashed #93c5fd;background:#eff6ff;color:#1e3a8a;border-radius:14px;padding:12px 14px;line-height:1.45;font-weight:700}.speech-warning{border:1px solid #fed7aa;background:#fff7ed;color:#9a3412;border-radius:14px;padding:12px 14px;font-weight:600}.speech-answer-panel small{color:#64729a}.speech-answer-panel.is-listening{box-shadow:0 0 0 4px rgba(16,185,129,.12);border-color:#86efac}.speech-answer-panel.is-listening #sttStart{background:#e5e7eb;color:#475569;box-shadow:none}.speech-answer-panel.is-listening #sttStop{border-color:#10b981;color:#047857;background:#ecfdf5}.ai-video.candidate-speaking{box-shadow:0 0 0 4px rgba(16,185,129,.18),0 0 38px rgba(16,185,129,.25)}.ai-video.candidate-speaking .badge small{background:rgba(16,185,129,.28)}
@media(max-width:760px){.speech-answer-head{align-items:flex-start;flex-direction:column}.speech-actions .btn{width:100%}}


/* V1.6 - état d'envoi de réponse */
.form.is-submitting { opacity: .78; pointer-events: none; }
.form.is-submitting button[type="submit"] { cursor: wait; }

/* JobPaca IA V1.7 - liste des CV enregistrés au lancement d'une simulation */
.cv-config-card { grid-row: span 2; }
.saved-cv-panel { border:1px solid #dbeafe; background:linear-gradient(180deg,#f8fbff,#eef6ff); border-radius:18px; padding:16px; margin-bottom:14px; display:grid; gap:10px; }
.saved-cv-head { display:grid; gap:3px; }
.saved-cv-head strong { color:#16275b; font-size:16px; }
.saved-cv-head small { color:#64729a; line-height:1.4; }
.saved-cv-select-label { display:block!important; margin-top:4px; color:#34436e; font-weight:700; }
.saved-cv-select { width:100%; border:1px solid #cfe0f7; background:#fff; color:#16275b; border-radius:14px; padding:13px 14px; font-weight:600; outline:none; }
.saved-cv-select:focus { border-color:#1265ff; box-shadow:0 0 0 4px rgba(18,101,255,.12); }
.selected-file-existing { background:#f0fdf4; border-color:#bbf7d0; color:#14532d; }
.separator-text { position:relative; text-align:center; margin:14px 0; color:#64748b; font-weight:700; font-size:12px; text-transform:uppercase; letter-spacing:.05em; }
.separator-text:before { content:""; position:absolute; left:0; right:0; top:50%; height:1px; background:#e2e8f0; }
.separator-text span { position:relative; background:#fff; padding:0 12px; }
.empty-cv-note { border:1px dashed #93c5fd; background:#eff6ff; border-radius:16px; padding:14px 16px; margin-bottom:14px; display:grid; gap:4px; color:#1e3a8a; }
.empty-cv-note small { color:#475569; }
@media(max-width:1100px){ .cv-config-card { grid-row:auto; } }


/* JobPaca IA V1.8 - bandeau cookies RGPD page accueil */
.cookie-banner{position:fixed;left:24px;right:24px;bottom:24px;z-index:9999;display:flex;justify-content:center;pointer-events:none}.cookie-banner[hidden]{display:none}.cookie-card{width:min(1120px,100%);background:rgba(255,255,255,.97);border:1px solid #dbeafe;border-radius:24px;box-shadow:0 22px 70px rgba(7,25,74,.24);padding:22px;display:grid;grid-template-columns:1.4fr auto;gap:20px;align-items:center;pointer-events:auto;backdrop-filter:blur(14px)}.cookie-copy h2{margin:6px 0 8px;color:#07194a;font-size:24px}.cookie-copy p{margin:0;color:#34436e;line-height:1.5}.cookie-copy small{display:block;margin-top:8px;color:#64729a;line-height:1.45}.cookie-badge{display:inline-flex;align-items:center;border-radius:999px;background:#eef6ff;color:#1265ff;font-weight:700;font-size:12px;padding:7px 10px;text-transform:uppercase;letter-spacing:.04em}.cookie-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.cookie-preferences{grid-column:1/-1;border-top:1px solid #e2ecfb;padding-top:16px;display:grid;gap:12px}.cookie-preferences[hidden]{display:none}.cookie-pref-row{display:grid!important;grid-template-columns:1fr auto;gap:18px;align-items:center;border:1px solid #e2ecfb;background:#f8fbff;border-radius:16px;padding:14px 16px;color:#16275b}.cookie-pref-row small{display:block;margin-top:5px;color:#64729a;line-height:1.35;font-weight:600}.cookie-pref-row input[type="checkbox"]{width:24px;height:24px;accent-color:#1265ff}.footer-cookie-link{border:0;background:transparent;color:#fff;font:inherit;cursor:pointer;padding:0}.footer-cookie-link:hover{text-decoration:underline}.cookies-preferences-open .cookie-banner{display:flex!important}@media(max-width:820px){.cookie-banner{left:12px;right:12px;bottom:12px}.cookie-card{grid-template-columns:1fr;padding:18px}.cookie-actions{justify-content:stretch}.cookie-actions .btn{width:100%}.cookie-pref-row{grid-template-columns:1fr}.footer-links{flex-wrap:wrap;justify-content:center}}

/* JobPaca IA V2.0 - niveau d'anglais et mini-test */
.kpi-link{text-decoration:none;color:inherit;transition:.18s ease}.kpi-link:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(7,25,74,.14)}.english-level-hero{display:grid;grid-template-columns:1.5fr .9fr;gap:24px;align-items:center;margin-bottom:22px}.english-level-hero h2{font-size:34px;margin:12px 0 8px}.english-level-hero h2 strong{color:var(--blue)}.english-score-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:14px}.pill.blue{background:#eaf2ff;color:#1265ff}.english-level-meter{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#f7fbff;border:1px solid #dbeafe;border-radius:22px;padding:18px}.english-level-meter span{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;font-weight:700;color:#52637f;background:#fff;border:1px solid #dce8fb}.english-level-meter span.active{background:linear-gradient(135deg,#1265ff,#55a3ff);color:#fff;border-color:#1265ff;box-shadow:0 10px 24px rgba(18,101,255,.24)}.english-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-bottom:22px}.english-mini-scores{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.english-mini-scores div{background:#f7fbff;border:1px solid #e2ecfb;border-radius:16px;padding:14px}.english-mini-scores small{display:block;color:var(--muted)}.english-mini-scores strong{font-size:24px;color:var(--navy)}.english-test-card{margin-bottom:22px}.section-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}.section-head h2{margin:0 0 6px}.english-test-form textarea{margin-top:8px}.english-oral-panel{margin:4px 0 10px}.english-result-card{margin-bottom:22px}.english-result-grid{display:grid;grid-template-columns:150px 1fr;gap:24px;align-items:start}.english-score-big{font-size:42px}.english-level-inline{margin-top:14px;border:1px solid #dbeafe;background:#f7fbff;border-radius:14px;padding:12px 14px;display:flex;justify-content:space-between;gap:12px;align-items:center;color:#31446e}.english-level-inline a{font-weight:700;color:var(--blue);text-decoration:none}.english-level-inline a:hover{text-decoration:underline}.tags a{display:inline-block;background:#eef4ff;color:#1265ff;border-radius:999px;padding:8px 12px;font-weight:700;text-decoration:none;margin:4px}.tags a:hover{background:#dbeafe}@media(max-width:900px){.english-level-hero,.english-grid,.english-result-grid{grid-template-columns:1fr}.english-level-meter{justify-content:flex-start;flex-wrap:wrap}.section-head{flex-direction:column}.english-level-inline{flex-direction:column;align-items:flex-start}}

/* JobPaca IA V2.1 - niveaux multilingues */
.language-level-hero { align-items: stretch; }
.language-switcher { margin-bottom: 12px; }
.language-list-card { margin-bottom: 22px; }
.language-pills-list { display:grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 12px; }
.language-pill { display:grid; grid-template-columns: 34px 1fr; gap: 4px 10px; align-items:center; padding: 13px 14px; border:1px solid #dbeafe; background:#f8fbff; border-radius:16px; text-decoration:none; color:#16275b; transition:.18s ease; }
.language-pill:hover { transform: translateY(-1px); box-shadow:0 12px 28px rgba(7,25,74,.10); }
.language-pill.active { border-color:#1265ff; background:#eef6ff; box-shadow:0 0 0 4px rgba(18,101,255,.08); }
.language-pill span { font-size:24px; grid-row: span 2; }
.language-pill strong { font-size:14px; }
.language-pill small { color:#64729a; }
.language-radio-grid { display:grid; grid-template-columns: repeat(auto-fit, minmax(132px, 1fr)); gap:10px; }
.language-radio-grid label { justify-content:center; }
.english-level-meter.single { justify-content:center; }
.english-level-meter.single span { width:86px; height:86px; font-size:28px; }
@media(max-width:760px){ .language-pills-list{grid-template-columns:1fr}.language-radio-grid{grid-template-columns:1fr 1fr} }

/* JobPaca IA V2.2 - mini-test langues avancé */
.advanced-language-test .test-part-title{display:grid;grid-template-columns:52px 1fr;gap:14px;align-items:start;background:linear-gradient(135deg,#eef6ff,#fff);border:1px solid #dbeafe;border-radius:18px;padding:16px 18px;margin:22px 0 14px}.advanced-language-test .test-part-title span{width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,#1265ff,#55a3ff);color:#fff;display:grid;place-items:center;font-weight:700;font-size:20px;box-shadow:0 10px 22px rgba(18,101,255,.18)}.advanced-language-test .test-part-title h3{margin:0 0 4px;color:#07194a}.advanced-language-test .test-part-title p{margin:0;color:#64729a}.listening-test-panel{border:1px solid #dbeafe;background:linear-gradient(180deg,#f7fbff,#fff);border-radius:20px;padding:18px;margin:8px 0 16px;display:grid;gap:14px}.listening-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.listening-card-head strong{display:block;color:#16275b;font-size:18px}.listening-card-head small{display:block;margin-top:5px;color:#64729a;line-height:1.45}.listening-text{border:1px dashed #93c5fd;background:#eff6ff;color:#1e3a8a;border-radius:16px;padding:16px;line-height:1.65;font-weight:700}.listening-test-panel.is-speaking{box-shadow:0 0 0 4px rgba(18,101,255,.12);border-color:#93c5fd}.listening-test-panel.is-speaking .listening-card-head strong:after{content:'  • lecture en cours';color:#1265ff;font-size:13px;text-transform:uppercase;letter-spacing:.04em}.english-mini-scores.score-three{grid-template-columns:repeat(3,1fr)}.advanced-language-test textarea{line-height:1.5}.advanced-language-test label strong{display:block;margin-bottom:3px;color:#16275b}.advanced-language-test label small{display:block;color:#64729a;line-height:1.45}@media(max-width:900px){.listening-card-head{flex-direction:column}.listening-card-head .speech-actions{width:100%}.listening-card-head .speech-actions .btn{flex:1}.english-mini-scores.score-three{grid-template-columns:1fr}.advanced-language-test .test-part-title{grid-template-columns:1fr}.advanced-language-test .test-part-title span{width:40px;height:40px}}

/* V2.7 - Rôles utilisateurs */
.role-badge{display:inline-flex;align-items:center;gap:7px;border-radius:999px;padding:7px 11px;font-weight:700;font-size:12px;line-height:1;border:1px solid rgba(255,255,255,.28);color:#fff;background:rgba(255,255,255,.12);white-space:nowrap}.role-badge:before{content:"";width:8px;height:8px;border-radius:50%;background:#94a3b8;box-shadow:0 0 0 3px rgba(255,255,255,.12)}.role-badge.role-super-admin{background:linear-gradient(135deg,#7c3aed,#2563eb);border-color:rgba(255,255,255,.42)}.role-badge.role-super-admin:before{background:#facc15}.role-badge.role-admin{background:rgba(18,101,255,.24)}.role-badge.role-admin:before{background:#38bdf8}.role-badge.role-user{background:rgba(255,255,255,.10)}.role-badge.role-user:before{background:#86efac}.admin-notice{display:grid;grid-template-columns:60px 1fr auto;gap:18px;align-items:center;margin-bottom:20px;background:linear-gradient(135deg,#eef2ff,#fff);border:1px solid #dbeafe}.admin-notice .admin-icon{width:54px;height:54px;border-radius:16px;background:linear-gradient(135deg,#7c3aed,#1265ff);color:#fff;display:grid;place-items:center;font-size:26px;box-shadow:0 14px 30px rgba(18,101,255,.22)}.admin-notice h2{margin:0 0 4px}.admin-notice p{margin:0;color:#64729a}.admin-tools-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:22px;align-items:start}.role-select{min-width:150px}.role-cell{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.role-help{display:grid;gap:12px}.role-help li{background:#f8fbff;border:1px solid #e2ecfb;border-radius:14px;padding:14px;list-style:none}.role-help strong{display:block;margin-bottom:4px;color:#07194a}.mini-muted{color:#64729a;font-size:13px}@media(max-width:900px){.admin-notice,.admin-tools-grid{grid-template-columns:1fr}.role-badge{margin:6px 0}}

/* V2.8 - Correctif lecture des textes à écouter */
.listening-status{display:inline-flex;margin-top:8px;border-radius:999px;background:#eef4ff;color:#1265ff;padding:7px 11px;font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.03em}
.listening-status[data-state="speaking"],.listening-status[data-state="loading"]{background:#dbeafe;color:#1d4ed8}
.listening-status[data-state="done"]{background:#dcfce7;color:#15803d}
.listening-status[data-state="warning"]{background:#fff7ed;color:#9a3412}
.listening-status[data-state="error"]{background:#fee2e2;color:#b91c1c}
.listening-warning{border:1px solid #fed7aa;background:#fff7ed;color:#9a3412;border-radius:14px;padding:12px 14px;font-weight:600;line-height:1.45}
.listening-text[dir="rtl"],.listening-test-panel[dir="rtl"] .listening-text{text-align:right;font-size:18px;line-height:1.9}
.listening-test-panel[dir="rtl"] textarea{text-align:right;direction:rtl}
.listening-test-panel.is-speaking{animation:jpListeningPulse 1.2s ease-in-out infinite alternate}
@keyframes jpListeningPulse{from{box-shadow:0 0 0 4px rgba(18,101,255,.10)}to{box-shadow:0 0 0 7px rgba(18,101,255,.18)}}

/* V2.9 - fallback audio serveur pour l'arabe */
.server-tts-test-card {
  margin-top: 24px;
}
.server-tts-test-card .speech-status,
[data-listening-status][data-state="loading"],
[data-listening-status][data-state="speaking"] {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-left: 10px;
}
[data-listening-status][data-state="error"] {
  color: #b42318;
  font-weight: 700;
}
/* V3.0 - audio arabe statique */
.alert.warning{background:#fffbeb;border-color:#fde68a;color:#92400e}.pill.orange{background:#ffedd5;color:#c2410c}.audio-static-card audio{margin-top:10px}.listening-status[data-state="loading"]{color:#1d4ed8}.listening-status[data-state="speaking"]{color:#15803d}.listening-status[data-state="error"]{color:#b91c1c}.listening-status[data-state="warning"]{color:#c2410c}

/* V3.2 - Super admin : gestion des MP3 de compréhension orale */
.audio-manager-card{margin:24px 0;background:linear-gradient(180deg,#ffffff,#f8fbff)}
.audio-mode-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.audio-admin-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:14px 0 20px;padding:14px;border:1px solid #dbeafe;background:#f7fbff;border-radius:16px}
.audio-admin-table audio{width:230px;max-width:100%}
.table-responsive{width:100%;overflow-x:auto}

/* Tableau de bord Super Admin des organisations */
.organization-summary-kpis{
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:16px;
}
.organization-summary-kpis .card{
  min-height:148px;
  padding:20px;
  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  grid-template-rows:auto auto;
  column-gap:14px;
  align-content:center;
  align-items:center;
}
.organization-summary-kpis .icon{
  grid-row:1 / span 2;
  width:48px;
  height:48px;
  min-height:48px;
  border-radius:14px;
  font-size:21px;
  display:grid;
  place-items:center;
}
.organization-summary-kpis small{
  align-self:end;
}
.organization-summary-kpis strong{
  align-self:start;
  font-size:30px;
  line-height:1.1;
}
@media(max-width:1200px){
  .organization-summary-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
  .organization-summary-kpis{grid-template-columns:1fr 1fr}
}
@media(max-width:480px){
  .organization-summary-kpis{grid-template-columns:1fr}
}
.audio-admin-table td{vertical-align:middle}
.pill.orange{background:#ffedd5;color:#c2410c}
@media(max-width:900px){.audio-mode-actions,.audio-admin-actions{justify-content:flex-start}.audio-admin-table audio{width:180px}}

/* Organisations : sélecteur, portefeuille et confirmation de suppression */
.organization-switcher{
  min-width:290px;
  padding:14px 16px;
  border:1px solid #d9e5f5;
  border-radius:16px;
  background:#fff;
  box-shadow:0 12px 32px rgba(7,25,74,.08);
}
.organization-switcher>label{
  display:block;
  margin-bottom:7px;
  color:#667085;
  font-size:.72rem;
  font-weight:750;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.organization-switcher>div{display:flex;align-items:center;gap:10px}
.organization-switcher select{
  flex:1;
  min-width:0;
  padding:8px 32px 8px 10px;
  border:0;
  border-radius:9px;
  background:#f6f9fe;
  color:#07194a;
  font:inherit;
  font-weight:750;
  cursor:pointer;
}
.organization-switcher>div>span{
  padding:6px 8px;
  border-radius:999px;
  background:#eef4ff;
  color:#155eef;
  font-size:.7rem;
  white-space:nowrap;
}
.organization-switcher>small{display:block;margin-top:7px;color:#7180a5}
.organization-wallet-card{display:flex!important;flex-direction:column;gap:18px}
.organization-wallet-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.organization-wallet-head h2{margin:9px 0 0}
.organization-wallet-status{
  padding:6px 9px;
  border-radius:999px;
  background:#e7f8ef;
  color:#067647;
  font-size:.72rem;
  font-weight:750;
}
.organization-wallet-balance{
  padding:20px;
  border-radius:18px;
  background:linear-gradient(135deg,#07194a,#155eef);
  color:#fff;
}
.organization-wallet-balance small{display:block;color:#cfe0ff;font-weight:650}
.organization-wallet-balance strong{display:inline-block;margin:7px 7px 0 0;font-size:3rem;line-height:1;letter-spacing:-.05em}
.organization-wallet-balance>span{color:#dce8ff}
.organization-wallet-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.organization-wallet-stats>div{padding:12px;border:1px solid #e2eaf6;border-radius:12px;background:#f8faff}
.organization-wallet-stats small,.organization-wallet-stats strong{display:block}
.organization-wallet-stats small{min-height:32px;color:#667085;font-size:.72rem}
.organization-wallet-stats strong{margin-top:5px;color:#07194a;font-size:1.35rem}
.organization-wallet-usage>div:first-child{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px;color:#526087;font-size:.82rem}
.organization-wallet-credit-form{padding-top:15px;border-top:1px solid #e6edf7}
.organization-wallet-credit-form label{display:grid;gap:8px;color:#526087;font-size:.78rem;font-weight:700}
.organization-wallet-credit-form label>span{display:grid;grid-template-columns:1fr auto;gap:9px}
.organization-wallet-credit-form input{min-width:0;padding:11px;border:1px solid #cfdcf0;border-radius:11px;font:inherit}
.organization-row-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.organization-delete-dialog{
  width:min(520px,calc(100% - 32px));
  padding:0;
  border:0;
  border-radius:22px;
  box-shadow:0 28px 90px rgba(7,25,74,.28);
}
.organization-delete-dialog::backdrop{background:rgba(7,18,50,.56);backdrop-filter:blur(3px)}
.organization-delete-form{padding:28px}
.organization-delete-icon{
  width:48px;height:48px;display:grid;place-items:center;border-radius:50%;
  background:#fee4e2;color:#b42318;font-size:1.4rem;font-weight:850;
}
.organization-delete-form h2{margin:16px 0 8px;color:#07194a}
.organization-delete-form p{color:#526087;line-height:1.55}
.organization-delete-form label{display:grid;gap:8px;margin-top:18px;color:#34436e;line-height:1.45}
.organization-delete-form input{
  width:100%;padding:12px 13px;border:1px solid #f3b4af;border-radius:11px;
  color:#07194a;font:inherit;
}
.organization-delete-form input:focus{outline:0;border-color:#d92d20;box-shadow:0 0 0 4px rgba(217,45,32,.1)}
.organization-dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}
@media(max-width:900px){
  .dashboard-head{align-items:stretch;flex-direction:column}
  .organization-switcher{width:100%;min-width:0}
}
@media(max-width:560px){
  .organization-wallet-stats{grid-template-columns:1fr}
  .organization-wallet-stats small{min-height:0}
  .organization-dialog-actions{flex-direction:column-reverse}
  .organization-dialog-actions .btn{width:100%}
}
.organization-responsible-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(460px,1.15fr);
  gap:28px;
  align-items:end;
  margin-top:18px;
  padding:20px 22px;
  background:linear-gradient(135deg,#f8fbff,#fff);
}
.organization-responsible-card h2{margin:9px 0 5px;font-size:1.25rem}
.organization-responsible-card p{margin:0;color:#667085}
.organization-responsible-form{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:8px 10px;align-items:end}
.organization-responsible-form label{grid-column:1/-1;color:#475467;font-size:.75rem;font-weight:750}
.organization-responsible-form select{
  min-width:0;
  height:46px;
  padding:0 12px;
  border:1px solid #cad8ef;
  border-radius:11px;
  background:#fff;
  color:#172554;
  font:inherit;
}
.organization-profile-card{margin-top:18px;padding:24px}
.organization-profile-head{display:flex;justify-content:space-between;gap:20px;margin-bottom:20px}
.organization-profile-head h2{margin:9px 0 5px;color:#07194a}
.organization-profile-head p{margin:0;color:#667085}
.organization-profile-form{gap:14px}
.organization-address-grid,.organization-legal-grid{display:grid;grid-template-columns:.65fr 1fr 1fr;gap:14px}
.organization-profile-actions{display:flex;justify-content:flex-end;padding-top:5px}
@media(max-width:900px){
  .organization-responsible-card{grid-template-columns:1fr}
  .organization-address-grid,.organization-legal-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
  .organization-responsible-form{grid-template-columns:1fr}
  .organization-responsible-form label{grid-column:auto}
  .organization-responsible-form .btn{width:100%}
}
.organization-credit-adjust-form{
  display:grid;
  grid-template-columns:78px auto auto;
  gap:7px;
  align-items:center;
  margin:0;
  min-width:275px;
}
.organization-credit-adjust-form input{
  width:78px;
  min-width:0;
  height:40px;
  padding:0 9px;
  border:1px solid #cad8ef;
  border-radius:9px;
  font:inherit;
}
.organization-credit-adjust-form .btn{min-height:40px;padding:8px 12px!important}


/* V3.3 - Design premium sobre : typographie allégée, cartes plus élégantes, interface plus institutionnelle */
:root{
  --navy:#071947;
  --blue:#155EEF;
  --blue2:#4C9DFF;
  --soft:#F6F9FE;
  --line:#E3ECF8;
  --text:#172554;
  --muted:#667085;
  --green:#12B76A;
  --orange:#F79009;
  --purple:#6D5DD3;
  --shadow:0 18px 45px rgba(15, 38, 85, .08);
  --shadow-soft:0 8px 24px rgba(15, 38, 85, .055);
  --radius:20px;
}
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;}
body{font-weight:400;letter-spacing:-.006em;background:linear-gradient(180deg,#F8FBFF 0%,#FFFFFF 48%,#F9FBFF 100%);}
strong,b{font-weight:600;}

/* Hiérarchie typographique */
h1,.hero h1,.page-title h1,.dashboard-head h1{font-weight:700!important;letter-spacing:-.045em;}
h2,h3,.section-head h2,.card-head h2,.card h2,.card h3{font-weight:650!important;letter-spacing:-.025em;}
p,li,td,th,label,small{letter-spacing:-.004em;}
.topbar nav a,.footer a,.form label,.table th,.pill,.badge,.role-badge,.tags span,.tags a{font-weight:500!important;}
.btn,.pack span,.cost strong,.english-level-inline a{font-weight:600!important;}
.kpis strong,.pack strong,.english-score-big,.score-ring{font-weight:700!important;}

/* Header plus premium */
.topbar{height:74px;background:linear-gradient(90deg,#06163E 0%,#08225C 52%,#0B2F78 100%);box-shadow:0 10px 28px rgba(7,25,71,.14);padding:0 48px;}
.brand{font-weight:700!important;letter-spacing:-.035em;}
.brand-icon{box-shadow:inset 0 0 0 5px #E8F1FF,0 8px 22px rgba(8,28,80,.18);}
.topbar nav a{opacity:.86;transition:.18s ease;}
.topbar nav a:hover{opacity:1;}
.topbar nav a.active{border-bottom-width:2px;padding-bottom:8px;}

/* Surfaces, cartes et blocs */
.card,.glass,.cta-card,.audio-manager-card{border-color:rgba(205,219,238,.88);box-shadow:var(--shadow-soft);}
.card{background:rgba(255,255,255,.96);}
.card:hover{box-shadow:0 18px 42px rgba(15,38,85,.09);}
.page{background:radial-gradient(circle at 8% 10%,#EAF3FF 0 108px,transparent 120px),radial-gradient(circle at 88% 8%,#F2F6FF 0 145px,transparent 170px);}
.alert{font-weight:500;}

/* Boutons plus sobres */
.btn{border-radius:13px;padding:13px 22px;box-shadow:none;letter-spacing:-.01em;}
.btn-primary{background:linear-gradient(135deg,#155EEF,#2E90FA);box-shadow:0 10px 24px rgba(21,94,239,.20);}
.btn-primary:hover{transform:translateY(-1px);box-shadow:0 14px 30px rgba(21,94,239,.24);}
.btn-outline{border-color:#B8D3FF;background:#fff;color:#155EEF;}
.btn-outline:hover{background:#F4F8FF;border-color:#155EEF;}
.btn.small{padding:10px 18px;}

/* Formulaires et inputs */
.form input,.form textarea,.form select,.chat-input{border-color:#D9E5F5;background:#fff;box-shadow:0 1px 0 rgba(16,24,40,.02);font-weight:400;}
.form input:focus,.form textarea:focus,.form select:focus,.chat-input:focus{outline:none;border-color:#84ADFF;box-shadow:0 0 0 4px rgba(21,94,239,.10);}
.form label{color:#344054;}

/* Badges, statuts, rôles */
.pill,.role-badge,.badge,.listening-status{letter-spacing:.005em;text-transform:none;border-radius:999px;}
.pill{padding:6px 11px;background:#EEF4FF;color:#155EEF;}
.pill.green{background:#E7F8EF;color:#067647;}
.pill.orange{background:#FFF4E5;color:#B54708;}
.role-badge{padding:7px 12px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);}
.role-badge.role-super-admin{background:linear-gradient(135deg,#5B5BD6,#155EEF);}

/* Tableaux */
.table th{color:#475467;background:#F8FAFC;font-size:12px;text-transform:uppercase;letter-spacing:.035em;}
.table td{color:#26345F;}
.table tr:hover td{background:#FAFCFF;}
.table th:first-child,.table td:first-child{border-top-left-radius:10px;border-bottom-left-radius:10px;}
.table th:last-child,.table td:last-child{border-top-right-radius:10px;border-bottom-right-radius:10px;}

/* Hero et dashboard */
.hero p,.page-title p,.dashboard-head p{color:#52607A;}
.hero h1{font-size:60px;}
.kpis small{font-weight:500!important;color:#667085;}
.kpis strong{letter-spacing:-.04em;}
.cta-card{background:linear-gradient(135deg,#155EEF 0%,#2E90FA 100%);box-shadow:0 18px 42px rgba(21,94,239,.18);}
.cta-card b{font-weight:600!important;}

/* Simulation et écoute */
.ai-video{box-shadow:inset 0 -60px 100px rgba(0,0,0,.18);}
.question-card{text-align:left;}
.question-card h2,.question-card h3{line-height:1.22;}
.listening-test-panel{background:linear-gradient(180deg,#F8FBFF,#FFFFFF);border-color:#D9E8FF;}
.listening-text{font-weight:500!important;background:#F4F8FF;color:#1D3B75;}
.listening-warning{font-weight:500!important;}

/* Cartes packs et audio admin */
.pack span{letter-spacing:-.015em;}
.audio-admin-actions{background:#F8FBFF;border-color:#D9E8FF;}
.audio-admin-table audio{height:34px;}
.audio-mode-actions .btn{min-height:42px;}

/* Footer */
.footer{background:#06163E;padding:20px 48px;}
.footer .brand{font-size:22px;}
.footer-links a{opacity:.85;font-weight:500!important;}
.footer-links a:hover{opacity:1;}

@media(max-width:900px){
  .topbar{padding:0 22px;height:auto;min-height:72px;flex-wrap:wrap;gap:14px;padding-top:14px;padding-bottom:14px;}
  .topbar nav{order:3;width:100%;justify-content:flex-start;overflow-x:auto;gap:18px;}
  .hero h1{font-size:42px;}
  .page{padding:26px 20px 36px;}
  .footer{padding:22px;flex-direction:column;gap:16px;text-align:center;}
  .footer-links{gap:20px;flex-wrap:wrap;justify-content:center;}
}


/* JobPaca IA V3.4 - Footer copyright premium */
.footer.footer-premium{
  display:block;
  padding:0;
  background:linear-gradient(90deg,#06184b,#08266a);
}
.footer-main{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:22px 56px 16px;
}
.footer-credit{
  border-top:1px solid rgba(255,255,255,.14);
  padding:14px 56px 18px;
  color:rgba(255,255,255,.74);
  font-size:13px;
  line-height:1.7;
  display:flex;
  flex-wrap:wrap;
  gap:8px 18px;
}
.footer-credit a{
  color:#fff;
  font-weight:600;
  text-decoration:none;
}
.footer-credit a:hover{
  text-decoration:underline;
}
.footer-cookie-link{
  border:0;
  background:transparent;
  color:#fff;
  font:inherit;
  cursor:pointer;
  padding:0;
  font-weight:500;
}
.footer-cookie-link:hover{
  text-decoration:underline;
}
@media(max-width:820px){
  .footer-main{
    padding:22px 20px 14px;
    flex-direction:column;
    text-align:center;
  }
  .footer-credit{
    padding:14px 20px 20px;
    justify-content:center;
    text-align:center;
  }
}

/* JobPaca IA V3.5 - Gestion des CV candidat */
.cv-actions-inline{display:flex;justify-content:flex-end;margin:-8px 0 14px;}
.checkbox-row{display:flex!important;align-items:center;gap:10px;margin:12px 0;color:#344054;font-weight:500!important;}
.checkbox-row input{width:auto!important;margin:0;}
.cv-vault-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0 0 22px;}
.cv-vault-overview article{min-width:0;padding:18px;border:1px solid #dfe8fb;border-radius:18px;background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);box-shadow:0 12px 26px rgba(12,41,89,.05);}
.cv-vault-overview small{display:block;color:#64729a;font-weight:800;text-transform:uppercase;font-size:11px;letter-spacing:.04em;margin-bottom:8px;}
.cv-vault-overview strong{display:block;color:#07194a;font-size:24px;line-height:1.14;overflow-wrap:anywhere;}
.cv-vault-overview span{display:block;color:#68779f;margin-top:6px;font-size:13px;}
.cv-manager-layout{display:grid;grid-template-columns:minmax(320px,420px) 1fr;gap:24px;align-items:start;}
.cv-upload-card p,.cv-list-card p{color:#52607A;margin-top:6px;}
.cv-upload-form{display:grid;gap:16px;margin-top:18px;}
.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px;}
.cv-list{display:grid;gap:14px;}
.cv-item{display:grid;grid-template-columns:52px 1fr auto;gap:16px;align-items:center;border:1px solid #E4ECF7;border-radius:18px;padding:16px;background:#fff;transition:.18s ease;}
.cv-item-premium{align-items:flex-start;padding:18px;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);}
.cv-item:hover{border-color:#B8D3FF;box-shadow:0 14px 32px rgba(16,24,40,.07);transform:translateY(-1px);}
.cv-item.is-primary{background:linear-gradient(180deg,#F7FBFF,#FFFFFF);border-color:#9BC2FF;}
.cv-file-icon{width:52px;height:52px;border-radius:16px;background:#EEF4FF;display:grid;place-items:center;font-size:24px;}
.cv-item-main{min-width:0;}
.cv-title-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:4px;}
.cv-title-line strong{font-weight:650;color:#101828;word-break:break-word;}
.cv-item-main small{color:#667085;}
.cv-item-badges{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 0;}
.cv-item-badges span{display:inline-flex;align-items:center;min-height:26px;padding:5px 9px;border-radius:999px;background:#f1f6ff;color:#405783;font-size:12px;font-weight:800;}
.cv-excerpt{margin:10px 0 0!important;color:#52607a!important;line-height:1.55;font-size:14px;max-width:760px;}
.cv-item-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;}
.inline-form{display:inline-flex;margin:0;}
.btn-danger-outline{border:1px solid #FECDCA;background:#fff;color:#B42318;}
.btn-danger-outline:hover{background:#FFF4F3;border-color:#F97066;}
.empty-state{border:1px dashed #C8D7EE;border-radius:18px;padding:28px;text-align:center;background:#F8FBFF;color:#52607A;}
.empty-state strong{display:block;color:#101828;margin-bottom:6px;}
.cv-row{align-items:center;}
.cv-row-actions{margin-left:auto;display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;}
.migration-card{max-width:780px;}
.check-list{list-style:none;padding:0;margin:18px 0;display:grid;gap:8px;}
.check-list li{padding:10px 12px;border-radius:12px;background:#ECFDF3;color:#067647;font-weight:500;}
.muted{color:#667085;font-size:14px;}
@media(max-width:980px){.cv-vault-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.cv-manager-layout{grid-template-columns:1fr}.cv-item{grid-template-columns:44px 1fr}.cv-item-actions{grid-column:1 / -1;justify-content:flex-start}.section-head{flex-direction:column}.cv-row-actions{width:100%;margin-left:0;justify-content:flex-start}}
@media(max-width:620px){.cv-vault-overview{grid-template-columns:1fr}.cv-item{grid-template-columns:1fr}.cv-file-icon{display:none}.cv-list-head-actions .btn{width:100%}}

/* Stripe credits — V4.0 */
.stripe-wallet-card {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 18px;
    margin-bottom: 24px;
}
.stripe-wallet-card small {
    display: block;
    color: var(--muted, #64748b);
    margin-bottom: 4px;
}
.stripe-wallet-card strong {
    font-size: 24px;
    font-weight: 650;
}
.price.featured {
    border: 1px solid rgba(37, 99, 235, .28);
    box-shadow: 0 18px 45px rgba(37, 99, 235, .13);
}
.stripe-buy-form {
    margin-top: 18px;
}
.payment-result {
    max-width: 760px;
    margin: 48px auto;
    text-align: center;
    padding: 42px 34px;
}
.payment-result .result-icon {
    width: 64px;
    height: 64px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 34px;
    font-weight: 600;
    margin-bottom: 18px;
}
.success-result .result-icon {
    background: rgba(16, 185, 129, .12);
    color: #059669;
}
.cancel-result .result-icon {
    background: rgba(239, 68, 68, .12);
    color: #dc2626;
}
.actions-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    margin-top: 18px;
}
.payment-result .actions-row {
    justify-content: center;
}
@media (max-width: 760px) {
    .stripe-wallet-card {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* JobPaca IA - Correctif évaluation STAR + rapport PDF */
.report-premium{display:grid;gap:28px}.report-hero{display:grid;grid-template-columns:1fr 240px;gap:28px;align-items:center}.report-kicker{display:inline-flex;align-items:center;border-radius:999px;background:#eef6ff;color:#1265ff;font-weight:800;font-size:12px;padding:8px 12px;text-transform:uppercase;letter-spacing:.05em}.report-hero h1{font-size:46px;line-height:1.05;margin:12px 0;color:#07194a}.report-hero p{color:#445274;line-height:1.65;font-size:17px}.report-meta{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.report-meta span{background:#fff;border:1px solid #dce8fb;border-radius:999px;padding:9px 12px;color:#526087}.score-panel{background:linear-gradient(180deg,#f7fbff,#fff);border:1px solid #dce8fb;border-radius:26px;padding:24px;text-align:center;box-shadow:var(--shadow)}.score-panel strong{display:block;font-size:22px;margin-top:12px}.score-panel small{color:var(--muted);font-weight:700}.score-premium{margin:0 auto;background:conic-gradient(#1265ff 0 70%,#e4edf9 70%);color:#07194a}.score-panel.excellent .score-premium{background:conic-gradient(#10b981 0 88%,#e4edf9 88%)}.score-panel.good .score-premium{background:conic-gradient(#1265ff 0 74%,#e4edf9 74%)}.score-panel.medium .score-premium{background:conic-gradient(#f59e0b 0 60%,#e4edf9 60%)}.score-panel.low .score-premium{background:conic-gradient(#ef4444 0 45%,#e4edf9 45%)}.star-strip{display:grid;grid-template-columns:110px 1fr;gap:22px;align-items:center;background:linear-gradient(135deg,#07194a,#1265ff);color:#fff;border-radius:24px;padding:24px;box-shadow:var(--shadow)}.star-logo{width:92px;height:92px;border-radius:24px;background:#fff;color:#1265ff;display:grid;place-items:center;font-size:25px;font-weight:900;letter-spacing:.08em}.star-strip h2,.star-strip p{margin:0 0 8px}.star-strip p{line-height:1.55;color:rgba(255,255,255,.88)}.criteria-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.criterion-card{background:#fff;border:1px solid #e2ecfb;border-radius:18px;padding:18px}.criterion-top{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px}.criterion-top strong{color:#07194a}.criterion-top span{font-weight:800;color:#1265ff}.criterion-card p{color:#526087;line-height:1.5}.report-summary-cards .soft-card p{line-height:1.6}.question-review-list{display:grid;gap:20px}.question-review-card{border:1px solid #dce8fb;background:#fff;border-radius:24px;padding:22px;box-shadow:0 12px 30px rgba(12,31,74,.06)}.question-review-head{display:flex;justify-content:space-between;align-items:center;color:#1265ff;font-weight:800;text-transform:uppercase;font-size:12px;letter-spacing:.05em}.question-review-head strong{background:#eef6ff;border-radius:999px;padding:8px 11px;color:#07194a}.question-review-card h3{font-size:22px;margin:12px 0 16px;color:#07194a}.answer-box,.analysis-box,.improved-answer{border-radius:18px;padding:16px;margin:14px 0;line-height:1.6}.answer-box{background:#f8fbff;border:1px solid #e2ecfb}.analysis-box{background:#fff7ed;border:1px solid #fed7aa}.improved-answer{background:#ecfdf5;border:1px solid #bbf7d0}.answer-box strong,.analysis-box strong,.improved-answer strong{display:block;margin-bottom:7px;color:#07194a}.star-diagnostic-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:14px 0}.star-diagnostic-grid div{background:#f7fbff;border:1px solid #e2ecfb;border-radius:16px;padding:14px}.star-diagnostic-grid b{width:34px;height:34px;border-radius:11px;background:#1265ff;color:#fff;display:grid;place-items:center;margin-bottom:8px}.star-diagnostic-grid span{display:block;font-weight:800;color:#07194a}.star-diagnostic-grid p{font-size:14px;color:#526087;line-height:1.45}.coaching-tip{background:#eef6ff;border-left:5px solid #1265ff;border-radius:16px;padding:14px;color:#21345f;font-weight:700}.action-plan-table{display:grid;gap:12px}.action-plan-row{display:grid;grid-template-columns:52px 260px 1fr;gap:16px;align-items:center;background:#fff;border:1px solid #e2ecfb;border-radius:18px;padding:16px}.action-plan-row span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#1265ff;color:#fff;font-weight:900}.action-plan-row strong{color:#07194a}.action-plan-row p{margin:0;color:#526087;line-height:1.45}.human-coach-card{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;background:linear-gradient(135deg,#07194a,#0f2f83);border-radius:26px;padding:28px;color:#fff;box-shadow:var(--shadow)}.human-coach-card h2{font-size:30px;margin:10px 0}.human-coach-card p{line-height:1.65;color:rgba(255,255,255,.88);max-width:860px}.coach-request-layout{display:grid;grid-template-columns:1fr 420px;gap:24px;align-items:start}.coach-request-card h1{font-size:42px;margin:12px 0;color:#07194a}.coach-request-card p{color:#445274;line-height:1.6;font-size:17px}.coach-list{padding-left:18px;color:#445274;line-height:1.7}.coach-report-mini{margin-top:18px;background:#eef6ff;border:1px solid #dce8fb;border-radius:18px;padding:16px;display:grid;gap:5px}.coach-report-mini small{color:#64729a;font-weight:800;text-transform:uppercase}.coach-report-mini strong{font-size:22px;color:#07194a}.coach-report-mini span{color:#526087}@media(max-width:1100px){.report-hero,.criteria-grid,.star-diagnostic-grid,.action-plan-row,.human-coach-card,.coach-request-layout{grid-template-columns:1fr}.score-panel{max-width:280px}.star-strip{grid-template-columns:1fr}.action-plan-row{gap:8px}.report-hero h1,.coach-request-card h1{font-size:34px}}

/* JobPaca IA - Correctif présentation premium page rapport V2 */
.report-premium-v2{
  gap:26px;
  padding:0;
  background:transparent;
  border:0;
  box-shadow:none;
}
.report-premium-v2 .report-kicker{
  background:#EEF4FF;
  color:#155EEF;
  border:1px solid #D6E4FF;
  box-shadow:0 8px 20px rgba(21,94,239,.08);
}
.report-kicker-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  margin-bottom:14px;
}
.report-mini-pill{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.35);
  background:rgba(255,255,255,.14);
  color:#fff;
  padding:8px 12px;
  font-size:12px;
  font-weight:700;
}
.report-hero-v2{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:minmax(0,1fr) 310px;
  gap:30px;
  align-items:stretch;
  padding:34px;
  border-radius:32px;
  color:#fff;
  background:
    radial-gradient(circle at 18% 10%,rgba(82,160,255,.38),transparent 28%),
    radial-gradient(circle at 88% 18%,rgba(20,184,166,.22),transparent 28%),
    linear-gradient(135deg,#06163E 0%,#082B76 54%,#155EEF 100%);
  box-shadow:0 28px 68px rgba(6,22,62,.22);
}
.report-hero-v2:before{
  content:"";
  position:absolute;
  inset:auto -80px -120px auto;
  width:320px;
  height:320px;
  border-radius:50%;
  background:rgba(255,255,255,.10);
  pointer-events:none;
}
.report-hero-content{
  position:relative;
  z-index:1;
  min-width:0;
}
.report-hero-v2 h1{
  margin:0 0 14px;
  color:#fff;
  font-size:52px;
  line-height:1.02;
  letter-spacing:-.055em;
}
.report-lead{
  margin:0;
  color:rgba(255,255,255,.86);
  font-size:18px;
  line-height:1.7;
  max-width:920px;
}
.report-meta-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:24px 0 0;
}
.report-meta-grid div{
  min-width:0;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.10);
  border-radius:18px;
  padding:14px 16px;
  backdrop-filter:blur(10px);
}
.report-meta-grid small{
  display:block;
  margin-bottom:5px;
  color:rgba(255,255,255,.66);
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.04em;
  font-weight:700!important;
}
.report-meta-grid strong{
  display:block;
  color:#fff;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.report-actions-bar{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:26px;
}
.report-actions-bar .btn:not(.btn-primary):not(.btn-outline){
  color:#0F2D6B;
  background:#fff;
}
.report-actions-bar .btn-outline{
  color:#fff;
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.42);
}
.report-actions-bar .btn-outline:hover{
  background:rgba(255,255,255,.18);
}
.score-card-v2{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:14px;
  min-height:320px;
  border:1px solid rgba(255,255,255,.26);
  border-radius:28px;
  padding:24px;
  background:rgba(255,255,255,.94);
  color:#071947;
  box-shadow:0 24px 56px rgba(2,12,32,.22);
}
.score-card-v2.excellent{--score-color:#12B76A;}
.score-card-v2.good{--score-color:#155EEF;}
.score-card-v2.medium{--score-color:#F79009;}
.score-card-v2.low{--score-color:#F04438;}
.score-ring-v2{
  width:174px;
  height:174px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:conic-gradient(var(--score-color) calc(var(--score) * 1%), #E8EEF8 0);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.72),0 20px 42px rgba(15,38,85,.12);
}
.score-ring-inner{
  width:128px;
  height:128px;
  border-radius:50%;
  display:grid;
  place-items:center;
  align-content:center;
  background:#fff;
  box-shadow:inset 0 0 0 1px #E5ECF8;
}
.score-ring-inner strong{
  font-size:44px;
  line-height:1;
  letter-spacing:-.05em;
  color:#071947;
}
.score-ring-inner small{
  margin-top:2px;
  color:#667085;
  font-weight:800!important;
}
.score-card-v2 h2{
  margin:4px 0 0;
  color:#071947;
  font-size:26px;
  text-align:center;
}
.score-card-v2 p{
  margin:0;
  color:#667085;
  text-align:center;
}
.score-legend-v2{
  width:100%;
  display:flex;
  justify-content:space-between;
  gap:6px;
  color:#667085;
  font-size:11px;
  font-weight:700;
}
.report-kpi-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}
.report-kpi-card{
  background:#fff;
  border:1px solid #E3ECF8;
  border-radius:22px;
  padding:20px;
  box-shadow:0 14px 34px rgba(15,38,85,.055);
}
.report-kpi-card span{
  display:inline-flex;
  margin-bottom:14px;
  color:#155EEF;
  background:#EEF4FF;
  border-radius:999px;
  padding:6px 10px;
  font-size:12px;
  font-weight:800;
}
.report-kpi-card strong{
  display:block;
  color:#071947;
  font-size:28px;
  letter-spacing:-.035em;
}
.report-kpi-card p{
  margin:5px 0 0;
  color:#667085;
  font-weight:600;
}
.report-section-card{
  background:rgba(255,255,255,.98);
  border:1px solid #E3ECF8;
  border-radius:28px;
  padding:28px;
  box-shadow:0 18px 44px rgba(15,38,85,.065);
}
.report-section-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  margin-bottom:22px;
}
.report-section-head h2,
.insight-card h2,
.star-master-card h2{
  margin:6px 0 0;
  color:#071947;
  font-size:32px;
  line-height:1.12;
}
.report-section-head p{
  max-width:460px;
  margin:2px 0 0;
  color:#667085;
  line-height:1.55;
}
.report-section-label{
  display:inline-flex;
  color:#155EEF;
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.star-master-card{
  display:grid;
  grid-template-columns:360px 1fr;
  gap:30px;
  align-items:center;
  background:linear-gradient(180deg,#FFFFFF 0%,#F7FAFF 100%);
}
.star-master-left{
  display:flex;
  gap:18px;
  align-items:center;
}
.star-badge-big{
  flex:0 0 auto;
  width:94px;
  height:94px;
  display:grid;
  place-items:center;
  border-radius:26px;
  background:linear-gradient(135deg,#155EEF,#2E90FA);
  color:#fff;
  font-size:24px;
  font-weight:900;
  letter-spacing:.08em;
  box-shadow:0 20px 40px rgba(21,94,239,.22);
}
.star-master-content p{
  color:#52607A;
  line-height:1.65;
  font-size:16px;
}
.star-master-steps{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin:18px 0;
}
.star-master-steps div{
  border:1px solid #D9E8FF;
  background:#fff;
  border-radius:18px;
  padding:16px;
}
.star-master-steps b{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:#EEF4FF;
  color:#155EEF;
  margin-bottom:10px;
}
.star-master-steps strong{
  display:block;
  color:#071947;
}
.star-master-steps span{
  display:block;
  margin-top:3px;
  color:#667085;
  font-size:13px;
  font-weight:600;
}
.star-application{
  margin-bottom:0;
  border-left:4px solid #155EEF;
  padding-left:14px;
}
.criteria-grid-v2{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.criterion-card-v2{
  position:relative;
  overflow:hidden;
  background:#fff;
  border:1px solid #E3ECF8;
  border-radius:22px;
  padding:20px;
}
.criterion-card-v2:before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:4px;
  background:linear-gradient(90deg,#155EEF,#2E90FA);
}
.criterion-card-head{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:flex-start;
  margin-bottom:14px;
}
.criterion-card-head strong{
  color:#071947;
  font-size:16px;
}
.criterion-card-head span{
  color:#155EEF;
  font-weight:900;
}
.criterion-meter{
  height:9px;
  overflow:hidden;
  border-radius:999px;
  background:#EDF2FA;
  margin-bottom:14px;
}
.criterion-meter span{
  display:block;
  width:calc(var(--score) * 1%);
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,#155EEF,#4C9DFF);
}
.criterion-card-v2 p{
  color:#52607A;
  line-height:1.55;
  margin:0;
}
.report-insights-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.insight-card{
  position:relative;
  overflow:hidden;
  min-height:320px;
  background:#fff;
  border:1px solid #E3ECF8;
  border-radius:28px;
  padding:26px;
  box-shadow:0 18px 44px rgba(15,38,85,.06);
}
.insight-card:after{
  content:"";
  position:absolute;
  right:-40px;
  top:-40px;
  width:130px;
  height:130px;
  border-radius:50%;
  background:#F2F7FF;
}
.insight-icon{
  position:relative;
  z-index:1;
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:16px;
  margin-bottom:18px;
  color:#fff;
  font-weight:900;
  font-size:22px;
}
.insight-strengths .insight-icon{background:#12B76A;}
.insight-weaknesses .insight-icon{background:#F79009;}
.insight-recommendations .insight-icon{background:#155EEF;}
.insight-card p,
.report-clean-list{
  position:relative;
  z-index:1;
  color:#52607A;
  line-height:1.65;
}
.report-clean-list{
  display:grid;
  gap:10px;
  margin:16px 0 0;
  padding:0;
  list-style:none;
}
.report-clean-list li{
  position:relative;
  padding-left:24px;
}
.report-clean-list li:before{
  content:"";
  position:absolute;
  left:0;
  top:.72em;
  width:8px;
  height:8px;
  border-radius:50%;
  background:#155EEF;
}
.insight-strengths .report-clean-list li:before{background:#12B76A;}
.insight-weaknesses .report-clean-list li:before{background:#F79009;}
.report-muted,
.report-empty-inline{
  color:#667085;
}
.report-empty-inline{
  grid-column:1 / -1;
  border:1px dashed #C7D7EE;
  background:#F8FBFF;
  border-radius:18px;
  padding:20px;
  text-align:center;
  font-weight:600;
}
.question-section-card{
  background:linear-gradient(180deg,#FFFFFF,#F8FBFF);
}
.question-review-list-v2{
  display:grid;
  gap:22px;
}
.question-review-card-v2{
  position:relative;
  overflow:hidden;
  border:1px solid #DDE9F8;
  background:#fff;
  border-radius:28px;
  padding:24px;
  box-shadow:0 16px 38px rgba(15,38,85,.055);
}
.question-review-card-v2:before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:5px;
  background:linear-gradient(90deg,#155EEF calc(var(--score) * 1%),#E8EEF8 0);
}
.question-title-row{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:flex-start;
  margin-bottom:18px;
}
.question-title-row span{
  display:inline-flex;
  margin-bottom:7px;
  color:#155EEF;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.question-title-row h3{
  margin:0;
  color:#071947;
  font-size:24px;
  line-height:1.25;
}
.question-score-pill{
  flex:0 0 auto;
  width:72px;
  height:72px;
  display:grid;
  place-items:center;
  align-content:center;
  border-radius:22px;
  background:#EEF4FF;
  color:#071947;
}
.question-score-pill strong{
  font-size:26px;
  line-height:1;
}
.question-score-pill small{
  color:#667085;
  font-weight:800!important;
}
.question-content-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
  margin-bottom:16px;
}
.candidate-answer-panel,
.ai-analysis-panel,
.improved-answer-panel,
.coaching-tip-v2{
  border-radius:20px;
  padding:18px;
}
.candidate-answer-panel{
  border:1px solid #E3ECF8;
  background:#F8FBFF;
}
.ai-analysis-panel{
  border:1px solid #DCEBFF;
  background:#F1F7FF;
}
.improved-answer-panel{
  border:1px solid #BFEFD7;
  background:#F0FDF6;
  margin-top:16px;
}
.candidate-answer-panel span,
.ai-analysis-panel span,
.improved-answer-panel span{
  display:block;
  color:#071947;
  font-weight:800;
  margin-bottom:8px;
}
.candidate-answer-panel p,
.ai-analysis-panel p,
.improved-answer-panel p{
  margin:0;
  color:#52607A;
  line-height:1.65;
}
.star-diagnostic-grid-v2{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.star-diagnostic-grid-v2 div{
  border:1px solid #E3ECF8;
  background:#fff;
  border-radius:20px;
  padding:16px;
}
.star-diagnostic-grid-v2 b{
  width:36px;
  height:36px;
  border-radius:12px;
  display:grid;
  place-items:center;
  color:#fff;
  background:#155EEF;
  margin-bottom:10px;
}
.star-diagnostic-grid-v2 strong{
  display:block;
  color:#071947;
  margin-bottom:5px;
}
.star-diagnostic-grid-v2 p{
  margin:0;
  color:#667085;
  line-height:1.45;
  font-size:14px;
}
.coaching-tip-v2{
  margin-top:16px;
  display:grid;
  grid-template-columns:180px 1fr;
  gap:12px;
  align-items:start;
  border:1px solid #FFE1B3;
  background:#FFF8ED;
}
.coaching-tip-v2 strong{
  color:#9A5B00;
}
.coaching-tip-v2 p{
  margin:0;
  color:#684000;
  line-height:1.55;
}
.action-plan-card{
  background:#fff;
}
.action-plan-list-v2{
  display:grid;
  gap:14px;
}
.action-plan-row-v2{
  display:grid;
  grid-template-columns:58px 1fr;
  gap:16px;
  align-items:start;
  padding:18px;
  border:1px solid #E3ECF8;
  border-radius:22px;
  background:linear-gradient(180deg,#FFFFFF,#F8FBFF);
}
.action-priority{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:16px;
  color:#fff;
  background:linear-gradient(135deg,#155EEF,#2E90FA);
  font-size:20px;
  font-weight:900;
  box-shadow:0 14px 28px rgba(21,94,239,.18);
}
.action-plan-row-v2 strong{
  display:block;
  color:#071947;
  font-size:18px;
  margin-bottom:5px;
}
.action-plan-row-v2 p{
  margin:0;
  color:#667085;
  line-height:1.55;
}
.human-coach-card-v2{
  display:grid;
  grid-template-columns:90px 1fr auto;
  gap:24px;
  align-items:center;
  padding:30px;
  border-radius:30px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 18%,rgba(82,160,255,.28),transparent 26%),
    linear-gradient(135deg,#06163E,#0B2F78 68%,#155EEF);
  box-shadow:0 28px 68px rgba(6,22,62,.22);
}
.coach-visual{
  width:82px;
  height:82px;
  display:grid;
  place-items:center;
  border-radius:24px;
  background:rgba(255,255,255,.14);
  font-size:38px;
  border:1px solid rgba(255,255,255,.20);
}
.human-coach-card-v2 h2{
  margin:10px 0;
  color:#fff;
  font-size:30px;
  line-height:1.15;
}
.human-coach-card-v2 p{
  margin:0;
  color:rgba(255,255,255,.82);
  line-height:1.65;
  max-width:820px;
}
.coach-benefits-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:16px;
}
.coach-benefits-row span{
  border:1px solid rgba(255,255,255,.22);
  background:rgba(255,255,255,.10);
  color:#fff;
  border-radius:999px;
  padding:7px 11px;
  font-size:12px;
  font-weight:800;
}
.human-coach-card-v2 .btn-primary{
  white-space:nowrap;
  background:#fff;
  color:#155EEF;
  box-shadow:0 18px 40px rgba(0,0,0,.16);
}
.report-empty-state{
  max-width:760px;
  margin:40px auto;
  text-align:center;
  padding:44px 32px;
  border:1px solid #E3ECF8;
  border-radius:30px;
  background:#fff;
  box-shadow:0 18px 44px rgba(15,38,85,.07);
}
.report-empty-icon{
  width:78px;
  height:78px;
  display:grid;
  place-items:center;
  margin:0 auto 18px;
  border-radius:24px;
  background:#EEF4FF;
  font-size:38px;
}
.report-empty-state h1{
  margin:14px 0 10px;
  color:#071947;
  font-size:40px;
}
.report-empty-state p{
  color:#667085;
  line-height:1.65;
  margin:0 auto 24px;
  max-width:560px;
}
@media(max-width:1180px){
  .report-hero-v2,
  .star-master-card,
  .human-coach-card-v2{
    grid-template-columns:1fr;
  }
  .score-card-v2{
    max-width:360px;
    min-height:auto;
  }
  .report-meta-grid,
  .criteria-grid-v2,
  .report-insights-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:860px){
  .report-hero-v2{padding:24px;border-radius:24px;}
  .report-hero-v2 h1{font-size:38px;}
  .report-meta-grid,
  .report-kpi-grid,
  .criteria-grid-v2,
  .report-insights-grid,
  .question-content-grid,
  .star-diagnostic-grid-v2,
  .star-master-steps{
    grid-template-columns:1fr;
  }
  .report-section-head,
  .question-title-row{
    flex-direction:column;
  }
  .coaching-tip-v2,
  .action-plan-row-v2{
    grid-template-columns:1fr;
  }
  .report-section-card,
  .insight-card,
  .human-coach-card-v2{
    padding:22px;
    border-radius:24px;
  }
  .report-section-head h2,
  .insight-card h2,
  .star-master-card h2{font-size:26px;}
}

/* Dashboard improvements — KPI cards, languages row, reports history */
.dashboard-kpis{align-items:stretch}
.kpi-card{position:relative;display:flex;flex-direction:column;gap:10px;min-height:220px;padding:24px 24px 22px;border:1px solid #dbe7fb;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(244,248,255,.96));overflow:hidden}
.kpi-card:before{content:"";position:absolute;inset:auto -40px -55px auto;width:170px;height:170px;border-radius:50%;background:radial-gradient(circle,rgba(84,160,255,.16),rgba(84,160,255,0) 70%);pointer-events:none}
.kpi-card .icon{width:66px;height:66px;font-size:29px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.55)}
.kpi-card .icon.blue{background:linear-gradient(180deg,#eef5ff,#dce9ff)}
.kpi-card .icon.green{background:linear-gradient(180deg,#e7fbf3,#cff3e4)}
.kpi-card .icon.purple{background:linear-gradient(180deg,#f3ebff,#e6d9ff)}
.kpi-card-top{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:2px}
.kpi-badge{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:999px;background:#f2f7ff;border:1px solid #dce8fb;color:#4b5c88;font-weight:700;font-size:12px;letter-spacing:.02em}
.kpi-card small{display:block;color:#64729a;font-weight:700;font-size:14px}
.kpi-card strong{font-size:46px;line-height:1;letter-spacing:-.05em;color:#07194a}
.kpi-card strong small{display:inline;font-size:.48em;color:#6c7ba3;font-weight:700;margin-left:4px}
.kpi-card > span{color:#52607a;font-size:14px;line-height:1.45}
.kpi-card-action{margin-top:auto;display:flex;justify-content:flex-end}
.kpi-card.is-empty{border-color:#bfdbfe;background:linear-gradient(180deg,#ffffff,#f4f8ff)}
.kpi-inline-pill-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto}
.kpi-link .pill{padding:8px 12px;font-size:12px}
.kpi-link:hover{transform:translateY(-2px)}

.dashboard-languages-card{margin:-2px 0 22px;padding:26px 28px}
.dashboard-languages-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}
.dashboard-languages-head h2,.dashboard-section-head h2{margin:6px 0 0;font-size:28px;color:#08184a}
.dashboard-languages-head p{margin:8px 0 0;color:#52607a}
.dashboard-section-kicker{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#1265ff}
.language-capsules-row{display:flex;gap:14px;overflow:auto;padding-bottom:2px}
.language-capsule{min-width:170px;display:grid;gap:4px;padding:18px;border-radius:20px;border:1px solid #dce8fb;background:linear-gradient(180deg,#fff,#f7faff);text-decoration:none;color:inherit;box-shadow:0 12px 28px rgba(10,31,74,.06);transition:.18s ease}
.language-capsule:hover{transform:translateY(-2px);box-shadow:0 18px 38px rgba(7,25,74,.10)}
.language-capsule-code{font-size:12px;font-weight:800;letter-spacing:.08em;color:#1265ff}
.language-capsule-name{font-size:14px;color:#52607a;font-weight:700}
.language-capsule strong{font-size:34px;line-height:1;color:#07194a;letter-spacing:-.04em}
.language-capsule small{color:#5e6f97;font-weight:700}
.language-capsule-meta{margin-top:4px;justify-self:start;padding:6px 10px;border-radius:999px;background:#eef4ff;color:#1265ff;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.dashboard-inline-empty{display:grid;gap:10px;justify-items:start;border:1px dashed #bfd3fa;border-radius:18px;padding:24px;background:#f8fbff}
.dashboard-inline-empty strong{font-size:18px;color:#08184a}
.dashboard-inline-empty p{margin:0;color:#5c6a90}

.dashboard-section-card{padding:24px 24px 18px;margin-bottom:18px}
.dashboard-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}
.dashboard-table th{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#6b789d}
.dashboard-table td{vertical-align:middle}
.dashboard-progress-card{padding:24px}
.dashboard-progress-card strong{display:block;margin-top:16px;font-size:32px;color:#08184a}
.dashboard-progress-card small{display:block;margin-top:6px;color:#52607a;line-height:1.5}
.dashboard-info-card code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:#f2f6ff;padding:2px 6px;border-radius:8px;color:#0b2d7d}
.dashboard-mini-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}
.dashboard-mini-stats div{background:#f7faff;border:1px solid #e2ecfb;border-radius:16px;padding:14px}
.dashboard-mini-stats small{display:block;color:#64729a;margin-bottom:4px}
.dashboard-mini-stats strong{font-size:22px;color:#08184a}
.history-kpis{margin-top:0;margin-bottom:24px}

@media(max-width:1100px){
  .dashboard-kpis{grid-template-columns:1fr 1fr}
}
@media(max-width:900px){
  .dashboard-languages-head,.dashboard-section-head{flex-direction:column;align-items:flex-start}
  .dashboard-kpis{grid-template-columns:1fr}
  .kpi-card{min-height:auto}
  .dashboard-mini-stats{grid-template-columns:1fr}
}

/* Dashboard refinement V4.2 */
.kpi-card{min-height:186px;border-radius:24px;padding:22px 22px 20px;box-shadow:0 18px 42px rgba(9,29,74,.08)}
.kpi-card:after{content:"";position:absolute;left:22px;right:22px;bottom:0;height:4px;border-radius:999px;background:linear-gradient(90deg,rgba(18,101,255,.85),rgba(84,160,255,.18))}
.kpi-card .icon{width:60px;height:60px;font-size:28px}
.kpi-card strong{font-size:42px}
.kpi-card > span{font-size:13px}
.kpi-card-action{padding-top:8px}
.kpi-inline-pill-row{margin-top:0}
.kpi-link .pill{background:#edf4ff;border:1px solid #dce8fb}

.dashboard-languages-card{padding:28px;border-radius:26px}
.language-capsules-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;overflow:visible}
.language-capsule{min-width:0;display:grid;grid-template-columns:56px 1fr auto;grid-template-areas:"icon name level" "icon meta level";align-items:center;column-gap:16px;row-gap:4px;padding:18px 20px;border-radius:18px;border:1px solid #dfe8f8;background:#fff;box-shadow:0 12px 28px rgba(7,25,74,.06)}
.language-capsule:before{content:attr(data-code);grid-area:icon;width:56px;height:56px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,#eef4ff,#dce9ff);color:#1265ff;font-size:14px;font-weight:800;letter-spacing:.08em}
.language-capsule-code{display:none}
.language-capsule-name{grid-area:name;font-size:16px;color:#08184a;font-weight:700}
.language-capsule small{grid-area:meta;font-size:13px;color:#5f7097;font-weight:600}
.language-capsule strong{grid-area:level;align-self:center;justify-self:end;font-size:28px;line-height:1;color:#08184a;background:#f7faff;border:1px solid #e2ecfb;padding:10px 14px;border-radius:14px;min-width:68px;text-align:center}
.language-capsule-meta{grid-column:2 / 4;margin-top:4px;justify-self:start;padding:0;background:transparent;color:#1265ff;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.language-capsule:hover strong{background:#eef4ff}

@media(max-width:900px){
  .language-capsules-row{grid-template-columns:1fr}
}

/* Dashboard correction V4.4 — top KPI row without language card */
.dashboard-kpis{grid-template-columns:repeat(3,1fr)}
.credit-token{font-size:18px!important;font-weight:900;letter-spacing:-.03em;color:#1265ff}
.credit-token:after{content:"";position:absolute;width:26px;height:26px;border-radius:9px;background:rgba(18,101,255,.11);transform:rotate(10deg);z-index:-1}
.kpi-card .icon{position:relative;overflow:hidden}
@media(max-width:1100px){.dashboard-kpis{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.dashboard-kpis{grid-template-columns:1fr}}

/* Dashboard correction V4.5 — top row clarified */
.dashboard-kpis{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:26px}
.dashboard-kpis .kpi-card{min-height:210px;padding:24px;border-radius:22px;background:linear-gradient(180deg,#ffffff,#f7fbff);border:1px solid #dbe8fb;box-shadow:0 16px 36px rgba(7,25,74,.08)}
.dashboard-kpis .kpi-card:before{display:none!important}
.dashboard-kpis .kpi-card:after{left:24px;right:24px;height:3px;background:linear-gradient(90deg,#1265ff,#a7ccff)}
.dashboard-kpis .kpi-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}
.kpi-mini-label{display:inline-flex;align-items:center;justify-content:center;height:34px;min-width:44px;padding:0 12px;border-radius:999px;background:#eef5ff;border:1px solid #cfe0ff;color:#0d4fd6;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.dashboard-kpis .kpi-badge{height:34px;padding:0 13px;border-radius:999px;background:#fff;border:1px solid #dbe8fb;color:#42557f;font-size:12px;font-weight:800;box-shadow:none}
.dashboard-kpis .kpi-card small{font-size:14px;color:#526690;font-weight:700;margin-bottom:4px}
.dashboard-kpis .kpi-card strong{font-size:42px;color:#07194a;line-height:1;letter-spacing:-.045em}
.dashboard-kpis .kpi-card > span{font-size:14px;color:#435279}
.dashboard-kpis .kpi-card-action{margin-top:auto;display:flex;justify-content:flex-end}
.dashboard-kpis .kpi-card-action .btn{min-width:210px}
.dashboard-kpis .kpi-card .icon{display:none!important}
.dashboard-languages-card{margin-top:24px}
@media(max-width:1100px){.dashboard-kpis{grid-template-columns:1fr!important}}

/* Dashboard premium KPI visuals V4.6 */
.dashboard-kpis{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:26px}
.dashboard-kpis .kpi-card{min-height:225px;padding:26px 24px 22px;border-radius:24px;background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);border:1px solid #d8e6fb;box-shadow:0 18px 44px rgba(7,25,74,.08);overflow:hidden}
.dashboard-kpis .kpi-card:before{display:block!important;content:"";position:absolute;right:-26px;top:-18px;width:140px;height:140px;border-radius:50%;background:radial-gradient(circle,rgba(18,101,255,.10),rgba(18,101,255,0) 68%);pointer-events:none}
.dashboard-kpis .kpi-card:after{left:24px;right:24px;height:3px;background:linear-gradient(90deg,#1265ff,#b8d5ff)}
.dashboard-kpis .kpi-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}
.dashboard-kpis .kpi-badge{height:auto;padding:8px 14px;border-radius:999px;background:#f3f7ff;border:1px solid #dbe8fb;color:#46608d;font-size:12px;font-weight:800;letter-spacing:.03em;box-shadow:none}
.kpi-visual{width:72px;height:72px;border-radius:22px;display:grid;place-items:center;flex:0 0 72px;box-shadow:inset 0 1px 0 rgba(255,255,255,.45);border:1px solid rgba(255,255,255,.75)}
.kpi-visual svg{width:42px;height:42px;display:block}
.kpi-visual-credits{background:linear-gradient(180deg,#edf4ff,#dfeaff);color:#1265ff}
.kpi-visual-activity{background:linear-gradient(180deg,#ebfbf5,#d8f4e8);color:#0f9f6e}
.kpi-visual-score{background:linear-gradient(180deg,#f5edff,#e9ddff);color:#6d3df1}
.dashboard-kpis .kpi-card small{font-size:14px;color:#54688f;font-weight:700;margin-bottom:6px}
.dashboard-kpis .kpi-card strong{font-size:44px;color:#07194a;line-height:1;letter-spacing:-.05em}
.dashboard-kpis .kpi-card > span{font-size:14px;color:#47577e;line-height:1.45;max-width:90%}
.dashboard-kpis .kpi-card-action{margin-top:auto;display:flex;justify-content:flex-start;padding-top:12px}
.dashboard-kpis .kpi-card-action .btn{min-width:220px}
.kpi-mini-label{display:none!important}
@media(max-width:1100px){.dashboard-kpis{grid-template-columns:1fr!important}}

/* Dashboard premium redesign V4.7 */
.dashboard-kpis{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:28px;margin:26px 0}
.dashboard-kpis .kpi-card{
  position:relative;
  display:flex;
  flex-direction:column;
  min-height:260px;
  padding:28px 26px 24px;
  border-radius:28px;
  overflow:hidden;
  border:1px solid #dbe6fb;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);
  box-shadow:0 22px 54px rgba(7,25,74,.09);
}
.dashboard-kpis .kpi-card:before{
  content:"";
  position:absolute;
  right:-24px;
  top:-30px;
  width:180px;
  height:180px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(18,101,255,.11),rgba(18,101,255,0) 70%);
  pointer-events:none;
}
.dashboard-kpis .kpi-card:after{
  content:"";
  position:absolute;
  left:26px;
  right:26px;
  bottom:0;
  height:4px;
  border-radius:999px;
  background:linear-gradient(90deg,#1265ff,#b8d5ff);
}
.dashboard-kpis .kpi-card-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:18px;
}
.dashboard-kpis .kpi-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 16px;
  border-radius:999px;
  border:1px solid #d7e4fb;
  background:rgba(255,255,255,.88);
  color:#355385;
  font-size:13px;
  font-weight:800;
  letter-spacing:.02em;
  box-shadow:0 8px 18px rgba(16,39,89,.05);
}
.kpi-visual{
  width:86px;
  height:86px;
  border-radius:28px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.85);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65), 0 12px 26px rgba(7,25,74,.08);
}
.kpi-visual svg{width:46px;height:46px;display:block}
.dashboard-kpis .kpi-card small{
  display:block;
  margin:2px 0 6px;
  color:#5a6d94;
  font-size:14px;
  font-weight:700;
}
.dashboard-kpis .kpi-card strong{
  display:flex;
  align-items:flex-end;
  gap:4px;
  margin:4px 0 4px;
  font-size:50px;
  line-height:1;
  color:#07194a;
  letter-spacing:-.06em;
}
.dashboard-kpis .kpi-card strong small{
  display:inline;
  margin:0 0 6px;
  font-size:.42em;
  color:#6f7fa4;
  font-weight:800;
}
.dashboard-kpis .kpi-card > span{
  display:block;
  color:#44557d;
  font-size:15px;
  line-height:1.5;
  max-width:92%;
}
.dashboard-kpis .kpi-card-action{
  margin-top:auto;
  padding-top:20px;
}
.dashboard-kpis .kpi-card-action .btn{
  width:100%;
  min-width:0;
  border-radius:16px;
  padding:16px 18px;
  box-shadow:0 14px 28px rgba(18,101,255,.22);
}
.kpi-theme-credits:before{background:radial-gradient(circle,rgba(18,101,255,.13),rgba(18,101,255,0) 70%)}
.kpi-theme-activity:before{background:radial-gradient(circle,rgba(16,185,129,.13),rgba(16,185,129,0) 70%)}
.kpi-theme-score:before{background:radial-gradient(circle,rgba(124,58,237,.14),rgba(124,58,237,0) 70%)}
.kpi-theme-credits .kpi-visual{background:linear-gradient(180deg,#eef4ff 0%,#dce8ff 100%);color:#1265ff}
.kpi-theme-activity .kpi-visual{background:linear-gradient(180deg,#e8fbf3 0%,#d2f3e6 100%);color:#1ca97b}
.kpi-theme-score .kpi-visual{background:linear-gradient(180deg,#f5edff 0%,#e6d9ff 100%);color:#7a43ef}
.kpi-theme-credits:after{background:linear-gradient(90deg,#1265ff,#a8ceff)}
.kpi-theme-activity:after{background:linear-gradient(90deg,#18b77f,#a5ead0)}
.kpi-theme-score:after{background:linear-gradient(90deg,#8a51ff,#d8c2ff)}
.kpi-mini-label{display:none!important}
@media(max-width:1100px){
  .dashboard-kpis{grid-template-columns:1fr!important}
  .dashboard-kpis .kpi-card{min-height:230px}
}


/* Dashboard premium redesign V4.8 — cleaner KPI illustration area */
.dashboard-kpis{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:28px;margin:26px 0}
.dashboard-kpis .kpi-card{
  position:relative;
  display:flex;
  flex-direction:column;
  min-height:255px;
  padding:26px 26px 24px;
  border-radius:28px;
  overflow:hidden;
  border:1px solid #dbe6fb;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);
  box-shadow:0 22px 54px rgba(7,25,74,.09);
}
.dashboard-kpis .kpi-card:before{
  content:"";
  position:absolute;
  right:-40px;
  top:-40px;
  width:220px;
  height:220px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(18,101,255,.10),rgba(18,101,255,0) 68%);
  pointer-events:none;
}
.dashboard-kpis .kpi-card:after{
  content:"";
  position:absolute;
  left:26px;
  right:26px;
  bottom:0;
  height:4px;
  border-radius:999px;
  background:linear-gradient(90deg,#1265ff,#b8d5ff);
}
.dashboard-kpis .kpi-card-top{
  position:relative;
  display:flex;
  align-items:flex-start;
  justify-content:flex-start;
  margin-bottom:42px;
  min-height:88px;
}
.dashboard-kpis .kpi-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 16px;
  border-radius:999px;
  border:1px solid #d7e4fb;
  background:rgba(255,255,255,.92);
  color:#355385;
  font-size:13px;
  font-weight:800;
  letter-spacing:.02em;
  box-shadow:0 8px 18px rgba(16,39,89,.05);
  position:relative;
  z-index:2;
}
.kpi-visual{
  position:absolute;
  top:2px;
  right:0;
  width:122px;
  height:84px;
  border-radius:26px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.95);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7), 0 14px 28px rgba(7,25,74,.08);
}
.kpi-visual:before{
  content:"";
  position:absolute;
  width:86px;
  height:86px;
  right:-14px;
  top:-18px;
  border-radius:50%;
  background:rgba(255,255,255,.32);
}
.kpi-visual:after{
  content:"";
  position:absolute;
  left:14px;
  bottom:12px;
  width:40px;
  height:10px;
  border-radius:999px;
  background:rgba(255,255,255,.35);
}
.kpi-visual svg{
  width:40px;
  height:40px;
  display:block;
  position:relative;
  z-index:2;
}
.dashboard-kpis .kpi-card small{
  display:block;
  margin:0 0 8px;
  color:#5a6d94;
  font-size:14px;
  font-weight:700;
}
.dashboard-kpis .kpi-card strong{
  display:flex;
  align-items:flex-end;
  gap:4px;
  margin:2px 0 6px;
  font-size:52px;
  line-height:1;
  color:#07194a;
  letter-spacing:-.065em;
}
.dashboard-kpis .kpi-card strong small{
  display:inline;
  margin:0 0 7px;
  font-size:.42em;
  color:#6f7fa4;
  font-weight:800;
}
.dashboard-kpis .kpi-card > span{
  display:block;
  color:#44557d;
  font-size:15px;
  line-height:1.48;
  max-width:92%;
}
.dashboard-kpis .kpi-card-action{margin-top:auto;padding-top:18px}
.dashboard-kpis .kpi-card-action .btn{
  width:100%;
  min-width:0;
  border-radius:16px;
  padding:16px 18px;
  box-shadow:0 14px 28px rgba(18,101,255,.22);
}
.kpi-theme-credits .kpi-visual{background:linear-gradient(135deg,#edf4ff 0%,#d8e6ff 100%);color:#1265ff}
.kpi-theme-activity .kpi-visual{background:linear-gradient(135deg,#ebfbf4 0%,#d4f3e5 100%);color:#17a878}
.kpi-theme-score .kpi-visual{background:linear-gradient(135deg,#f4edff 0%,#e4d7ff 100%);color:#7a43ef}
.kpi-theme-credits:before{background:radial-gradient(circle,rgba(18,101,255,.13),rgba(18,101,255,0) 68%)}
.kpi-theme-activity:before{background:radial-gradient(circle,rgba(16,185,129,.13),rgba(16,185,129,0) 68%)}
.kpi-theme-score:before{background:radial-gradient(circle,rgba(124,58,237,.14),rgba(124,58,237,0) 68%)}
.kpi-theme-credits:after{background:linear-gradient(90deg,#1265ff,#a8ceff)}
.kpi-theme-activity:after{background:linear-gradient(90deg,#18b77f,#a5ead0)}
.kpi-theme-score:after{background:linear-gradient(90deg,#8a51ff,#d8c2ff)}
@media(max-width:1100px){
  .dashboard-kpis{grid-template-columns:1fr!important}
  .dashboard-kpis .kpi-card{min-height:235px}
  .dashboard-kpis .kpi-card-top{min-height:78px;margin-bottom:30px}
  .kpi-visual{width:110px;height:76px}
}

/* Dashboard final premium mockup V4.9 */
.dashboard-kpis-final{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:28px!important;
  margin:28px 0 32px!important;
}
.dashboard-kpis-final .kpi-card-final{
  position:relative!important;
  min-height:350px!important;
  padding:28px 30px 30px!important;
  border-radius:28px!important;
  overflow:hidden!important;
  background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%)!important;
  border:1px solid #d8e6fb!important;
  box-shadow:0 24px 58px rgba(7,25,74,.09)!important;
  display:flex!important;
  flex-direction:column!important;
  gap:0!important;
}
.dashboard-kpis-final .kpi-card-final:before{
  content:""!important;
  position:absolute!important;
  inset:auto -60px -80px auto!important;
  width:220px!important;
  height:220px!important;
  border-radius:999px!important;
  background:radial-gradient(circle,rgba(18,101,255,.09),rgba(18,101,255,0) 68%)!important;
  pointer-events:none!important;
  display:block!important;
}
.dashboard-kpis-final .kpi-card-final:after{
  content:""!important;
  position:absolute!important;
  left:26px!important;
  right:26px!important;
  bottom:0!important;
  height:4px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,#1265ff,#b9d7ff)!important;
}
.kpi-wallet:after{background:linear-gradient(90deg,#1265ff,#b9d7ff)!important}
.kpi-activity:after{background:linear-gradient(90deg,#10b981,#a8efd4)!important}
.kpi-performance:after{background:linear-gradient(90deg,#7c3aed,#d7c3ff)!important}
.kpi-final-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:22px!important;
  min-height:135px!important;
  margin-bottom:10px!important;
}
.kpi-final-badge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:11px 18px!important;
  border-radius:999px!important;
  border:1px solid #d5e4fc!important;
  background:linear-gradient(180deg,#f9fbff,#edf4ff)!important;
  color:#1265ff!important;
  font-weight:800!important;
  font-size:14px!important;
  letter-spacing:-.01em!important;
  box-shadow:0 10px 22px rgba(7,25,74,.05)!important;
}
.kpi-activity .kpi-final-badge{color:#0f9f6e!important;background:linear-gradient(180deg,#f8fffc,#e8fbf3)!important;border-color:#cdf2e2!important}
.kpi-performance .kpi-final-badge{color:#6f35e8!important;background:linear-gradient(180deg,#fcfaff,#f2eaff)!important;border-color:#e1d2ff!important}
.kpi-final-visual{
  width:160px!important;
  height:124px!important;
  display:grid!important;
  place-items:center!important;
  flex:0 0 auto!important;
  transform:translate(8px,3px)!important;
}
.kpi-final-visual svg{
  width:160px!important;
  height:124px!important;
  display:block!important;
}
.dashboard-kpis-final .kpi-card-final small{
  display:block!important;
  margin:0 0 16px!important;
  color:#41527c!important;
  font-size:18px!important;
  font-weight:700!important;
  letter-spacing:-.02em!important;
}
.dashboard-kpis-final .kpi-card-final strong{
  display:flex!important;
  align-items:flex-end!important;
  gap:4px!important;
  margin:0 0 10px!important;
  color:#07194a!important;
  font-size:70px!important;
  line-height:.92!important;
  letter-spacing:-.07em!important;
  font-weight:800!important;
}
.dashboard-kpis-final .kpi-card-final strong small{
  display:inline!important;
  margin:0 0 10px!important;
  color:#42527b!important;
  font-size:.34em!important;
  font-weight:800!important;
  letter-spacing:-.04em!important;
}
.dashboard-kpis-final .kpi-card-final > span{
  display:block!important;
  color:#52617f!important;
  font-size:18px!important;
  line-height:1.45!important;
  max-width:92%!important;
}
.dashboard-kpis-final .kpi-card-action{
  margin-top:auto!important;
  padding-top:26px!important;
  display:flex!important;
  justify-content:stretch!important;
}
.dashboard-kpis-final .kpi-card-action .btn{
  width:100%!important;
  min-width:0!important;
  border-radius:16px!important;
  padding:18px 22px!important;
  font-size:18px!important;
  box-shadow:0 16px 30px rgba(18,101,255,.24)!important;
}
.dashboard-languages-card{
  margin-top:10px!important;
  padding:34px 38px!important;
  border-radius:28px!important;
  background:linear-gradient(180deg,#ffffff,#fbfdff)!important;
  border:1px solid #dfe8f8!important;
  box-shadow:0 20px 48px rgba(7,25,74,.075)!important;
}
.dashboard-languages-head h2{font-size:32px!important;letter-spacing:-.04em!important;margin:4px 0 8px!important}
.dashboard-languages-head p{font-size:16px!important;color:#647294!important}
.language-capsules-row{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(300px,380px))!important;
  gap:16px!important;
  overflow:visible!important;
}
.language-capsule{
  display:grid!important;
  grid-template-columns:64px 1fr auto!important;
  grid-template-areas:"icon name level" "icon meta level"!important;
  align-items:center!important;
  column-gap:18px!important;
  min-width:0!important;
  padding:18px!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,#ffffff,#f9fbff)!important;
  border:1px solid #dce7fb!important;
  box-shadow:none!important;
}
.language-capsule:before{
  content:attr(data-code)!important;
  grid-area:icon!important;
  width:58px!important;
  height:58px!important;
  border-radius:18px!important;
  display:grid!important;
  place-items:center!important;
  background:linear-gradient(180deg,#f1f6ff,#e2ecff)!important;
  color:#1265ff!important;
  font-size:18px!important;
  font-weight:900!important;
  letter-spacing:.04em!important;
}
.language-capsule-name{grid-area:name!important;font-size:18px!important;color:#07194a!important;font-weight:800!important}
.language-capsule small{grid-area:meta!important;font-size:15px!important;color:#687795!important;font-weight:600!important}
.language-capsule strong{
  grid-area:level!important;
  justify-self:end!important;
  min-width:58px!important;
  height:58px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  border-radius:20px!important;
  background:linear-gradient(180deg,#f9fbff,#edf4ff)!important;
  border:1px solid #dbe8fb!important;
  font-size:26px!important;
  color:#07194a!important;
  font-weight:900!important;
}
.language-capsule-meta{grid-column:2 / 3!important;margin-top:2px!important;background:transparent!important;padding:0!important;color:#1265ff!important;font-size:12px!important;font-weight:900!important;letter-spacing:.06em!important}
@media(max-width:1100px){
  .dashboard-kpis-final{grid-template-columns:1fr!important}
  .dashboard-kpis-final .kpi-card-final{min-height:300px!important}
  .kpi-final-head{min-height:120px!important}
}
@media(max-width:700px){
  .kpi-final-visual{width:120px!important;height:96px!important;transform:none!important}
  .kpi-final-visual svg{width:120px!important;height:96px!important}
  .dashboard-kpis-final .kpi-card-final strong{font-size:56px!important}
  .language-capsules-row{grid-template-columns:1fr!important}
}

/* Dashboard history deletion controls V4.11 */
.dashboard-row-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.dashboard-row-actions form{display:inline;margin:0}
.btn-delete-inline{appearance:none;border:0;background:transparent;color:#ef4444;font:inherit;font-weight:700;cursor:pointer;padding:4px 0}
.btn-delete-inline:hover{text-decoration:underline;color:#b91c1c}
.history-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.history-actions form{margin:0}
.danger-outline{border-color:#fecaca!important;color:#dc2626!important;background:#fff!important}
.danger-outline:hover{background:#fff5f5!important;border-color:#fca5a5!important}
.dashboard-table th:last-child,.dashboard-table td:last-child{white-space:nowrap}
@media(max-width:900px){.dashboard-row-actions{gap:8px}.history-actions{justify-content:flex-start}}

/* Dashboard delete actions redesign V4.12 */
.table-actions-premium{
  display:inline-flex;
  align-items:center;
  gap:8px;
  justify-content:flex-end;
  white-space:nowrap;
}
.table-action-form{margin:0;display:inline-flex;align-items:center}
.table-action-open{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:32px;
  padding:0 12px;
  border-radius:999px;
  background:#eef4ff;
  border:1px solid #dce8fb;
  color:#0d5cff!important;
  font-weight:800;
  font-size:13px;
  text-decoration:none!important;
  transition:.16s ease;
}
.table-action-open:hover{background:#e1ecff;transform:translateY(-1px)}
.table-action-delete{
  appearance:none;
  width:32px;
  height:32px;
  border-radius:999px;
  border:1px solid #edf0f7;
  background:#fff;
  color:#8a97b5;
  cursor:pointer;
  display:inline-grid;
  place-items:center;
  transition:.16s ease;
  padding:0;
}
.table-action-delete svg{width:15px;height:15px;display:block;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.table-action-delete:hover{background:#fff1f2;border-color:#fecdd3;color:#e11d48;box-shadow:0 8px 18px rgba(225,29,72,.10);transform:translateY(-1px)}
.btn-delete-inline{display:none!important}
.history-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.btn-clean-history{
  appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:0 16px;
  border-radius:12px;
  border:1px solid #ffe0b2;
  background:#fff8ed;
  color:#b45309;
  font:inherit;
  font-size:13px;
  font-weight:800;
  cursor:pointer;
  transition:.16s ease;
}
.btn-clean-history:hover{background:#ffedd5;border-color:#fed7aa;transform:translateY(-1px)}
.dashboard-table th:last-child,.dashboard-table td:last-child{text-align:right}
.dashboard-table td:last-child{width:132px}
@media(max-width:900px){
  .table-actions-premium{justify-content:flex-start}
  .dashboard-table th:last-child,.dashboard-table td:last-child{text-align:left}
}

/* Dashboard clean final — V5.0 */
.dashboard-metrics-clean{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
  margin:24px 0 22px;
}
.metric-clean{
  position:relative;
  min-height:166px;
  border:1px solid #dbe8fb;
  border-radius:24px;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);
  box-shadow:0 16px 40px rgba(7,25,74,.075);
  padding:22px;
  display:grid;
  grid-template-columns:68px 1fr;
  gap:20px;
  align-items:start;
  overflow:hidden;
}
.metric-clean:before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:4px;
  background:#1265ff;
}
.metric-clean-blue:before{background:linear-gradient(90deg,#1265ff,#8fc0ff)}
.metric-clean-green:before{background:linear-gradient(90deg,#10b981,#a7ead2)}
.metric-clean-purple:before{background:linear-gradient(90deg,#7c3aed,#cbb7ff)}
.metric-clean-icon{
  width:68px;
  height:68px;
  border-radius:18px;
  display:grid;
  place-items:center;
  color:#1265ff;
  background:linear-gradient(180deg,#eef5ff,#e3eeff);
  border:1px solid #d7e7ff;
  box-shadow:0 12px 24px rgba(18,101,255,.10);
}
.metric-clean-green .metric-clean-icon{color:#10a979;background:linear-gradient(180deg,#ecfbf5,#ddf7ec);border-color:#cdeee2;box-shadow:0 12px 24px rgba(16,185,129,.10)}
.metric-clean-purple .metric-clean-icon{color:#7c3aed;background:linear-gradient(180deg,#f4efff,#eee6ff);border-color:#e3d7ff;box-shadow:0 12px 24px rgba(124,58,237,.10)}
.metric-clean-icon svg{width:36px;height:36px;display:block}
.metric-clean-body{min-width:0}
.metric-clean-label{
  display:inline-flex;
  align-items:center;
  height:30px;
  padding:0 12px;
  border-radius:999px;
  background:#f4f8ff;
  border:1px solid #dce8fb;
  color:#155de8;
  font-size:12px;
  font-weight:800;
  margin-bottom:12px;
}
.metric-clean-green .metric-clean-label{color:#0f8f68;background:#f1fcf7;border-color:#cef0e3}
.metric-clean-purple .metric-clean-label{color:#6f35db;background:#f6f1ff;border-color:#e5d9ff}
.metric-clean h3{
  margin:0 0 8px;
  font-size:15px;
  line-height:1.25;
  color:#33466f;
  font-weight:750;
}
.metric-clean-value{
  font-size:42px;
  line-height:1;
  font-weight:850;
  letter-spacing:-.055em;
  color:#07194a;
}
.metric-clean-green .metric-clean-value{color:#0f8f68}
.metric-clean-purple .metric-clean-value{color:#5f2fc5}
.metric-clean-value small{font-size:20px;letter-spacing:-.02em;color:#53648c;margin-left:2px;font-weight:800}
.metric-clean p{margin:7px 0 0;color:#53648c;font-size:14px;line-height:1.35}
.metric-clean-link{
  margin-top:14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:38px;
  padding:0 16px;
  border-radius:12px;
  background:#fff;
  border:1px solid #b9d3ff;
  color:#1265ff;
  font-weight:800;
  box-shadow:0 8px 18px rgba(18,101,255,.08);
}
.metric-clean-link:hover{background:#eff6ff;text-decoration:none}
.dashboard-languages-card{
  border-radius:24px!important;
  padding:24px!important;
  margin:22px 0!important;
  box-shadow:0 14px 34px rgba(7,25,74,.06)!important;
}
.dashboard-languages-head{align-items:center!important;margin-bottom:18px!important}
.dashboard-languages-head h2{font-size:25px!important;letter-spacing:-.025em!important}
.dashboard-languages-head p{font-size:15px!important;color:#667397!important}
.language-capsules-row{grid-template-columns:repeat(auto-fit,minmax(250px,360px))!important;gap:14px!important}
.language-capsule{
  border-radius:18px!important;
  padding:16px 18px!important;
  min-height:86px!important;
  box-shadow:0 10px 24px rgba(7,25,74,.045)!important;
}
.language-capsule:before{width:48px!important;height:48px!important;border-radius:15px!important;font-size:13px!important}
.language-capsule strong{font-size:24px!important;border-radius:13px!important;padding:8px 12px!important;min-width:58px!important}
.dashboard-section-card{
  border-radius:24px!important;
  padding:24px 26px 18px!important;
  box-shadow:0 14px 34px rgba(7,25,74,.055)!important;
}
.dashboard-section-head{align-items:center!important;margin-bottom:18px!important}
.dashboard-section-head h2{font-size:25px!important;letter-spacing:-.025em!important}
.dashboard-table{
  border-collapse:separate!important;
  border-spacing:0!important;
  overflow:hidden!important;
}
.dashboard-table thead th{
  background:#f7faff!important;
  border-bottom:1px solid #e1eaf8!important;
  padding:14px 12px!important;
  color:#5f6f96!important;
  font-size:12px!important;
  letter-spacing:.06em!important;
}
.dashboard-table thead th:first-child{border-top-left-radius:14px!important}
.dashboard-table thead th:last-child{border-top-right-radius:14px!important}
.dashboard-table td{
  padding:14px 12px!important;
  border-bottom:1px solid #e7eefb!important;
  color:#11245b!important;
}
.dashboard-table tr:hover td{background:#fbfdff!important}
.status-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:0 12px;
  border-radius:999px;
  font-size:12px;
  font-weight:800;
  border:1px solid transparent;
}
.status-pill.is-completed{background:#eafaf2;color:#04845d;border-color:#c9f0de}
.status-pill.is-progress{background:#edf4ff;color:#1265ff;border-color:#d9e8ff}
.table-actions-premium{
  display:flex;
  align-items:center;
  gap:8px;
  justify-content:flex-start;
}
.table-action-open{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:32px;
  padding:0 12px;
  border-radius:999px;
  border:1px solid #cfe0ff;
  background:#fff;
  color:#1265ff;
  font-weight:800;
  font-size:13px;
}
.table-action-open:hover{background:#eef5ff;text-decoration:none}
.table-action-form{margin:0;display:inline-flex}
.table-action-delete{
  width:32px;
  height:32px;
  border-radius:999px;
  border:1px solid #edf0f7;
  background:#fff;
  color:#9aa6bd;
  display:grid;
  place-items:center;
  cursor:pointer;
  transition:.16s ease;
}
.table-action-delete svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.table-action-delete:hover{border-color:#fecaca;background:#fff5f5;color:#ef4444}
.history-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.btn-clean-history{
  min-height:38px;
  padding:0 14px;
  border-radius:12px;
  border:1px solid #fecaca;
  background:#fff;
  color:#dc2626;
  font-weight:800;
  cursor:pointer;
}
.btn-clean-history:hover{background:#fff5f5}
@media(max-width:1100px){
  .dashboard-metrics-clean{grid-template-columns:1fr!important}
  .metric-clean{min-height:auto!important}
}
@media(max-width:720px){
  .metric-clean{grid-template-columns:1fr!important}
  .dashboard-section-head,.dashboard-languages-head{align-items:flex-start!important;flex-direction:column!important}
  .dashboard-table{display:block;overflow-x:auto;white-space:nowrap}
}

/* Analyse de mon CV */
.cv-list-head-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.cv-analysis-title{margin-bottom:22px}
.cv-pdf-menu{position:relative}
.cv-pdf-menu>summary{list-style:none}
.cv-pdf-menu>summary::-webkit-details-marker{display:none}
.cv-pdf-menu>div{position:absolute;right:0;top:calc(100% + 8px);z-index:30;display:grid;min-width:160px;padding:8px;border:1px solid #dbe8fb;border-radius:14px;background:#fff;box-shadow:0 16px 38px rgba(7,25,74,.16)}
.cv-pdf-menu a{display:block;padding:10px 12px;border-radius:10px;color:#172554;font-size:13px;font-weight:800;white-space:nowrap}
.cv-pdf-menu a:hover{background:#eef5ff;color:#1265ff}
.cv-analysis-layout{display:grid;grid-template-columns:minmax(320px,1fr) 380px;gap:24px;align-items:start;margin-bottom:24px}
.cv-analysis-form-card,.cv-analysis-help-card{border-radius:24px}
.cv-analysis-form textarea{min-height:190px;line-height:1.55}
.cv-analysis-help-card{display:grid;gap:16px;background:linear-gradient(180deg,#fff,#f8fbff)}
.cv-analysis-help-card h2{margin:0;color:#07194a}
.cv-analysis-check-list{display:grid;gap:10px}
.cv-analysis-check-list span{display:flex;align-items:center;gap:10px;border:1px solid #dce8fb;background:#fff;border-radius:14px;padding:12px 14px;color:#24365f;font-weight:800}
.cv-analysis-check-list span:before{content:"";width:9px;height:9px;border-radius:50%;background:#1265ff;box-shadow:0 0 0 4px #eaf2ff}
.cv-analysis-empty{margin:18px 0 24px}
.cv-analysis-result{display:grid;gap:24px;margin:24px 0}
.cv-analysis-hero{margin:0}
.cv-analysis-kpi-grid .report-kpi-card{display:grid;gap:10px;align-content:start;min-height:146px}
.cv-analysis-kpi-title{display:flex;align-items:center;gap:10px;margin-bottom:4px;min-width:0}
.cv-analysis-kpi-title span{flex:0 0 auto;margin-bottom:0}
.cv-analysis-kpi-title h3{margin:0;color:#07194a;font-size:15px;line-height:1.25;font-weight:850;letter-spacing:0}
.cv-analysis-kpi-grid .report-kpi-card strong small{font-size:.42em;color:#667397;margin-left:3px}
.cv-analysis-kpi-grid .report-kpi-card p{margin:0;line-height:1.35}
.cv-analysis-insights{align-items:stretch}
.cv-analysis-insights .insight-card{display:flex;flex-direction:column;padding:26px 26px 30px}
.cv-analysis-insights .insight-card h2{margin:8px 0 16px;line-height:1.12}
.cv-analysis-item-list{display:grid;gap:18px}
.cv-analysis-item{border:0;border-bottom:1px solid #edf2fb;background:transparent;border-radius:0;padding:0 0 17px}
.cv-analysis-item:last-child{border-bottom:0;padding-bottom:0}
.cv-analysis-item strong{display:block;margin:0 0 10px;color:#07194a;font-size:16px;line-height:1.35}
.cv-analysis-item p{margin:0;color:#526087;line-height:1.68}
.cv-analysis-item p+p{margin-top:10px}
.cv-analysis-view-list{display:grid;gap:17px}
.cv-analysis-view-list p{display:grid;gap:6px;margin:0;color:#526087;line-height:1.68}
.cv-analysis-view-list strong{display:block!important;color:#07194a;margin:0;line-height:1.35}
.cv-analysis-view-list span{display:block}
.cv-analysis-reading-card,.cv-analysis-actions-card,.cv-analysis-rewrite-card,.cv-analysis-history-card{margin-top:0}
.cv-analysis-reading-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.cv-analysis-reading-grid h3{margin:0 0 10px;color:#07194a}
.cv-analysis-reading-grid .tags span{font-size:13px;padding:9px 12px}
.cv-analysis-actions-card .action-plan-list-v2{display:grid;gap:12px}
.cv-analysis-rewrite-card .cv-analysis-item-list{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:1100px){
  .cv-analysis-layout,.cv-analysis-reading-grid,.cv-analysis-rewrite-card .cv-analysis-item-list{grid-template-columns:1fr}
  .cv-list-head-actions{width:100%}
  .cv-list-head-actions .btn{flex:1;min-width:180px}
}

/* Création de CV */
.cv-create-title{margin-bottom:22px}
.cv-create-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:24px;align-items:start;margin-bottom:24px}
.cv-create-form-card,.cv-create-side-card,.cv-create-preview-card{border-radius:24px}
.cv-create-form-section{border:1px solid #e2ecfb;background:#f8fbff;border-radius:18px;padding:18px;display:grid;gap:14px}
.cv-create-form-section+.cv-create-form-section{margin-top:4px}
.cv-create-form-section h3{margin:0;color:#07194a;font-size:19px;line-height:1.25}
.cv-create-form textarea{line-height:1.55}
.cv-photo-upload{position:relative}
.cv-photo-upload input[type="file"]{position:absolute;opacity:0;pointer-events:none}
.cv-photo-card{display:grid;grid-template-columns:68px 1fr;gap:14px;align-items:center;border:1px dashed #9fc4ff;background:#f6faff;border-radius:16px;padding:12px;cursor:pointer;transition:.16s ease}
.cv-photo-card:hover{border-color:#1265ff;background:#eef6ff}
.cv-photo-card.has-photo{border-style:solid;border-color:#10b981;background:#f0fdf4}
.cv-photo-preview{width:68px;height:68px;border-radius:50%;background:#e6effc;box-shadow:inset 0 0 0 1px #d4e4f8;background-size:cover;background-position:center;display:block}
.cv-photo-preview:before{content:"Photo";width:100%;height:100%;display:grid;place-items:center;color:#64729a;font-size:12px;font-weight:850}
.cv-photo-card.has-photo .cv-photo-preview:before{content:""}
.cv-photo-card strong{display:block;color:#07194a;font-size:15px;line-height:1.25;word-break:break-word}
.cv-photo-card small{display:block;margin-top:4px;color:#64729a;line-height:1.35}
.cv-template-field{display:grid;gap:10px}
.cv-template-field>strong{color:#26345f}
.cv-template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.cv-template-option{position:relative;display:grid!important;gap:9px;border:1px solid #dce8fb;background:#fff;border-radius:16px;padding:13px;cursor:pointer;transition:.16s ease}
.cv-template-option input{position:absolute;opacity:0;pointer-events:none}
.cv-template-option:has(input:checked){border-color:#1265ff;box-shadow:0 0 0 4px #eaf2ff;background:#fafdff}
.cv-template-option b{color:#07194a;font-size:14px;line-height:1.25}
.cv-template-option small{color:#64729a;line-height:1.35}
.cv-template-preview{height:118px;border:1px solid #e2ecfb;background:linear-gradient(180deg,#eef5ff,#f9fbff);border-radius:12px;padding:10px;display:grid;place-items:center;overflow:hidden}
.cv-preview-paper{position:relative;width:74px;height:96px;border-radius:5px;background:#fff;box-shadow:0 10px 24px rgba(7,25,74,.16);padding:10px 9px;display:grid;align-content:start;gap:5px;overflow:hidden}
.cv-preview-paper i{display:block;border-radius:999px;background:#d5e2f5}
.cv-preview-name{height:7px;width:70%;background:#07194a!important}
.cv-preview-title{height:5px;width:58%;background:#1265ff!important}
.cv-preview-heading{height:5px;width:38%;margin-top:4px;background:#8da9dc!important}
.cv-preview-line{height:4px;width:100%}
.cv-preview-line.mid{width:78%}
.cv-preview-line.short{width:55%}
.template-moderne .cv-preview-paper{width:82px;padding-left:31px}
.template-moderne .cv-preview-side{position:absolute;left:0;top:0;bottom:0;width:24px;height:100%;border-radius:0;background:linear-gradient(180deg,#1265ff,#54a0ff)!important}
.template-compact .cv-preview-paper{width:88px;height:96px;gap:4px;padding:8px}
.template-compact .cv-preview-name{width:62%}
.template-compact .cv-preview-title{width:82%}
.cv-template-live-preview{display:grid;gap:12px;padding:16px;border:1px solid #dce8fb;background:#fff;border-radius:18px}
.cv-template-live-preview.is-floating{position:fixed;left:var(--cv-template-preview-left,16px);top:var(--cv-template-preview-top,16px);z-index:120;width:min(360px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow:auto;box-shadow:0 26px 72px rgba(7,25,74,.24);animation:cvTemplatePreviewPop .16s ease-out}
.cv-template-live-preview.is-floating .cv-sample-page{min-height:300px}
.cv-template-live{display:none;gap:12px}
.cv-template-live.is-active{display:grid}
.cv-template-live h3{margin:0;color:#07194a;font-size:20px;line-height:1.2}
.cv-template-live p{margin:0;color:#526087;line-height:1.5}
.cv-sample-page{min-height:330px;border:1px solid #d8e6f8;background:#fff;border-radius:10px;box-shadow:0 18px 38px rgba(7,25,74,.12);padding:24px;overflow:hidden;color:#07194a}
.cv-sample-page strong{display:block;font-size:22px;line-height:1.15;margin-bottom:5px}
.cv-sample-page span{display:block;color:#1265ff;font-weight:850;font-size:13px}
.cv-sample-page em{display:block;margin-top:8px;color:#667397;font-style:normal;font-size:10px;font-weight:750}
.cv-sample-page section{margin-top:18px}
.cv-sample-page b{display:block;margin-bottom:8px;color:#07194a;font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.cv-sample-page p{height:7px;margin:0 0 7px;border-radius:999px;background:#d8e5f8}
.cv-sample-page p.mid{width:76%}
.cv-sample-page p.short{width:54%}
.cv-sample-page footer{margin-top:16px;color:#1265ff;font-size:10px;font-weight:850;word-break:break-word}
.cv-sample-tags{display:flex;gap:6px;flex-wrap:wrap}
.cv-sample-tags span{display:inline-flex;align-items:center;max-width:100%;min-height:22px;padding:0 7px;border-radius:999px;background:#eef5ff;color:#1265ff;font-size:9px;font-weight:850;line-height:1.1;overflow:hidden;text-overflow:ellipsis}
.cv-sample-classique header{padding-bottom:16px;border-bottom:2px solid #1265ff}
.cv-sample-moderne{display:grid;grid-template-columns:34% 1fr;padding:0}
.cv-sample-moderne aside{background:linear-gradient(180deg,#07194a,#1265ff);padding:22px 16px;display:grid;align-content:start;gap:10px}
.cv-sample-moderne aside i{width:48px;height:48px;border-radius:50%;background:rgba(255,255,255,.9);display:block;margin-bottom:10px}
.cv-sample-moderne aside p{background:rgba(255,255,255,.35);height:7px}
.cv-sample-moderne aside p.short{width:62%}
.cv-sample-moderne main{padding:24px 20px}
.cv-sample-moderne header{padding-bottom:14px}
.cv-sample-compact{padding:20px}
.cv-sample-compact header{display:grid;grid-template-columns:1fr;gap:3px;padding-bottom:12px;border-bottom:1px solid #d8e6f8}
.cv-sample-compact strong{font-size:20px}
.cv-sample-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.cv-sample-columns section{margin-top:14px}
@keyframes cvTemplatePreviewPop{from{opacity:.72;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
.cv-experience-list{display:grid;gap:14px}
.cv-experience-list>strong{color:#26345f}
.cv-experience-card{min-width:0;margin:0;padding:16px;border:1px solid #dce8fb;border-radius:18px;background:#fff;display:grid;gap:12px}
.cv-experience-card legend{padding:0 8px;color:#1265ff;font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.cv-experience-card label{background:#f8fbff;border:1px solid #e2ecfb;border-radius:14px;padding:12px}
.cv-social-input-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.cv-social-input{display:grid!important;grid-template-columns:48px minmax(0,1fr);gap:6px 12px;align-items:center;border:1px solid #e2ecfb;border-radius:16px;background:#fff;padding:12px;color:#26345f;font-weight:850!important}
.cv-social-input>span{grid-row:1 / span 2;width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:#eef5ff;color:#1265ff;font-size:11px;font-weight:950;letter-spacing:0}
.cv-social-input input{grid-column:2;min-width:0}
.cv-social-links-section{background:linear-gradient(180deg,#f8fbff,#fff)}
.social-links-card{border:1px solid #cfe0ff;background:#fff;border-radius:18px;padding:18px;box-shadow:0 12px 28px rgba(18,101,255,.07)}
.social-links-card h4{margin:6px 0 6px;color:#07194a;font-size:20px;line-height:1.2}
.social-links-card p{margin:0;color:#526087;line-height:1.5}
.cv-social-links-section label{background:#fff;border:1px solid #e2ecfb;border-radius:16px;padding:14px}
.cv-social-links-section textarea{min-height:120px}
.cv-create-side-card{display:grid;gap:16px;background:linear-gradient(180deg,#fff,#f8fbff)}
.cv-create-side-card h2{margin:0;color:#07194a}
.cv-create-steps{display:grid;gap:12px}
.cv-create-steps div{border:1px solid #dce8fb;background:#fff;border-radius:16px;padding:14px}
.cv-create-steps strong{display:block;color:#07194a;margin-bottom:6px}
.cv-create-steps p{margin:0;color:#526087;line-height:1.5}
.cv-create-preview-card{margin-top:24px}
.cv-create-preview-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.cv-create-preview-text{white-space:pre-wrap;margin:0;background:#f8fbff;border:1px solid #dce8fb;border-radius:18px;padding:20px;color:#10245b;font:500 15px/1.65 Inter,Segoe UI,Arial,sans-serif;max-height:760px;overflow:auto}
@media(max-width:1100px){
  .cv-create-layout{grid-template-columns:1fr}
  .cv-template-grid{grid-template-columns:1fr}
  .cv-social-input-grid,.cv-experience-card .grid-3{grid-template-columns:1fr}
  .cv-template-live-preview{order:-1}
  .cv-sample-page{min-height:300px}
  .cv-create-preview-actions{justify-content:flex-start}
}
@media(max-width:640px){
  .cv-photo-card{grid-template-columns:58px 1fr}
  .cv-photo-preview{width:58px;height:58px}
  .cv-template-preview{height:104px}
  .cv-sample-page{min-height:280px;padding:18px}
  .cv-sample-moderne{grid-template-columns:30% 1fr}
  .cv-sample-moderne main{padding:20px 16px}
  .cv-sample-columns{grid-template-columns:1fr}
}

/* Parametrage utilisateur */
.settings-title{margin-bottom:22px}
.settings-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;align-items:start;margin-bottom:24px}
.settings-card{border-radius:24px}
.settings-card h2{margin:0;color:#07194a;line-height:1.2}
.settings-form{display:grid;gap:16px}
.settings-photo-upload .cv-photo-card{max-width:520px;background:#f8fbff}
.settings-section-title{display:grid;gap:5px;margin-top:6px}
.settings-section-title h2{font-size:22px}
.settings-social-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.settings-toggle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.settings-toggle-grid .checkbox-row{margin:0;border:1px solid #e2ecfb;border-radius:16px;background:#fff;padding:14px;font-weight:850!important}
.settings-language-list{display:grid;gap:10px}
.settings-language-row{display:grid;grid-template-columns:minmax(130px,.8fr) minmax(180px,1fr) auto;gap:12px;align-items:center;border:1px solid #e2ecfb;border-radius:16px;background:#fff;padding:12px}
.settings-language-row strong{display:block;color:#07194a;line-height:1.2}
.settings-language-row small{display:block;color:#667397;font-weight:850;margin-top:3px}
.settings-language-row label{margin:0}
.settings-native-radio{display:flex!important;align-items:center;gap:8px;white-space:nowrap;color:#26345f;font-weight:850!important}
.settings-native-radio input{width:auto!important;margin:0}
.settings-password-section{display:grid;gap:16px;margin-top:24px;padding-top:22px;border-top:1px solid #e2ecfb}
.settings-password-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.settings-password-form .btn{grid-column:1/-1}
.settings-password-section .mini-muted{margin:0;color:#667397;line-height:1.5}
@media(max-width:1100px){
  .settings-layout{grid-template-columns:1fr}
  .settings-password-form{grid-template-columns:1fr}
}
@media(max-width:700px){
  .settings-social-grid,.settings-toggle-grid{grid-template-columns:1fr}
  .settings-language-row{grid-template-columns:1fr}
  .settings-native-radio{white-space:normal}
}

/* JobPaca IA V6.0 - Test personnalite DISC */
.disc-title{max-width:1040px}
.disc-overview-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:22px;align-items:stretch;margin-bottom:24px}
.disc-intro-card,.disc-latest-card{border-radius:24px}
.disc-intro-card h2,.disc-latest-card h2{margin:8px 0;color:#07194a}
.disc-intro-card p,.disc-latest-card p{color:#52607a;line-height:1.55}
.disc-mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px}
.disc-mini-grid div{border:1px solid #e1eafb;background:#f8fbff;border-radius:16px;padding:16px}
.disc-mini-grid strong{display:block;font-size:28px;color:#07194a}
.disc-mini-grid span{display:block;color:#667397;font-weight:700;font-size:13px}
.disc-latest-card{display:grid;gap:10px;align-content:start;background:linear-gradient(180deg,#fff,#f8fbff)}
.disc-latest-card h2{font-size:48px;line-height:1}
.disc-latest-card strong{font-size:18px;color:#172554}
.disc-latest-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}
.disc-result{display:grid;gap:22px;margin:22px 0}
.disc-result-hero{margin:0}
.disc-score-card{--score-color:#155EEF}
.disc-score-card h2{font-size:34px}
.disc-score-distribution{padding:26px}
.disc-bars{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.disc-bar-row{--disc-color:#155EEF;border:1px solid #e2ecfb;background:#fff;border-radius:18px;padding:16px;display:grid;gap:10px}
.disc-style-d{--disc-color:#155EEF}
.disc-style-i{--disc-color:#F79009}
.disc-style-s{--disc-color:#12B76A}
.disc-style-c{--disc-color:#7A5AF8}
.disc-bar-label{display:flex;justify-content:space-between;gap:14px;align-items:center}
.disc-bar-label strong{color:#07194a}
.disc-bar-label span{font-weight:800;color:var(--disc-color)}
.disc-bar-track{height:11px;border-radius:999px;background:#eef3fb;overflow:hidden}
.disc-bar-track span{display:block;height:100%;width:var(--score);border-radius:999px;background:var(--disc-color)}
.disc-bar-row p{margin:0;color:#667397;font-size:14px;line-height:1.4}
.disc-insights .insight-icon{font-size:15px;font-weight:900}
.disc-reading-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.disc-reading-grid article{border:1px solid #e2ecfb;background:#f8fbff;border-radius:18px;padding:18px}
.disc-reading-grid h3{margin:0 0 10px;color:#07194a}
.disc-reading-grid p{margin:0;color:#52607a;line-height:1.55}
.disc-test-card{margin:26px 0}
.disc-context-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.disc-question-list{display:grid;gap:16px;margin:8px 0 18px}
.disc-question-card{margin:0;border:1px solid #e0e9f8;background:linear-gradient(180deg,#fff,#f8fbff);border-radius:20px;padding:18px}
.disc-question-card legend{display:flex;gap:12px;align-items:flex-start;width:100%;font-weight:800;color:#07194a;line-height:1.35;padding:0 0 14px}
.disc-question-card legend span{flex:0 0 auto;width:38px;height:38px;border-radius:13px;background:#eef5ff;border:1px solid #d4e5ff;color:#155EEF;display:grid;place-items:center;font-size:13px}
.disc-options-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.disc-option{display:grid!important;grid-template-columns:auto 34px 1fr;gap:10px;align-items:center;border:1px solid #dfe8f6;background:#fff;border-radius:16px;padding:13px 14px;color:#26345f;font-weight:600!important;line-height:1.35;cursor:pointer;transition:.18s ease}
.disc-option input{width:auto!important;height:auto!important;padding:0!important;margin:0;accent-color:#155EEF;box-shadow:none!important}
.disc-option-letter{width:34px;height:34px;border-radius:12px;background:#f1f6ff;color:#155EEF;display:grid;place-items:center;font-size:13px;font-weight:900}
.disc-option:has(input:checked){border-color:#155EEF;background:#f3f8ff;box-shadow:0 0 0 4px rgba(21,94,239,.08)}
.disc-option:has(input:checked) .disc-option-letter{background:#155EEF;color:#fff}
.disc-history-card{margin-top:22px}
.dashboard-personality-card{margin:0 0 22px;padding:28px;border-radius:26px}
.dashboard-personality-result{display:grid;grid-template-columns:minmax(160px,.35fr) minmax(0,1fr) auto;gap:18px;align-items:center}
.dashboard-personality-code{display:grid;gap:6px;border:1px solid #dbe8fb;background:#f8fbff;border-radius:18px;padding:18px;min-height:112px}
.dashboard-personality-code strong{font-size:46px;line-height:1;color:#07194a}
.dashboard-personality-code span{color:#52607a;font-weight:800}
.dashboard-personality-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.dashboard-personality-meta div{border:1px solid #e2ecfb;background:#fff;border-radius:16px;padding:14px}
.dashboard-personality-meta small{display:block;color:#667397;margin-bottom:4px;font-weight:700}
.dashboard-personality-meta strong{color:#07194a}
@media(max-width:1100px){
  .disc-overview-grid,.disc-bars,.disc-reading-grid,.disc-context-grid,.dashboard-personality-result,.dashboard-personality-meta{grid-template-columns:1fr}
  .dashboard-personality-result{align-items:stretch}
}
@media(max-width:760px){
  .disc-mini-grid,.disc-options-grid{grid-template-columns:1fr}
  .disc-option{grid-template-columns:auto 30px 1fr}
  .disc-latest-card h2{font-size:38px}
  .disc-score-distribution{padding:18px}
}

/* JobPaca IA V6.1 - Page DISC plus aeree */
.disc-hero-title{
  position:relative;
  max-width:1180px;
  margin:0 auto 28px;
  padding:34px 38px 36px;
  border:1px solid #dbe7f7;
  border-radius:28px;
  background:linear-gradient(135deg,#ffffff 0%,#f6faff 56%,#f2fbf7 100%);
  box-shadow:0 20px 52px rgba(7,25,74,.08);
  overflow:hidden;
}
.disc-hero-title:before{
  content:"DISC";
  position:absolute;
  right:30px;
  top:22px;
  font-size:92px;
  line-height:1;
  font-weight:900;
  letter-spacing:.08em;
  color:rgba(21,94,239,.055);
  pointer-events:none;
}
.disc-page-badge{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 13px;
  border-radius:999px;
  background:#eef5ff;
  border:1px solid #cfe0ff;
  color:#155EEF;
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.disc-hero-title h1{
  position:relative;
  max-width:830px;
  margin:16px 0 12px!important;
  font-size:clamp(34px,4vw,56px)!important;
  line-height:1.04;
  letter-spacing:-.04em!important;
}
.disc-hero-title p{
  position:relative;
  max-width:780px;
  font-size:18px;
  line-height:1.65;
}
.disc-title-actions{
  position:relative;
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:22px;
}
.disc-overview-grid{
  max-width:1180px;
  margin-left:auto;
  margin-right:auto;
  gap:24px;
}
.disc-intro-card,.disc-latest-card{
  padding:30px;
  border-radius:24px;
  box-shadow:0 16px 42px rgba(7,25,74,.075);
}
.disc-dimension-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}
.disc-dim{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:38px;
  padding:0 12px 0 8px;
  border-radius:999px;
  background:#fff;
  border:1px solid #e0e9f8;
  color:#24345f;
  font-weight:800;
  font-size:13px;
}
.disc-dim b{
  width:26px;
  height:26px;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#fff;
  font-size:12px;
}
.disc-dim-d b{background:#155EEF}
.disc-dim-i b{background:#F79009}
.disc-dim-s b{background:#12B76A}
.disc-dim-c b{background:#7A5AF8}
.disc-test-card{
  max-width:1180px;
  margin:34px auto 24px;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}
.disc-test-card>.section-head{
  align-items:center;
  margin-bottom:22px;
  padding:24px 28px;
  border:1px solid #dfe9f8;
  border-radius:24px;
  background:#fff;
  box-shadow:0 14px 34px rgba(7,25,74,.06);
}
.disc-test-card>.section-head h2{
  font-size:30px;
  margin-bottom:8px;
}
.disc-test-card>.section-head p{
  max-width:780px;
  color:#526087;
  line-height:1.55;
}
.disc-context-grid{
  margin-bottom:22px;
  padding:22px;
  border:1px solid #dfe9f8;
  border-radius:22px;
  background:#fff;
  box-shadow:0 12px 30px rgba(7,25,74,.055);
}
.disc-question-list{
  gap:22px;
}
.disc-question-card{
  border:1px solid #dce7f8;
  border-radius:24px;
  padding:24px;
  background:#fff;
  box-shadow:0 14px 36px rgba(7,25,74,.065);
}
.disc-question-card:hover{
  border-color:#c9dbf5;
  box-shadow:0 18px 44px rgba(7,25,74,.085);
}
.disc-question-card legend{
  display:grid;
  grid-template-columns:130px 1fr;
  gap:16px;
  align-items:start;
  padding:0 0 18px;
}
.disc-question-card legend .disc-question-number{
  width:auto;
  height:34px;
  padding:0 12px;
  border-radius:999px;
  background:#eef5ff;
  border:1px solid #cfe0ff;
  color:#155EEF;
  font-size:12px;
  font-weight:900;
  letter-spacing:.04em;
}
.disc-question-card legend strong{
  color:#07194a;
  font-size:18px;
  line-height:1.38;
}
.disc-options-grid{
  gap:14px;
}
.disc-option{
  position:relative;
  grid-template-columns:40px 1fr!important;
  min-height:88px;
  padding:18px!important;
  border-radius:18px;
  border-color:#e2ebf8;
  background:linear-gradient(180deg,#fff,#fbfdff);
}
.disc-option input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.disc-option-letter{
  width:40px;
  height:40px;
  border-radius:14px;
  background:#f0f6ff;
  color:#155EEF;
  box-shadow:inset 0 0 0 1px #d6e5fb;
}
.disc-option-copy{
  display:block;
  color:#26345f;
  font-size:15px;
  line-height:1.48;
}
.disc-option:hover{
  transform:translateY(-1px);
  border-color:#b8d3ff;
  box-shadow:0 12px 28px rgba(21,94,239,.08);
}
.disc-option:has(input:checked){
  border-color:#155EEF;
  background:linear-gradient(180deg,#f6faff,#eef5ff);
  box-shadow:0 0 0 4px rgba(21,94,239,.10),0 16px 34px rgba(21,94,239,.10);
}
.disc-submit-btn{
  min-height:56px;
  font-size:17px;
  border-radius:16px;
}
.disc-history-card{
  max-width:1180px;
  margin-left:auto;
  margin-right:auto;
}
@media(max-width:900px){
  .disc-hero-title{padding:26px 22px}
  .disc-hero-title:before{display:none}
  .disc-test-card>.section-head{align-items:flex-start}
  .disc-question-card legend{grid-template-columns:1fr}
  .disc-options-grid{grid-template-columns:1fr}
  .disc-context-grid{grid-template-columns:1fr}
}

/* JobPaca IA V6.2 - Intro DISC en vraies cartes */
.disc-feature-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin-top:24px;
}
.disc-feature-grid article{
  position:relative;
  min-height:132px;
  display:grid;
  align-content:end;
  gap:7px;
  padding:18px;
  border:1px solid #dfe9f8;
  border-radius:18px;
  background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%);
  box-shadow:0 12px 28px rgba(7,25,74,.055);
  overflow:hidden;
}
.disc-feature-grid article:after{
  content:"";
  position:absolute;
  right:-28px;
  top:-32px;
  width:104px;
  height:104px;
  border-radius:50%;
  background:rgba(21,94,239,.08);
}
.disc-feature-grid article span{
  position:absolute;
  left:16px;
  top:14px;
  min-width:34px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#eef5ff;
  color:#155EEF;
  border:1px solid #cfe0ff;
  font-size:12px;
  font-weight:900;
}
.disc-feature-grid article strong{
  display:block;
  color:#07194a;
  font-size:34px;
  line-height:1;
  letter-spacing:-.035em;
}
.disc-feature-grid article small{
  display:block;
  color:#617194;
  font-size:14px;
  line-height:1.35;
  font-weight:750;
}
.disc-dimension-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-top:18px;
}
.disc-dim-card{
  display:grid;
  grid-template-columns:42px 1fr;
  gap:10px;
  align-items:center;
  min-height:76px;
  padding:14px;
  border:1px solid #e0e9f8;
  border-radius:18px;
  background:#fff;
}
.disc-dim-card b{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:15px;
  color:#fff;
  font-size:18px;
  line-height:1;
}
.disc-dim-card strong{
  display:block;
  color:#07194a;
  font-size:14px;
  line-height:1.2;
}
.disc-dim-card small{
  display:block;
  margin-top:4px;
  color:#667397;
  font-size:12px;
  line-height:1.25;
  font-weight:700;
}
.disc-dim-d b{background:#155EEF}
.disc-dim-i b{background:#F79009}
.disc-dim-s b{background:#12B76A}
.disc-dim-c b{background:#7A5AF8}
.disc-dim-d{background:linear-gradient(180deg,#fff,#f5f8ff)}
.disc-dim-i{background:linear-gradient(180deg,#fff,#fff8ed)}
.disc-dim-s{background:linear-gradient(180deg,#fff,#f2fbf7)}
.disc-dim-c{background:linear-gradient(180deg,#fff,#f7f3ff)}
@media(max-width:1100px){
  .disc-feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .disc-dimension-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .disc-feature-grid,.disc-dimension-grid{grid-template-columns:1fr}
  .disc-feature-grid article{min-height:110px}
}

/* JobPaca IA V6.3 - Test de logique */
.logic-hero-title{
  background:linear-gradient(135deg,#ffffff 0%,#f3fbf9 48%,#f8f6ff 100%);
}
.logic-hero-title:before{
  content:"LOGIQUE";
  color:rgba(14,147,132,.07);
}
.logic-latest-card h2{
  color:#0e5f56;
}
.logic-skill-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
  margin-top:18px;
}
.logic-skill-grid article{
  display:grid;
  grid-template-columns:42px 1fr;
  gap:10px;
  align-items:center;
  min-height:76px;
  padding:14px;
  border:1px solid #dfe9f5;
  border-radius:18px;
  background:#fff;
}
.logic-skill-grid b{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:15px;
  color:#fff;
  background:#0e9384;
  font-size:14px;
}
.logic-skill-grid article:nth-child(2) b{background:#155EEF}
.logic-skill-grid article:nth-child(3) b{background:#7A5AF8}
.logic-skill-grid article:nth-child(4) b{background:#F79009}
.logic-skill-grid article:nth-child(5) b{background:#12B76A}
.logic-skill-grid strong{
  display:block;
  color:#07194a;
  font-size:14px;
  line-height:1.2;
}
.logic-skill-grid small{
  display:block;
  margin-top:4px;
  color:#667397;
  font-size:12px;
  line-height:1.25;
  font-weight:700;
}
.logic-test-card [hidden]{
  display:none!important;
}
.logic-launch-panel{
  display:grid;
  grid-template-columns:1fr auto;
  gap:18px;
  align-items:center;
  margin:22px 0;
  padding:20px;
  border:1px solid #cfeee8;
  border-radius:20px;
  background:linear-gradient(135deg,#f6fffd 0%,#ffffff 55%,#f8f6ff 100%);
  box-shadow:0 18px 45px rgba(14,95,86,.08);
}
.logic-launch-panel h3{
  margin:4px 0 8px;
  color:#07194a;
  font-size:22px;
}
.logic-launch-panel p{
  margin:0;
  color:#52607a;
  line-height:1.5;
}
.logic-start-btn{
  min-width:190px;
}
.logic-timer-panel{
  position:sticky;
  top:12px;
  z-index:8;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin:22px 0;
  padding:16px 18px;
  border:1px solid #cfeee8;
  border-radius:18px;
  background:rgba(255,255,255,.94);
  box-shadow:0 16px 40px rgba(7,25,74,.12);
  backdrop-filter:blur(14px);
}
.logic-time{
  display:block;
  margin-top:2px;
  color:#0e5f56;
  font-size:32px;
  line-height:1;
  font-weight:950;
  font-variant-numeric:tabular-nums;
}
.logic-progress-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:0 14px;
  border-radius:999px;
  background:#effdfa;
  color:#0e5f56;
  font-size:13px;
  font-weight:900;
  white-space:nowrap;
}
.logic-test-card.is-time-low .logic-time{
  color:#b42318;
}
.logic-test-card.is-time-low .logic-timer-panel{
  border-color:#fed7aa;
  box-shadow:0 18px 45px rgba(180,35,24,.12);
}
.logic-test-card.is-submitting .logic-submit-btn,
.logic-test-card.is-submitting .logic-start-btn{
  opacity:.72;
  pointer-events:none;
}
.logic-score-card{
  --score-color:#0e9384;
}
.logic-score-card h2{
  font-size:24px;
}
.logic-cat-num{--disc-color:#0e9384}
.logic-cat-ded{--disc-color:#155EEF}
.logic-cat-ver{--disc-color:#7A5AF8}
.logic-cat-org{--disc-color:#F79009}
.logic-cat-spf{--disc-color:#12B76A}
.logic-question-visual{
  margin:0 0 16px;
  padding:14px;
  border:1px solid #d8eee9;
  border-radius:18px;
  background:linear-gradient(180deg,#f8fffd,#ffffff);
}
.logic-question-visual svg{
  display:block;
  width:100%;
  max-height:240px;
}
.logic-question-visual text{
  fill:#52607a;
  font:800 13px/1.2 Arial,sans-serif;
}
.logic-question-visual .logic-svg-question{
  fill:#0e5f56;
  font-size:36px;
  font-weight:950;
}
.logic-svg-panel{
  fill:#fff;
  stroke:#d8e8f5;
  stroke-width:2;
}
.logic-svg-shape-fill{
  fill:#dffaf4;
  stroke:#0e9384;
  stroke-width:3;
}
.logic-svg-soft{
  fill:#eef5ff;
  stroke:#155EEF;
  stroke-width:2.5;
}
.logic-svg-dark{
  fill:#07194a;
  stroke:none;
}
.logic-svg-main{
  fill:none;
  stroke:#0e9384;
  stroke-width:4;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.logic-svg-thin,
.logic-svg-measure{
  fill:none;
  stroke:#667397;
  stroke-width:2;
  stroke-linecap:round;
}
.logic-svg-dashed{
  fill:none;
  stroke:#0e9384;
  stroke-width:3;
  stroke-linecap:round;
  stroke-dasharray:7 7;
}
.logic-svg-curve{
  fill:none;
  stroke:#F79009;
  stroke-width:4;
  stroke-linecap:round;
}
.logic-svg-axis{
  stroke:#155EEF;
  stroke-width:3;
  stroke-dasharray:8 7;
}
.logic-svg-ghost{
  fill:#fff7ed;
  stroke:#F79009;
  stroke-width:3;
  stroke-dasharray:7 6;
}
.logic-matrix>rect{
  fill:#fff;
  stroke:#d8e8f5;
  stroke-width:1.6;
  rx:8px;
}
.logic-option-drawings text{
  fill:#07194a;
  font-size:14px;
  font-weight:950;
}
.logic-option-drawings .logic-svg-shape-fill,
.logic-option-drawings .logic-svg-soft{
  stroke-width:2.2;
}
.logic-letter-tiles rect{
  fill:#fff;
  stroke:#d8e8f5;
  stroke-width:2;
}
.logic-letter-tiles text{
  fill:#0e5f56;
  font-size:46px;
  font-weight:950;
}
.logic-net rect,
.logic-net polygon{
  fill:#effdfa;
  stroke:#0e9384;
  stroke-width:2;
}
.logic-net text{
  fill:#07194a;
  font-size:16px;
  font-weight:950;
}
.logic-top-grid rect{
  fill:#effdfa;
  stroke:#0e9384;
  stroke-width:2;
}
.logic-top-grid rect.empty{
  fill:#f8fbff;
  stroke:#d8e8f5;
}
.logic-top-grid text{
  fill:#07194a;
  font-size:22px;
  font-weight:950;
}
.logic-question-card legend .disc-question-number,
.logic-option-letter{
  color:#0e9384;
  border-color:#c7eee8;
  background:#effdfa;
}
.logic-option:has(input:checked){
  border-color:#0e9384;
  background:linear-gradient(180deg,#f5fffd,#ecfdf8);
  box-shadow:0 0 0 4px rgba(14,147,132,.10),0 16px 34px rgba(14,147,132,.10);
}
.logic-option:has(input:checked) .logic-option-letter{
  background:#0e9384;
  color:#fff;
}
.logic-clear-answer{
  margin-top:12px;
  border:0;
  background:transparent;
  color:#667397;
  font-weight:850;
  cursor:pointer;
  padding:8px 2px;
}
.logic-clear-answer:hover{
  color:#0e5f56;
  text-decoration:underline;
}
.logic-clear-answer:disabled{
  opacity:.45;
  cursor:not-allowed;
  text-decoration:none;
}
.logic-answer-list{
  display:grid;
  gap:14px;
}
.logic-answer-row{
  display:grid;
  grid-template-columns:92px 1fr;
  gap:16px;
  align-items:start;
  border:1px solid #e2ecfb;
  background:#fff;
  border-radius:20px;
  padding:16px;
}
.logic-answer-status{
  min-height:42px;
  display:grid;
  place-items:center;
  border-radius:14px;
  font-weight:900;
  font-size:13px;
  text-align:center;
}
.logic-answer-row.is-correct .logic-answer-status{
  background:#ecfdf5;
  color:#047857;
}
.logic-answer-row.is-wrong .logic-answer-status{
  background:#fff7ed;
  color:#b45309;
}
.logic-answer-row.is-unanswered .logic-answer-status{
  background:#fef3f2;
  color:#b42318;
}
.logic-answer-row small{
  display:block;
  color:#667397;
  font-weight:800;
  margin-bottom:6px;
}
.logic-answer-row strong{
  display:block;
  color:#07194a;
  line-height:1.35;
  margin-bottom:10px;
}
.logic-answer-row p{
  margin:6px 0;
  color:#52607a;
  line-height:1.45;
}
.logic-answer-row em{
  display:block;
  margin-top:8px;
  color:#26345f;
  font-style:normal;
  line-height:1.5;
}
.dashboard-logic-card{
  background:linear-gradient(180deg,#fff,#f7fffd);
}
.dashboard-logic-score strong{
  color:#0e5f56;
}
@media(max-width:1100px){
  .logic-skill-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .logic-skill-grid{grid-template-columns:1fr}
  .logic-launch-panel{grid-template-columns:1fr}
  .logic-start-btn{width:100%;min-width:0}
  .logic-timer-panel{align-items:flex-start;flex-direction:column}
  .logic-progress-pill{width:100%}
  .logic-answer-row{grid-template-columns:1fr}
  .logic-answer-status{justify-content:start;padding:0 14px}
}

/* Menu principal V5.3 - navigation regroupee */
.topbar{overflow:visible;gap:24px}
.main-nav{display:flex!important;align-items:center;justify-content:center;gap:8px;flex:1;min-width:0}
.topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-left:auto;min-width:max-content}
.topbar .nav-link,.topbar .nav-dropdown>summary,.topbar .topbar-secondary-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:10px 13px;
  border-radius:12px;
  color:#fff;
  font-size:15px;
  font-weight:600!important;
  letter-spacing:0;
  line-height:1;
  opacity:.9;
  cursor:pointer;
  white-space:nowrap;
  transition:background .18s ease,opacity .18s ease,color .18s ease;
}
.topbar .nav-link:hover,.topbar .nav-dropdown>summary:hover,.topbar .topbar-secondary-link:hover{opacity:1;background:rgba(255,255,255,.09)}
.topbar .nav-link.active,.topbar .nav-dropdown.active>summary{
  opacity:1;
  background:rgba(255,255,255,.14);
  border-bottom:0!important;
  padding-bottom:10px!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);
}
.topbar .nav-dropdown{position:relative;flex:0 0 auto}
.topbar .nav-dropdown>summary{list-style:none;gap:8px;user-select:none}
.topbar .nav-dropdown>summary::-webkit-details-marker{display:none}
.topbar .nav-dropdown>summary:after{
  content:"";
  width:7px;
  height:7px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(45deg) translateY(-2px);
  opacity:.7;
  transition:transform .18s ease;
}
.topbar .nav-dropdown[open]>summary:after{transform:rotate(225deg) translateY(-1px)}
.topbar .nav-menu{
  display:none;
  position:absolute;
  top:calc(100% + 12px);
  left:0;
  z-index:80;
  min-width:238px;
  padding:8px;
  border:1px solid #d9e5f5;
  border-radius:16px;
  background:#fff;
  box-shadow:0 18px 44px rgba(7,25,74,.18);
}
.topbar .nav-menu-right{left:auto;right:0}
.topbar .nav-dropdown[open] .nav-menu,.topbar .nav-dropdown:hover .nav-menu,.topbar .nav-dropdown:focus-within .nav-menu{display:grid;gap:4px}
.topbar .nav-menu a{
  display:flex;
  align-items:center;
  min-height:40px;
  padding:10px 12px!important;
  border-radius:10px;
  border-bottom:0!important;
  color:#172554;
  font-size:14px;
  font-weight:600!important;
  letter-spacing:0;
  opacity:1;
  white-space:nowrap;
}
.topbar .nav-menu a:hover,.topbar .nav-menu a.active{background:#eef4ff;color:#155eef}
.topbar .nav-menu a.nav-danger{color:#b42318}
.topbar .nav-menu a.nav-danger:hover{background:#fff1f3;color:#b42318}
.account-dropdown>summary{background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}
.module-cost-pill{
  display:inline-grid;
  grid-template-columns:auto auto;
  gap:2px 8px;
  align-items:center;
  min-width:132px;
  padding:10px 13px;
  border:1px solid #cfe0ff;
  border-radius:16px;
  background:linear-gradient(180deg,#fff,#f4f8ff);
  color:#172554;
  box-shadow:0 10px 24px rgba(21,94,239,.08);
}
.module-cost-pill small{
  color:#667397;
  font-size:11px;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.module-cost-pill strong{
  color:#155eef;
  font-size:14px;
  font-weight:900!important;
  white-space:nowrap;
}
.module-cost-pill em{
  grid-column:1/-1;
  color:#52607a;
  font-size:12px;
  font-style:normal;
  font-weight:750;
}

@media(max-width:1180px){
  .topbar{padding:0 24px;gap:16px}
  .brand{font-size:24px}
  .main-nav{justify-content:flex-start}
}

@media(max-width:900px){
  .topbar{height:auto;min-height:72px;flex-wrap:wrap;align-items:center;padding:14px 20px;gap:12px}
  .main-nav{order:3;flex:1 0 100%;width:100%;justify-content:flex-start;flex-wrap:wrap;gap:8px}
  .topbar-actions{order:2;margin-left:auto;min-width:0;flex-wrap:wrap}
  .topbar .nav-link,.topbar .nav-dropdown>summary,.topbar .topbar-secondary-link{min-height:38px;padding:9px 11px;font-size:14px}
  .topbar .nav-menu{top:calc(100% + 8px)}
}

@media(max-width:640px){
  .topbar-actions{order:4;width:100%;justify-content:flex-start}
  .topbar .role-badge{display:none}
  .topbar .nav-menu{min-width:min(300px,calc(100vw - 32px))}
  .topbar .nav-menu-right{left:0;right:auto}
}

/* Préparation Entretien IA */
.interview-prep-title{max-width:1080px}
.interview-prep-roadmap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:24px 0}
.interview-prep-roadmap article{position:relative;display:grid;gap:8px;min-height:150px;padding:18px;border:1px solid #dce8fb;border-radius:18px;background:#fff;box-shadow:0 12px 28px rgba(7,25,74,.055)}
.interview-prep-roadmap article:not(:last-child):after{content:"";position:absolute;right:-13px;top:48px;width:12px;height:2px;background:#cfe0ff}
.interview-prep-roadmap span{width:38px;height:38px;display:grid;place-items:center;border-radius:14px;background:#1265ff;color:#fff;font-weight:900}
.interview-prep-roadmap strong{color:#07194a;font-size:18px}
.interview-prep-roadmap p{margin:0;color:#526087;line-height:1.45;font-size:14px}
.interview-prep-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:24px 0}
.interview-prep-choice{display:grid;gap:16px;align-content:start;min-height:310px;border-radius:24px;background:linear-gradient(180deg,#fff,#f8fbff)}
.interview-prep-choice h2{margin:0;color:#07194a;font-size:30px;line-height:1.1}
.interview-prep-choice p{margin:0;color:#526087;line-height:1.6}
.interview-prep-choice-coach{background:linear-gradient(180deg,#fff,#f7fffd)}
.interview-prep-choice-list{display:flex;gap:8px;flex-wrap:wrap;margin:0;padding:0;list-style:none}
.interview-prep-choice-list li{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:999px;background:#eef5ff;color:#1265ff;font-size:12px;font-weight:850}
.interview-prep-cost{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding:14px;border:1px solid #dce8fb;border-radius:16px;background:#fff}
.interview-prep-cost strong{color:#1265ff;font-size:18px}
.interview-prep-cost span{color:#667397;font-weight:750;font-size:13px}
.interview-prep-latest{margin-top:24px;border-radius:24px}
.interview-prep-latest p{color:#526087;line-height:1.6}
.interview-prep-form-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:start;margin-bottom:24px}
.interview-prep-form-card,.interview-prep-side-card,.interview-prep-history{border-radius:24px}
.interview-prep-form textarea{line-height:1.55}
.interview-prep-side-card{display:grid;gap:16px;background:linear-gradient(180deg,#fff,#f8fbff)}
.interview-prep-side-card h2{margin:0;color:#07194a}
.interview-prep-side-card p{margin:0;color:#526087;line-height:1.55}
.interview-prep-side-list{display:grid;gap:10px}
.interview-prep-side-list span{padding:12px 14px;border:1px solid #dce8fb;border-radius:14px;background:#fff;color:#26345f;font-weight:800}
.interview-prep-result{display:grid;gap:22px;margin:26px 0}
.interview-prep-hero-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:start;border-radius:24px;background:linear-gradient(135deg,#fff,#f6faff)}
.interview-prep-hero-card h2{margin:8px 0;color:#07194a;font-size:34px;line-height:1.1}
.interview-prep-hero-card p{margin:0;color:#526087;line-height:1.6}
.interview-prep-meta{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.interview-prep-meta span{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border-radius:999px;background:#eef5ff;color:#1265ff;font-size:13px;font-weight:850}
.interview-prep-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.interview-prep-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.interview-prep-result-grid .card{border-radius:22px}
.interview-prep-result-grid h3{margin:0 0 12px;color:#07194a;font-size:21px;line-height:1.2}
.interview-prep-result-grid h3:not(:first-child){margin-top:22px}
.interview-prep-result-grid h4{margin:16px 0 8px;color:#26345f;font-size:14px;text-transform:uppercase;letter-spacing:.04em}
.interview-prep-result-grid p{color:#526087;line-height:1.62}
.interview-prep-list{display:grid;gap:9px;margin:0;padding:0;list-style:none}
.interview-prep-list li{position:relative;padding-left:18px;color:#34436e;line-height:1.5}
.interview-prep-list li:before{content:"";position:absolute;left:0;top:.58em;width:7px;height:7px;border-radius:50%;background:#1265ff}
.interview-prep-stack{display:grid;gap:12px}
.interview-prep-stack>div{padding:14px;border:1px solid #dce8fb;border-radius:16px;background:#fff}
.interview-prep-stack strong{display:block;color:#07194a;margin-bottom:7px;line-height:1.35}
.interview-prep-stack p{margin:0 0 8px;color:#526087;line-height:1.5}
.interview-prep-stack em{display:block;color:#0e5f56;font-style:normal;font-weight:750;line-height:1.45}
.dashboard-prep-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:24px 0}
.dashboard-prep-card{display:grid;gap:10px;align-content:start;min-height:210px;border-radius:22px;background:linear-gradient(180deg,#fff,#f8fbff)}
.dashboard-prep-card h2{margin:0;color:#07194a;font-size:19px;line-height:1.2}
.dashboard-prep-card strong{display:block;color:#07194a;font-size:19px;line-height:1.25}
.dashboard-prep-card strong small{font-size:.72em;color:#667397}
.dashboard-prep-card p{margin:0;color:#526087;line-height:1.5;font-size:14px}
.dashboard-prep-card .btn{width:max-content}
.dashboard-prep-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto}
.dashboard-prep-next{background:linear-gradient(180deg,#fff,#f7fffd);border-color:#c7eee8}
@media(max-width:1100px){
  .interview-prep-roadmap,.interview-prep-choice-grid,.interview-prep-form-layout,.interview-prep-result-grid,.interview-prep-hero-card{grid-template-columns:1fr}
  .interview-prep-roadmap article:not(:last-child):after{display:none}
  .interview-prep-meta{justify-content:flex-start}
  .dashboard-prep-overview{grid-template-columns:1fr}
}

/* =========================================================
   JOBPACA DESIGN SYSTEM — SOCLE GLOBAL V1
   Cette couche finale harmonise les composants partagés.
   ========================================================= */
:root{
  --jp-navy-950:#07163f;
  --jp-navy-900:#0b1f55;
  --jp-navy-700:#263b68;
  --jp-blue-700:#155eef;
  --jp-blue-600:#1769ef;
  --jp-blue-500:#2e90fa;
  --jp-blue-100:#eaf2ff;
  --jp-blue-50:#f5f8ff;
  --jp-slate-700:#475467;
  --jp-slate-600:#61709a;
  --jp-slate-500:#7a88a8;
  --jp-slate-300:#cdd9eb;
  --jp-slate-200:#e1e9f5;
  --jp-slate-100:#f3f6fb;
  --jp-white:#fff;
  --jp-success-700:#067647;
  --jp-success-100:#dcfae6;
  --jp-warning-700:#b54708;
  --jp-warning-100:#fef0c7;
  --jp-danger-700:#b42318;
  --jp-danger-100:#fee4e2;
  --jp-radius-sm:10px;
  --jp-radius-md:14px;
  --jp-radius-lg:20px;
  --jp-radius-xl:26px;
  --jp-shadow-sm:0 6px 18px rgba(16,36,82,.055);
  --jp-shadow-md:0 14px 34px rgba(16,36,82,.075);
  --jp-shadow-lg:0 22px 54px rgba(16,36,82,.11);
  --jp-focus:0 0 0 4px rgba(46,144,250,.16);
  --jp-transition:160ms ease;
}

html{scroll-behavior:smooth}
body{
  color:var(--jp-navy-900);
  background:
    radial-gradient(circle at 8% 4%,rgba(46,144,250,.07),transparent 24rem),
    linear-gradient(180deg,#f8fbff 0%,#fff 42rem);
  font-family:Inter,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
.page{
  width:min(100%,1500px);
  padding:36px clamp(18px,3.4vw,52px) 52px;
  background:transparent;
}

h1,h2,h3,h4{color:var(--jp-navy-900);text-wrap:balance}
p{line-height:1.62}
.page-title{margin-bottom:26px}
.page-title>a:first-child{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  color:var(--jp-blue-700);
  font-size:.9rem;
  font-weight:700;
}
.page-title h1,.dashboard-head h1{
  margin:8px 0 10px;
  color:var(--jp-navy-950);
  font-size:clamp(2.15rem,4vw,3.35rem);
  line-height:1.06;
  letter-spacing:-.045em;
}
.page-title p,.dashboard-head p{
  max-width:900px;
  margin:0;
  color:var(--jp-slate-600);
  font-size:1.03rem;
  line-height:1.65;
}

.card,.soft-card{
  border:1px solid var(--jp-slate-200);
  border-radius:var(--jp-radius-lg);
  background:rgba(255,255,255,.96);
  box-shadow:var(--jp-shadow-sm);
}
.card{padding:clamp(20px,2.2vw,28px)}
.card:hover{border-color:#d7e2f2}
.section-head{margin-bottom:22px}
.section-head h2{margin:0 0 7px;color:var(--jp-navy-900);font-size:1.45rem;line-height:1.2}
.section-head p{margin:0;color:var(--jp-slate-600);line-height:1.58}

.btn{
  min-height:44px;
  padding:11px 19px;
  border:1px solid transparent;
  border-radius:var(--jp-radius-md);
  font:inherit;
  font-size:.94rem;
  font-weight:700!important;
  line-height:1.15;
  letter-spacing:-.01em;
  text-decoration:none;
  box-shadow:none;
  transition:transform var(--jp-transition),box-shadow var(--jp-transition),background var(--jp-transition),border-color var(--jp-transition),color var(--jp-transition);
}
.btn.small{min-height:40px;padding:9px 16px;border-radius:12px;font-size:.9rem}
.btn-primary{
  border-color:var(--jp-blue-700);
  background:linear-gradient(135deg,var(--jp-blue-700),var(--jp-blue-500));
  color:#fff;
  box-shadow:0 9px 20px rgba(21,94,239,.18);
}
.btn-primary:hover{transform:translateY(-1px);box-shadow:0 13px 27px rgba(21,94,239,.24)}
.btn-outline{
  border-color:#b8d3ff;
  background:#fff;
  color:var(--jp-blue-700);
}
.btn-outline:hover{transform:translateY(-1px);border-color:var(--jp-blue-700);background:var(--jp-blue-50)}
.btn.danger,.btn-danger-outline{
  border-color:#f3b8b3;
  background:#fff;
  color:var(--jp-danger-700);
}
.btn.danger:hover,.btn-danger-outline:hover{border-color:#f97066;background:#fff4f3}
.btn:disabled{transform:none!important;opacity:.48;box-shadow:none;cursor:not-allowed}
.btn:focus-visible,a:focus-visible,button:focus-visible,summary:focus-visible{
  outline:2px solid var(--jp-blue-500);
  outline-offset:3px;
}

.form{gap:18px}
.form label,.contact-form label{
  color:var(--jp-navy-700);
  font-size:.92rem;
  font-weight:700;
}
.form input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=file]),
.form textarea,.form select,
input.role-select,
.admin-users-search input{
  min-height:46px;
  border:1px solid var(--jp-slate-300);
  border-radius:12px;
  background:#fff;
  color:var(--jp-navy-900);
  font:inherit;
  transition:border-color var(--jp-transition),box-shadow var(--jp-transition),background var(--jp-transition);
}
.form textarea{min-height:112px;line-height:1.55}
.form input:hover,.form textarea:hover,.form select:hover{border-color:#aebfda}
.form input:focus,.form textarea:focus,.form select:focus,
input.role-select:focus,.admin-users-search input:focus{
  outline:none;
  border-color:var(--jp-blue-500);
  box-shadow:var(--jp-focus);
}
.form input::placeholder,.form textarea::placeholder{color:#98a5bb}
.form small,.mini-muted{color:var(--jp-slate-600);line-height:1.45}

.alert{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:15px 17px;
  border-radius:var(--jp-radius-md);
  font-weight:650;
  line-height:1.5;
  box-shadow:var(--jp-shadow-sm);
}
.alert.success{border-color:#abefc6;background:#ecfdf3;color:var(--jp-success-700)}
.alert.error{border-color:#fecdca;background:#fef3f2;color:var(--jp-danger-700)}
.alert.info{border-color:#b2ddff;background:#eff8ff;color:#175cd3}

.table-responsive,.admin-users-table-wrap{
  border:1px solid var(--jp-slate-200);
  border-radius:16px;
  background:#fff;
}
.table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
}
.table th{
  padding:13px 15px;
  border-bottom:1px solid var(--jp-slate-200);
  background:#f7f9fc;
  color:var(--jp-slate-700);
  font-size:.73rem;
  font-weight:800!important;
  letter-spacing:.045em;
  text-transform:uppercase;
}
.table td{
  padding:14px 15px;
  border-bottom:1px solid #e8eef7;
  color:var(--jp-navy-700);
  vertical-align:middle;
}
.table tbody tr:last-child td{border-bottom:0}
.table tbody tr:hover td{background:#fafcff}

.pill,.tagline{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:5px 10px;
  border-radius:999px;
  background:var(--jp-blue-100);
  color:var(--jp-blue-700);
  font-size:.76rem;
  font-weight:750!important;
  line-height:1;
}
.pill.green{background:var(--jp-success-100);color:var(--jp-success-700)}
.pill.orange{background:var(--jp-warning-100);color:var(--jp-warning-700)}

.kpis{gap:18px}
.kpis .card{
  min-height:124px;
  border-radius:var(--jp-radius-lg);
  box-shadow:var(--jp-shadow-sm);
}
.kpis .card strong{color:var(--jp-navy-900);letter-spacing:-.035em}

/* Tableau de pilotage super-admin */
.admin-pilot{display:grid;gap:22px}.admin-pilot-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px}.admin-pilot-head h1{margin:8px 0 6px;font-size:clamp(2.3rem,5vw,3.7rem);color:#07194a;letter-spacing:-.045em}.admin-pilot-head p,.admin-panel-head p{margin:0;color:#64729a}.admin-pilot-actions{display:flex;gap:10px;flex-wrap:wrap}
.admin-pilot-filters{display:grid;grid-template-columns:repeat(4,minmax(135px,1fr)) auto auto;gap:12px;align-items:end;padding:18px}.admin-pilot-filters label{display:grid;gap:6px;color:#34436e;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.admin-pilot-filters select,.admin-status-form select{min-height:42px;padding:0 11px;border:1px solid #cad8ef;border-radius:10px;background:#fff;color:#172554;font:inherit}
.admin-pilot-kpis{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.admin-pilot-kpis article{min-width:0;padding:19px;border:1px solid #dce8fb;border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(12,31,74,.055)}.admin-pilot-kpis span,.admin-pilot-kpis small{display:block;color:#64729a;font-size:.78rem}.admin-pilot-kpis strong{display:block;margin:7px 0 4px;color:#07194a;font-size:2rem;letter-spacing:-.04em}.admin-pilot-kpis small b{color:#079455}.admin-pilot-kpis article.attention{border-color:#fedf89;background:#fffaeb}.admin-pilot-kpis article.danger{border-color:#fecdca;background:#fff4f2}.admin-pilot-kpis article.danger strong{color:#b42318}
.admin-pilot-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.admin-pilot-panel{padding:22px}.admin-panel-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;margin-bottom:18px}.admin-panel-head h2{margin:0 0 5px;color:#07194a}.admin-panel-head a{font-size:.85rem;font-weight:750}
.admin-module-bars{display:grid;gap:15px}.admin-module-bars>div{display:grid;grid-template-columns:180px 1fr 36px;align-items:center;gap:12px}.admin-module-bars span{color:#34436e;font-size:.88rem}.admin-module-bars>div>div{height:10px;overflow:hidden;border-radius:999px;background:#e8eff9}.admin-module-bars i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#1265ff,#54a0ff)}.admin-module-bars strong{text-align:right;color:#07194a}
.admin-compact-list{display:grid}.admin-compact-list>a{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:11px;padding:11px 0;border-bottom:1px solid #e8eef7;color:#172554}.admin-compact-list>a:last-child{border-bottom:0}.admin-compact-list strong,.admin-compact-list small{display:block}.admin-compact-list small{margin-top:3px;color:#7180a5;font-size:.76rem}.admin-compact-list time{color:#64729a;font-size:.78rem}.presence-dot{width:9px;height:9px;border-radius:50%;background:#b7c3d5}.presence-dot.online{background:#12b76a;box-shadow:0 0 0 4px #d1fadf}
.admin-status-form{display:flex;gap:7px;align-items:center}.admin-status-form select{min-height:36px}.admin-status-form .btn{min-height:36px;padding:7px 10px!important}.admin-alert-list,.admin-audit-list{display:grid;gap:9px}.admin-alert-list>div{padding:13px;border:1px solid #fecdca;border-radius:12px;background:#fff4f2}.admin-alert-list strong,.admin-alert-list small,.admin-audit-list span,.admin-audit-list strong,.admin-audit-list small{display:block}.admin-alert-list small{margin-top:5px;color:#8a4238;line-height:1.4;word-break:break-word}.admin-ok-state{padding:18px;border-radius:14px;background:#ecfdf3;color:#067647;font-weight:750}.admin-audit-list>div{padding:11px 0;border-bottom:1px solid #e8eef7}.admin-audit-list span{color:#7180a5;font-size:.72rem}.admin-audit-list strong{margin:3px 0;color:#172554;text-transform:capitalize}.admin-audit-list small{color:#64729a}.admin-mini-table{display:grid;gap:5px}.admin-mini-table>div{display:flex;justify-content:space-between;gap:15px;padding:9px 11px;border-radius:10px;background:#f7f9fc;font-size:.82rem}
@media(max-width:1200px){.admin-pilot-kpis{grid-template-columns:repeat(3,1fr)}.admin-pilot-filters{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.admin-pilot-head,.admin-pilot-actions{align-items:stretch;flex-direction:column}.admin-pilot-grid,.admin-pilot-kpis,.admin-pilot-filters{grid-template-columns:1fr}.admin-module-bars>div{grid-template-columns:120px 1fr 30px}.admin-pilot-actions .btn{width:100%}}

/* Rapport entretien exploitable */
.report-operational-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.report-evolution-card,.report-priorities-card{margin:0!important}.report-delta{display:inline-flex;padding:8px 11px;border-radius:999px;font-size:.82rem;font-weight:850}.report-delta.positive{background:#dcfae6;color:#067647}.report-delta.negative{background:#fee4e2;color:#b42318}.report-first-score{display:flex;align-items:center;gap:18px;padding:18px;border-radius:16px;background:#f5f9ff}.report-first-score strong{color:#1265ff;font-size:2rem}.report-first-score p{margin:0;color:#526087}.report-score-comparison{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center}.report-score-comparison>div{padding:15px;border:1px solid #dce8fb;border-radius:15px;background:#f8fbff;text-align:center}.report-score-comparison small,.report-score-comparison strong{display:block}.report-score-comparison small{color:#64729a}.report-score-comparison strong{margin-top:5px;color:#07194a;font-size:1.65rem}.report-score-comparison>span{color:#1265ff;font-size:1.5rem}.report-history-bars{display:flex;align-items:flex-end;gap:10px;height:95px;margin-top:20px;padding:0 8px;border-bottom:1px solid #dce8fb}.report-history-bars>a,.report-history-bars>span{flex:1;display:grid;grid-template-rows:1fr auto;align-items:end;gap:4px;height:100%;text-align:center}.report-history-bars i{display:block;width:100%;height:var(--history-score);min-height:6px;border-radius:7px 7px 0 0;background:#a8c8fa}.report-history-bars>span i{background:linear-gradient(180deg,#54a0ff,#1265ff)}.report-history-bars small{color:#64729a;font-size:.72rem}
.report-top-priorities{display:grid;gap:11px}.report-top-priorities>div{display:grid;grid-template-columns:38px 1fr;gap:12px;align-items:start;padding:13px;border:1px solid #e1eaf7;border-radius:14px}.report-top-priorities b{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#1265ff;color:#fff}.report-top-priorities strong,.report-top-priorities small{display:block}.report-top-priorities strong{color:#172554}.report-top-priorities small{margin-top:4px;color:#64729a;line-height:1.4}
.report-rework-list{display:grid;gap:10px}.report-rework-list details{border:1px solid #dce8fb;border-radius:15px;background:#fff;overflow:hidden}.report-rework-list summary{display:grid;grid-template-columns:34px 1fr auto;gap:11px;align-items:center;padding:14px;cursor:pointer;list-style:none}.report-rework-list summary::-webkit-details-marker{display:none}.report-rework-list summary span{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#eef6ff;color:#1265ff;font-weight:850}.report-rework-list summary strong{color:#172554}.report-rework-list summary em{font-style:normal;color:#b54708;font-weight:800}.report-rework-list details>div{padding:0 17px 17px;color:#526087;line-height:1.6}.report-better-answer{padding:14px;border-radius:12px;background:#ecfdf3;color:#166534!important}.report-rework-list details small{display:block;padding:11px;border-left:3px solid #1265ff;background:#f5f9ff}
.report-seven-days{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}.report-seven-days article{padding:14px;border:1px solid #dce8fb;border-radius:15px;background:#fff}.report-seven-days article>span{display:inline-flex;padding:5px 8px;border-radius:999px;background:#eef6ff;color:#1265ff;font-size:.7rem;font-weight:850;text-transform:uppercase}.report-seven-days strong{display:block;margin:10px 0 6px;color:#07194a;font-size:.9rem}.report-seven-days p{margin:0;color:#64729a;font-size:.78rem;line-height:1.5}.report-seven-days-cta{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:18px;padding:18px;border-radius:16px;background:linear-gradient(135deg,#07194a,#1265ff);color:#fff}.report-seven-days-cta strong{font-size:1.05rem}.report-seven-days-cta p{margin:4px 0 0;color:#dbeafe}
@media(max-width:1100px){.report-seven-days{grid-template-columns:repeat(4,1fr)}}@media(max-width:760px){.report-operational-grid,.report-seven-days{grid-template-columns:1fr}.report-seven-days-cta{align-items:stretch;flex-direction:column}.report-rework-list summary{grid-template-columns:30px 1fr}.report-rework-list summary em{grid-column:2}.report-targeted-btn{width:100%}}

.targeted-training-alert{border-left:5px solid #1265ff}.targeted-focus-box{margin-top:12px;padding:13px;border:1px solid #b9d5ff;border-radius:13px;background:#eef6ff}.targeted-focus-box strong{display:block;color:#174ea6}.targeted-focus-box p{margin:5px 0 0;color:#526087;font-size:.86rem;line-height:1.5}

.hidden{display:none!important}

/* Traitements IA longs */
body.ai-processing-open{overflow:hidden}.ai-processing-overlay{position:fixed;inset:0;z-index:12000;display:grid;place-items:center;padding:20px;background:rgba(3,15,50,.72);backdrop-filter:blur(9px);animation:ai-overlay-in .2s ease-out}.ai-processing-card{width:min(520px,100%);padding:34px;border:1px solid rgba(255,255,255,.7);border-radius:26px;background:#fff;text-align:center;box-shadow:0 28px 80px rgba(2,16,50,.35)}.ai-processing-brand{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border-radius:999px;background:#eef6ff;color:#1265ff;font-size:.76rem;font-weight:850;text-transform:uppercase;letter-spacing:.055em}.ai-processing-card h2{margin:19px 0 9px;color:#07194a;font-size:clamp(1.55rem,4vw,2.1rem);letter-spacing:-.03em}.ai-processing-card p{min-height:50px;margin:0;color:#526087;line-height:1.55}.ai-processing-card small{display:block;margin-top:13px;color:#7180a5;line-height:1.5}.ai-processing-orbit{position:relative;width:82px;height:82px;margin:23px auto 12px;display:grid;place-items:center;border-radius:50%;background:#eef6ff;color:#1265ff}.ai-processing-orbit:before{content:"";position:absolute;inset:-7px;border:3px solid #d6e7ff;border-top-color:#1265ff;border-right-color:#54a0ff;border-radius:50%;animation:ai-orbit 1.05s linear infinite}.ai-processing-orbit i{position:absolute;top:-9px;width:13px;height:13px;border:3px solid #fff;border-radius:50%;background:#1265ff;box-shadow:0 3px 9px rgba(18,101,255,.35)}.ai-processing-orbit b{font-size:1.15rem}.ai-processing-progress{height:10px;margin-top:23px;overflow:hidden;border-radius:999px;background:#e5edf8}.ai-processing-progress span{display:block;width:8%;height:100%;border-radius:999px;background:linear-gradient(90deg,#1265ff,#54a0ff);transition:width 2.2s cubic-bezier(.2,.8,.2,1);position:relative}.ai-processing-progress span:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.65),transparent);animation:ai-shimmer 1.4s infinite}
@keyframes ai-orbit{to{transform:rotate(360deg)}}@keyframes ai-overlay-in{from{opacity:0;transform:scale(.985)}to{opacity:1;transform:scale(1)}}@keyframes ai-shimmer{from{transform:translateX(-100%)}to{transform:translateX(100%)}}@media(prefers-reduced-motion:reduce){.ai-processing-overlay,.ai-processing-orbit:before,.ai-processing-progress span:after{animation:none}.ai-processing-progress span{transition:none}}@media(max-width:600px){.ai-processing-card{padding:28px 20px}.ai-processing-card p{min-height:72px}}
.legal-page{max-width:980px;margin:0 auto;line-height:1.7}.legal-page h1{font-size:clamp(2.2rem,5vw,3.5rem);margin:12px 0;color:#07194a}.legal-page h2{margin:28px 0 7px;color:#10245d}.legal-page p,.legal-page li{color:#526087}.legal-updated{font-size:.88rem}.legal-notice{padding:16px;border:1px solid #f4c58d;border-radius:14px;background:#fff7ed!important;color:#9a4c08!important}.privacy-controls{margin-top:24px}.delete-account-panel{margin-top:14px;padding:15px;border:1px solid #fecaca;border-radius:14px;background:#fffafa}.delete-account-panel summary{cursor:pointer;color:#b42318;font-weight:750}.delete-account-panel form{margin-top:16px}
.legal-brand-statement{display:flex;align-items:center;gap:16px;padding:20px;border:1px solid #cfe0fb;border-radius:18px;background:linear-gradient(135deg,#f4f8ff,#fff)!important;color:#253967!important}
.legal-brand-statement img{flex:0 0 48px}
.legal-brand-statement strong{color:#071947;font-size:1.05rem}
.legal-identity{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:16px 0;border:1px solid #dce7f6;border-radius:18px;overflow:hidden;background:#fff}
.legal-identity>div{display:grid;grid-template-columns:minmax(120px,.7fr) minmax(0,1.3fr);gap:14px;padding:14px 16px;border-bottom:1px solid #e7eef8}
.legal-identity>div:last-child{border-bottom:0}
.legal-identity>div:nth-child(odd){border-right:1px solid #e7eef8}
.legal-identity dt{color:#68779a;font-size:.78rem;font-weight:750;text-transform:uppercase;letter-spacing:.035em}
.legal-identity dd{margin:0;color:#172b60;font-weight:650;overflow-wrap:anywhere}
.legal-contact-list{padding-left:20px}
.legal-contact-list li{margin:6px 0}
@media(max-width:700px){.legal-brand-statement{align-items:flex-start}.legal-identity{grid-template-columns:1fr}.legal-identity>div{grid-template-columns:1fr}.legal-identity>div:nth-child(odd){border-right:0}}

/* Mentions légales — présentation institutionnelle */
.legal-page-v2{max-width:1240px;padding:0;border:0;background:transparent;box-shadow:none}
.legal-page-v2:hover{box-shadow:none}
.legal-hero-v2{position:relative;overflow:hidden;padding:36px 42px 40px;border-radius:28px;background:linear-gradient(125deg,#06163e 0%,#0a2b6c 56%,#155eef 130%);color:#fff;box-shadow:0 24px 58px rgba(7,25,71,.18)}
.legal-hero-v2:before{content:"";position:absolute;right:-95px;top:-150px;width:390px;height:390px;border-radius:50%;background:radial-gradient(circle,rgba(92,166,255,.27),rgba(92,166,255,0) 68%)}
.legal-hero-v2:after{content:"";position:absolute;right:54px;bottom:30px;width:125px;height:125px;background-image:radial-gradient(rgba(255,255,255,.3) 1.4px,transparent 1.4px);background-size:14px 14px;opacity:.5}
.legal-hero-brand,.legal-hero-copy,.legal-hero-meta{position:relative;z-index:1}
.legal-hero-brand{display:flex;align-items:center;justify-content:space-between;gap:20px}
.legal-hero-brand img{width:166px}
.legal-hero-brand>span{padding:7px 11px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(255,255,255,.09);color:#d8e8ff;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.legal-hero-copy{max-width:790px;margin-top:48px}
.legal-eyebrow{display:inline-flex;align-items:center;gap:9px;color:#9dccff;font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em}
.legal-eyebrow:before{content:"";width:24px;height:2px;border-radius:99px;background:#66acff}
.legal-hero-v2 h1{margin:12px 0 12px;color:#fff;font-size:clamp(2.7rem,5vw,4.5rem);line-height:1;letter-spacing:-.055em}
.legal-hero-copy p{max-width:700px;margin:0;color:#d4e3fa;font-size:1.05rem;line-height:1.7}
.legal-hero-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:760px;margin-top:34px;border:1px solid rgba(255,255,255,.16);border-radius:16px;background:rgba(255,255,255,.08);backdrop-filter:blur(8px)}
.legal-hero-meta>span{padding:14px 18px;border-left:1px solid rgba(255,255,255,.13)}
.legal-hero-meta>span:first-child{border-left:0}
.legal-hero-meta small,.legal-hero-meta strong{display:block}
.legal-hero-meta small{color:#a9c7ee;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em}
.legal-hero-meta strong{margin-top:4px;color:#fff;font-size:.92rem}
.legal-brand-banner{display:grid;grid-template-columns:54px minmax(0,1fr);gap:18px;align-items:center;margin:22px 0;padding:22px 25px;border:1px solid #cfdef5;border-radius:20px;background:linear-gradient(135deg,#f2f7ff,#fff);box-shadow:0 10px 28px rgba(7,25,71,.055)}
.legal-brand-banner img{width:54px;height:54px}
.legal-brand-banner span{color:#155eef;font-size:.69rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}
.legal-brand-banner h2{margin:3px 0 3px;color:#071947;font-size:1.25rem}
.legal-brand-banner p{margin:0;color:#65749a;font-size:.9rem;line-height:1.5}
.legal-layout-v2{display:grid;grid-template-columns:250px minmax(0,1fr);gap:22px;align-items:start}
.legal-sidebar{position:sticky;top:96px;display:grid;gap:14px}
.legal-sidebar-card,.legal-sidebar-help{padding:20px;border:1px solid #dce7f6;border-radius:20px;background:#fff;box-shadow:0 10px 28px rgba(7,25,71,.05)}
.legal-sidebar-title{display:block;margin-bottom:12px;color:#071947;font-size:.75rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}
.legal-sidebar nav{display:grid}
.legal-sidebar nav a{display:grid;grid-template-columns:25px minmax(0,1fr);gap:7px;align-items:center;padding:9px 7px;border-top:1px solid #eef2f8;color:#526087;font-size:.81rem;line-height:1.25}
.legal-sidebar nav a:first-child{border-top:0}
.legal-sidebar nav a:hover{color:#155eef;background:#f5f8ff}
.legal-sidebar nav a span{color:#9ab0d4;font-size:.65rem;font-weight:800}
.legal-sidebar-help{background:linear-gradient(145deg,#071947,#0b347f);color:#fff}
.legal-sidebar-help span,.legal-sidebar-help strong{display:block}
.legal-sidebar-help span{color:#9fc9ff;font-size:.73rem}
.legal-sidebar-help strong{margin:4px 0 14px;line-height:1.35}
.legal-sidebar-help .btn{width:100%;border-color:rgba(255,255,255,.42);background:rgba(255,255,255,.1);color:#fff}
.legal-content-v2{display:grid;gap:16px}
.legal-section-v2{scroll-margin-top:95px;padding:28px 30px;border:1px solid #dce7f6;border-radius:22px;background:#fff;box-shadow:0 10px 28px rgba(7,25,71,.045)}
.legal-section-v2>header{display:flex;align-items:center;gap:14px;margin-bottom:17px}
.legal-section-v2>header>span{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:13px;background:#eaf2ff;color:#155eef;font-size:.76rem;font-weight:850}
.legal-section-v2>header small{display:block;color:#7381a3;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.075em}
.legal-section-v2>header h2{margin:2px 0 0;color:#0d2158;font-size:1.35rem;line-height:1.2}
.legal-section-v2>p{margin:11px 0;color:#53638b;line-height:1.75}
.legal-section-v2>p strong{color:#172b60}
.legal-company-card{overflow:hidden;border:1px solid #dde7f5;border-radius:18px;background:#fafcff}
.legal-company-name{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;border-bottom:1px solid #e3ebf7;background:#fff}
.legal-company-name img{width:158px}
.legal-company-name span{padding:7px 11px;border-radius:999px;background:#eef4ff;color:#155eef;font-size:.72rem;font-weight:800}
.legal-identity-v2{display:grid;grid-template-columns:1fr 1fr;margin:0}
.legal-identity-v2>div{min-width:0;padding:15px 18px;border-right:1px solid #e4ecf7;border-bottom:1px solid #e4ecf7}
.legal-identity-v2>div:nth-child(even){border-right:0}
.legal-identity-v2>div.wide{grid-column:1/-1;border-right:0}
.legal-identity-v2>div:last-child{border-bottom:0}
.legal-identity-v2 dt{color:#7582a1;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.055em}
.legal-identity-v2 dd{margin:5px 0 0;color:#172b60;font-weight:650;line-height:1.5;overflow-wrap:anywhere}
.legal-contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.legal-contact-grid>a{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;padding:15px;border:1px solid #dfe8f5;border-radius:15px;background:#f8fbff;color:#172b60}
.legal-contact-grid>a:hover{border-color:#a9c8fa;background:#f3f7ff}
.legal-contact-grid>a>span{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#e8f1ff;color:#155eef;font-weight:850}
.legal-contact-grid small,.legal-contact-grid strong{display:block}
.legal-contact-grid small{color:#7a87a5;font-size:.68rem}
.legal-contact-grid strong{margin-top:2px;font-size:.79rem;overflow-wrap:anywhere}
.legal-pending-note,.legal-ai-principle{display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px;padding:17px;border-radius:15px}
.legal-pending-note{border:1px solid #f4c58d;background:#fff8ee}
.legal-pending-note>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#f79009;color:#fff;font-weight:900}
.legal-pending-note strong{color:#8a4508}
.legal-pending-note p{margin:3px 0 0;color:#9a5a20;line-height:1.55}
.legal-host-card{overflow:hidden;border:1px solid #d9e5f5;border-radius:18px;background:#fafcff}
.legal-host-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:18px 20px;border-bottom:1px solid #e2eaf6;background:#fff}
.legal-host-wordmark{display:grid;place-items:center;min-width:76px;height:44px;padding:0 12px;border-radius:12px;background:linear-gradient(135deg,#071947,#155eef);color:#fff;font-size:1rem;font-weight:900;letter-spacing:.04em}
.legal-host-head small,.legal-host-head strong{display:block}
.legal-host-head small{color:#7482a2;font-size:.7rem}
.legal-host-head strong{margin-top:2px;color:#10245d;font-size:1.05rem}
.legal-host-head>a{padding:8px 11px;border:1px solid #c9daf5;border-radius:10px;background:#f5f8ff;color:#155eef;font-size:.78rem;font-weight:750}
.legal-host-details{display:grid;grid-template-columns:1fr 1fr;margin:0}
.legal-host-details>div{min-width:0;padding:14px 17px;border-right:1px solid #e3ebf6;border-bottom:1px solid #e3ebf6}
.legal-host-details>div:nth-child(odd){border-right:0}
.legal-host-details>div.wide{grid-column:1/-1;border-right:0}
.legal-host-details>div:nth-last-child(-n+2){border-bottom:0}
.legal-host-details dt{color:#7582a1;font-size:.67rem;font-weight:800;text-transform:uppercase;letter-spacing:.055em}
.legal-host-details dd{margin:4px 0 0;color:#172b60;font-weight:650;line-height:1.45;overflow-wrap:anywhere}
.legal-ai-principle{margin:16px 0;border:1px solid #c9dcfa;background:#f3f7ff}
.legal-ai-principle:before{content:"IA";display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#155eef;color:#fff;font-size:.72rem;font-weight:850}
.legal-ai-principle strong{color:#10245d}
.legal-ai-principle p{grid-column:2;margin:3px 0 0;color:#53658f;line-height:1.6}
.legal-inline-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:17px}

@media(max-width:960px){
  .legal-layout-v2{grid-template-columns:1fr}
  .legal-sidebar{position:static}
  .legal-sidebar-card nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}
  .legal-sidebar-help{display:grid;grid-template-columns:1fr auto;align-items:center}
  .legal-sidebar-help span,.legal-sidebar-help strong{grid-column:1}
  .legal-sidebar-help .btn{grid-column:2;grid-row:1/3;width:auto}
}
@media(max-width:700px){
  .legal-hero-v2{padding:26px 20px 28px;border-radius:22px}
  .legal-hero-brand{align-items:flex-start;flex-direction:column}
  .legal-hero-copy{margin-top:34px}
  .legal-hero-meta{grid-template-columns:1fr}
  .legal-hero-meta>span{border-left:0;border-top:1px solid rgba(255,255,255,.13)}
  .legal-hero-meta>span:first-child{border-top:0}
  .legal-brand-banner{grid-template-columns:44px minmax(0,1fr);padding:18px}
  .legal-brand-banner img{width:44px;height:44px}
  .legal-sidebar-card nav{grid-template-columns:1fr}
  .legal-sidebar-help{display:block}
  .legal-sidebar-help .btn{width:100%;margin-top:14px}
  .legal-section-v2{padding:22px 17px;border-radius:19px}
  .legal-section-v2>header{align-items:flex-start}
  .legal-company-name{align-items:flex-start;flex-direction:column}
  .legal-identity-v2{grid-template-columns:1fr}
  .legal-identity-v2>div,.legal-identity-v2>div:nth-child(even){border-right:0}
  .legal-contact-grid{grid-template-columns:1fr}
  .legal-host-head{grid-template-columns:auto minmax(0,1fr)}
  .legal-host-head>a{grid-column:1/-1;text-align:center}
  .legal-host-details{grid-template-columns:1fr}
  .legal-host-details>div,.legal-host-details>div:nth-child(odd){border-right:0}
  .legal-host-details>div:nth-last-child(2){border-bottom:1px solid #e3ebf6}
  .legal-inline-actions{flex-direction:column}
  .legal-inline-actions .btn{width:100%}
}

/* Accueil public — visite visuelle et FAQ avant inscription */
.guest-product-tour,.guest-faq{padding:34px;border:1px solid #d9e6f7;border-radius:28px;background:#fff;box-shadow:0 18px 48px rgba(7,25,71,.075)}
.guest-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:24px}
.guest-section-heading>div{max-width:790px}
.guest-section-heading h2,.guest-faq h2{margin:10px 0;color:#071947;font-size:clamp(2rem,3.5vw,3.15rem);line-height:1.08;letter-spacing:-.045em}
.guest-section-heading p,.guest-faq-intro>p{margin:0;color:#637297;line-height:1.65}
.guest-demo-badge{flex:0 0 auto;padding:8px 12px;border:1px solid #cbdcf7;border-radius:999px;background:#f4f8ff;color:#4770ad;font-size:.71rem;font-weight:800}
.guest-tour-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-bottom:18px;padding:7px;border:1px solid #dce7f6;border-radius:18px;background:#f5f8fd}
.guest-tour-tabs button{display:grid;grid-template-columns:36px minmax(0,1fr);gap:9px;align-items:center;min-width:0;padding:12px;border:1px solid transparent;border-radius:13px;background:transparent;color:#56668c;text-align:left;cursor:pointer;transition:.18s}
.guest-tour-tabs button:hover{background:#fff;color:#155eef}
.guest-tour-tabs button[aria-selected="true"]{border-color:#c7daf8;background:#fff;color:#155eef;box-shadow:0 8px 20px rgba(7,25,71,.08)}
.guest-tour-tabs svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.guest-tour-tabs strong,.guest-tour-tabs small{display:block;overflow:hidden;text-overflow:ellipsis}
.guest-tour-tabs strong{font-size:.83rem;white-space:nowrap}
.guest-tour-tabs small{margin-top:2px;color:#7b88a7;font-size:.65rem;white-space:nowrap}
.guest-tour-panel{display:grid;grid-template-columns:minmax(270px,.7fr) minmax(0,1.3fr);gap:28px;align-items:center;padding:28px;border-radius:23px;background:linear-gradient(135deg,#f6f9ff,#eef5ff);animation:guestPanelIn .24s ease}
.guest-tour-panel[hidden]{display:none}
@keyframes guestPanelIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
.guest-tour-copy{padding:3px}
.guest-tour-step{color:#155eef;font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}
.guest-tour-copy h3{margin:10px 0 12px;color:#0b2057;font-size:clamp(1.55rem,2.5vw,2.2rem);line-height:1.12}
.guest-tour-copy p{margin:0;color:#607098;line-height:1.7}
.guest-tour-copy ul{display:grid;gap:8px;margin:18px 0;padding:0;list-style:none}
.guest-tour-copy li{position:relative;padding-left:24px;color:#354974;font-size:.9rem}
.guest-tour-copy li:before{content:"✓";position:absolute;left:0;top:-1px;color:#12a56c;font-weight:900}
.guest-tour-copy>a{display:inline-flex;margin-top:3px;color:#155eef;font-size:.89rem;font-weight:800}
.guest-screen{min-width:0;overflow:hidden;border:1px solid #cfdcf0;border-radius:17px;background:#fff;box-shadow:0 22px 48px rgba(7,25,71,.15)}
.guest-screen-bar{display:grid;grid-template-columns:8px 8px 8px minmax(0,1fr) auto;gap:6px;align-items:center;min-height:39px;padding:0 13px;border-bottom:1px solid #e4ebf5;background:#f7f9fc}
.guest-screen-bar>span{width:8px;height:8px;border-radius:50%;background:#ff7d7d}.guest-screen-bar>span:nth-child(2){background:#ffc75f}.guest-screen-bar>span:nth-child(3){background:#5ed59a}
.guest-screen-bar strong{margin-left:7px;color:#2b3e68;font-size:.69rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.guest-screen-bar em{padding:4px 7px;border-radius:999px;background:#eaf2ff;color:#155eef;font-size:.56rem;font-style:normal;font-weight:800}
.guest-screen-bar em.live{background:#e8f8ef;color:#07805f}
.guest-cv-screen{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(180px,.9fr);gap:13px;padding:15px;background:#eef3fa}
.guest-cv-document{min-width:0;padding:17px;border-radius:9px;background:#fff;box-shadow:0 7px 18px rgba(7,25,71,.08)}
.guest-cv-head{display:flex;align-items:center;gap:9px;padding-bottom:12px;border-bottom:2px solid #155eef}
.guest-cv-head i{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#155eef;color:#fff;font-size:.7rem;font-style:normal;font-weight:850}
.guest-cv-head strong,.guest-cv-head small{display:block}.guest-cv-head strong{color:#10245d;font-size:.78rem}.guest-cv-head small{color:#7280a0;font-size:.59rem}
.guest-fake-line{height:5px;width:76%;margin-top:8px;border-radius:99px;background:#dfe6f1}.guest-fake-line.wide{width:100%;margin-top:14px}.guest-fake-line.short{width:48%}
.guest-cv-document h4{margin:14px 0 4px;color:#155eef;font-size:.55rem;letter-spacing:.07em}
.guest-cv-tags{display:flex;gap:4px;flex-wrap:wrap}.guest-cv-tags span{padding:4px 6px;border-radius:5px;background:#eaf2ff;color:#37629f;font-size:.5rem}
.guest-analysis-card{align-self:start;padding:16px;border:1px solid #dce7f6;border-radius:13px;background:#fff}
.guest-analysis-score{display:flex;align-items:baseline;color:#07805f}.guest-analysis-score span{font-size:2rem;font-weight:850}.guest-analysis-score small{font-size:.7rem}
.guest-analysis-card>strong{display:block;color:#10245d;font-size:.78rem}.guest-analysis-card>p{margin:4px 0 12px;color:#7180a2;font-size:.62rem;line-height:1.4}
.guest-mini-check{display:flex;gap:6px;align-items:flex-start;margin-top:7px;padding:7px;border-radius:8px;background:#edf9f2;color:#276049;font-size:.56rem;font-weight:700}.guest-mini-check>span{color:#07805f}.guest-mini-check.warning{background:#fff7e9;color:#795522}.guest-mini-check.warning>span{color:#f79009}
.guest-test-screen{padding:21px;background:#fff}
.guest-test-progress{height:6px;margin-bottom:17px;border-radius:99px;background:#e7edf7;overflow:hidden}.guest-test-progress span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#155eef,#56a8ff)}
.guest-test-screen>small{color:#155eef;font-size:.59rem;font-weight:850;letter-spacing:.07em}.guest-test-screen h4{margin:7px 0 16px;color:#10245d;font-size:1rem}
.guest-sequence{display:flex;align-items:center;justify-content:center;gap:10px;padding:16px;border-radius:12px;background:#f4f8ff}.guest-sequence span,.guest-sequence strong{display:grid;place-items:center;width:35px;height:35px;border:1px solid #cddcf2;border-radius:9px;background:#fff;color:#153166;font-size:.8rem}.guest-sequence strong{border-style:dashed;color:#155eef}.guest-sequence i{color:#94a5c4;font-style:normal}
.guest-answer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:12px}.guest-answer-grid span{padding:8px;border:1px solid #d9e4f4;border-radius:8px;color:#42567e;text-align:center;font-size:.68rem;font-weight:750}.guest-answer-grid span.selected{border-color:#155eef;background:#eaf2ff;color:#155eef}
.guest-test-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:15px}.guest-test-footer>span{color:#7482a2;font-size:.6rem}.guest-test-footer button,.guest-dashboard-welcome button{border:0;border-radius:8px;background:#155eef;color:#fff;padding:8px 11px;font-size:.6rem;font-weight:750}
.guest-interview-screen{display:grid;grid-template-columns:minmax(145px,.7fr) minmax(0,1.3fr);gap:12px;padding:15px;background:#eaf0f8}
.guest-interviewer{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:255px;padding:16px;border-radius:12px;background:radial-gradient(circle at 50% 30%,#466da6,#0a1e4d);color:#fff;text-align:center}
.guest-interviewer-avatar{display:grid;place-items:center;width:76px;height:76px;margin-bottom:11px;border:2px solid rgba(255,255,255,.28);border-radius:50%;background:linear-gradient(145deg,#3485f5,#12336c);box-shadow:0 12px 28px rgba(0,0,0,.18)}
.guest-interviewer-avatar span{font-size:1.15rem;font-weight:850}.guest-interviewer>strong{font-size:.75rem}.guest-interviewer>small{margin-top:4px;color:#bcd2f2;font-size:.55rem}
.guest-voice-wave{display:flex;align-items:center;gap:3px;height:25px;margin-top:14px}.guest-voice-wave i{width:3px;height:8px;border-radius:9px;background:#62b0ff;animation:guestWave .9s ease-in-out infinite alternate}.guest-voice-wave i:nth-child(2),.guest-voice-wave i:nth-child(6){height:17px;animation-delay:.15s}.guest-voice-wave i:nth-child(3),.guest-voice-wave i:nth-child(5){height:23px;animation-delay:.3s}.guest-voice-wave i:nth-child(4){height:13px;animation-delay:.45s}
@keyframes guestWave{to{transform:scaleY(.45);opacity:.65}}
.guest-question-box{padding:18px;border-radius:12px;background:#fff}.guest-question-box>small{color:#155eef;font-size:.56rem;font-weight:850;letter-spacing:.06em}.guest-question-box h4{margin:8px 0 14px;color:#10245d;font-size:.92rem;line-height:1.35}
.guest-answer-area{min-height:86px;padding:11px;border:1px dashed #b9cbe5;border-radius:9px;background:#f8fbff;color:#8794af;font-size:.62rem;line-height:1.5}
.guest-mic-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:11px}.guest-mic-row button{border:0;border-radius:8px;background:#155eef;color:#fff;padding:8px;font-size:.56rem;font-weight:750}.guest-mic-row span{color:#07805f;font-size:.55rem;font-weight:750}
.guest-report-screen{display:grid;grid-template-columns:130px minmax(0,1fr);gap:13px;padding:16px;background:#f3f6fb}
.guest-report-score{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:15px;border-radius:13px;background:linear-gradient(145deg,#09265f,#155eef);color:#fff;text-align:center}.guest-report-score>div{display:flex;align-items:baseline}.guest-report-score strong{font-size:2rem}.guest-report-score small{font-size:.65rem}.guest-report-score>span{margin-top:5px;color:#d8e7ff;font-size:.58rem}
.guest-report-priorities{padding:14px;border-radius:13px;background:#fff}.guest-report-priorities>strong{color:#10245d;font-size:.76rem}.guest-report-priorities ol{display:grid;gap:6px;margin:10px 0 0;padding:0;list-style:none}.guest-report-priorities li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:7px;align-items:center;color:#50618a;font-size:.58rem}.guest-report-priorities li span{display:grid;place-items:center;width:22px;height:22px;border-radius:7px;background:#eaf2ff;color:#155eef;font-weight:850}
.guest-report-week{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.guest-report-week>span{padding:9px;border:1px solid #dfe7f3;border-radius:9px;background:#fff;color:#40527c;font-size:.56rem}.guest-report-week small{display:block;margin-bottom:3px;color:#155eef;font-weight:850}
.guest-dashboard-screen{padding:15px;background:#f2f6fb}
.guest-dashboard-welcome{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border-radius:12px;background:linear-gradient(120deg,#0b2860,#155eef);color:#fff}.guest-dashboard-welcome small{color:#acd0ff;font-size:.54rem;font-weight:800}.guest-dashboard-welcome h4{margin:3px 0 0;color:#fff;font-size:.85rem}
.guest-dashboard-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:9px 0}.guest-dashboard-kpis span{padding:9px;border:1px solid #e0e8f3;border-radius:9px;background:#fff}.guest-dashboard-kpis small,.guest-dashboard-kpis strong{display:block}.guest-dashboard-kpis small{color:#7b88a4;font-size:.5rem}.guest-dashboard-kpis strong{margin-top:4px;color:#173064;font-size:.82rem}
.guest-activity-list{padding:12px;border-radius:11px;background:#fff}.guest-activity-list>strong{color:#10245d;font-size:.7rem}.guest-activity-list>div{display:grid;grid-template-columns:8px minmax(0,1fr) auto;gap:8px;align-items:center;padding:8px 0;border-top:1px solid #edf1f7}.guest-activity-list>div:first-of-type{margin-top:6px}.guest-activity-list i{width:8px;height:8px;border-radius:50%;background:#155eef}.guest-activity-list i.green{background:#12b76a}.guest-activity-list i.purple{background:#7c5ce7}.guest-activity-list b,.guest-activity-list small{display:block}.guest-activity-list b{color:#30446f;font-size:.57rem}.guest-activity-list small,.guest-activity-list time{color:#8490aa;font-size:.49rem}.guest-activity-list time{white-space:nowrap}
.guest-faq{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);gap:34px}
.guest-faq-intro{align-self:start;position:sticky;top:100px}
.guest-faq-help{display:grid;grid-template-columns:42px minmax(0,1fr);gap:11px;margin-top:24px;padding:16px;border:1px solid #dce7f6;border-radius:16px;background:#f7faff}
.guest-faq-help>span{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#155eef;color:#fff;font-weight:850}.guest-faq-help strong,.guest-faq-help small{display:block}.guest-faq-help strong{color:#172b60;font-size:.83rem}.guest-faq-help small{margin-top:3px;color:#7280a0;font-size:.68rem;line-height:1.4}.guest-faq-help>a{grid-column:2;color:#155eef;font-size:.72rem;font-weight:800}
.guest-faq-list{display:grid;gap:9px}.guest-faq-list details{border:1px solid #dce6f4;border-radius:15px;background:#fff;overflow:hidden}.guest-faq-list details[open]{border-color:#bbd1f5;box-shadow:0 8px 22px rgba(7,25,71,.055)}.guest-faq-list summary{position:relative;padding:17px 48px 17px 18px;color:#172b60;font-weight:750;cursor:pointer;list-style:none;line-height:1.4}.guest-faq-list summary::-webkit-details-marker{display:none}.guest-faq-list summary:after{content:"+";position:absolute;right:18px;top:13px;color:#155eef;font-size:1.35rem;font-weight:500}.guest-faq-list details[open] summary:after{content:"−"}.guest-faq-list details p{margin:0;padding:0 18px 18px;color:#5d6d94;line-height:1.65}
.guest-faq-cta{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:5px;padding:18px;border-radius:17px;background:linear-gradient(120deg,#071947,#0b347f);color:#fff}.guest-faq-cta strong,.guest-faq-cta span{display:block}.guest-faq-cta span{margin-top:3px;color:#c9daf3;font-size:.75rem}.guest-faq-cta .btn{flex:0 0 auto;white-space:nowrap}
.hero-signup-note{display:flex;align-items:center;gap:8px;margin:13px 0 0!important;color:#d8e8ff!important;font-size:.82rem!important;font-weight:700}
.hero-signup-note span{display:grid;place-items:center;flex:0 0 22px;width:22px;height:22px;border-radius:50%;background:rgba(77,221,153,.16);color:#6de0a9;font-weight:900}

@media(max-width:1050px){
  .guest-section-heading{align-items:flex-start;flex-direction:column}
  .guest-tour-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}
  .guest-tour-panel{grid-template-columns:1fr}
  .guest-faq{grid-template-columns:1fr}
  .guest-faq-intro{position:static}
}
@media(max-width:700px){
  .guest-product-tour,.guest-faq{padding:22px 16px;border-radius:22px}
  .guest-tour-tabs{display:grid;grid-auto-flow:column;grid-auto-columns:185px;grid-template-columns:none;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity}
  .guest-tour-tabs button{scroll-snap-align:start}
  .guest-tour-panel{padding:20px 13px}
  .guest-cv-screen,.guest-interview-screen,.guest-report-screen{grid-template-columns:1fr}
  .guest-analysis-card{align-self:stretch}
  .guest-answer-grid{grid-template-columns:1fr 1fr}
  .guest-interviewer{min-height:220px}
  .guest-report-week{grid-column:auto;grid-template-columns:1fr}
  .guest-dashboard-kpis{grid-template-columns:1fr 1fr}
  .guest-dashboard-welcome{align-items:flex-start;flex-direction:column}
  .guest-faq-cta{align-items:flex-start;flex-direction:column}
  .guest-faq-cta .btn{width:100%}
}
@media(prefers-reduced-motion:reduce){
  .guest-tour-panel,.guest-voice-wave i{animation:none}
}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Centre d'aide */
.help-fab{position:fixed;right:24px;bottom:24px;z-index:900;display:flex;align-items:center;gap:9px;padding:10px 15px 10px 10px;border:1px solid rgba(255,255,255,.3);border-radius:999px;background:linear-gradient(135deg,#075cff,#208dff);color:#fff;box-shadow:0 14px 35px rgba(7,51,140,.3);font-size:.88rem;transition:transform .18s,box-shadow .18s}
.help-fab:hover{color:#fff;transform:translateY(-2px);box-shadow:0 18px 40px rgba(7,51,140,.38)}
.help-fab span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#fff;color:#1265ff;font-size:1.05rem;font-weight:900}
.help-fab strong{font-weight:750}
.help-center{max-width:1120px;margin:0 auto;display:grid;gap:26px}
.help-hero{padding:42px;border-radius:28px;background:linear-gradient(135deg,#07194a,#1265ff);color:#fff;box-shadow:0 20px 50px rgba(7,25,74,.18)}
.help-kicker{display:inline-flex;padding:7px 11px;border-radius:999px;background:rgba(255,255,255,.14);font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.help-hero h1{margin:14px 0 10px;color:#fff;font-size:clamp(2.2rem,5vw,3.7rem);line-height:1.05;letter-spacing:-.045em}
.help-hero p{margin:0;max-width:720px;color:#dbeafe;font-size:1.06rem;line-height:1.65}
.help-search{display:flex;align-items:center;gap:12px;margin-top:25px;max-width:680px;padding:0 17px;border-radius:15px;background:#fff;box-shadow:0 12px 30px rgba(0,0,0,.16);color:#1265ff;font-size:1.45rem}
.help-search input{width:100%;padding:16px 0;border:0;outline:0;background:transparent;color:#172554;font:inherit;font-size:1rem}
.help-categories{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
.help-categories a{display:grid;justify-items:center;gap:8px;padding:16px 10px;border:1px solid #dce8fb;border-radius:16px;background:#fff;color:#263b68;text-align:center;font-size:.82rem;font-weight:750;box-shadow:0 7px 20px rgba(12,31,74,.05);transition:.18s}
.help-categories a:hover{border-color:#8bb9ff;transform:translateY(-2px);color:#1265ff}
.help-categories span{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#eef6ff;color:#1265ff;font-size:1.05rem}
.help-sections{display:grid;gap:18px}
.help-section[hidden],.help-questions details[hidden],.help-no-result[hidden]{display:none!important}
.help-section{display:grid;grid-template-columns:285px 1fr;gap:25px;padding:25px;border:1px solid #dce8fb;border-radius:22px;background:#fff;box-shadow:0 10px 28px rgba(12,31,74,.055);scroll-margin-top:95px}
.help-section-title{display:flex;gap:13px;align-items:flex-start}
.help-section-title>span{flex:0 0 42px;display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#eef6ff;color:#1265ff;font-size:1.15rem;font-weight:850}
.help-section-title h2{margin:1px 0 6px;color:#07194a;font-size:1.2rem}
.help-section-title p{margin:0;color:#64729a;font-size:.88rem;line-height:1.5}
.help-questions{display:grid;gap:8px}
.help-questions details{border-bottom:1px solid #e5edf8}
.help-questions details:last-child{border-bottom:0}
.help-questions summary{position:relative;padding:13px 35px 13px 0;cursor:pointer;list-style:none;color:#172554;font-weight:750;line-height:1.45}
.help-questions summary::-webkit-details-marker{display:none}
.help-questions summary:after{content:"+";position:absolute;right:4px;top:11px;color:#1265ff;font-size:1.35rem;font-weight:500}
.help-questions details[open] summary:after{content:"−"}
.help-questions details>div{padding:0 34px 16px 0;color:#526087;line-height:1.65}
.help-no-result{padding:18px;border:1px dashed #9ebbe8;border-radius:16px;background:#f5f9ff;color:#34436e;text-align:center}
.help-contact{display:flex;justify-content:space-between;gap:25px;align-items:center;padding:28px 32px;border-radius:24px;background:#eef6ff;border:1px solid #d6e7ff}
.help-contact span{color:#1265ff;font-size:.77rem;font-weight:850;text-transform:uppercase;letter-spacing:.05em}
.help-contact h2{margin:7px 0;color:#07194a}
.help-contact p{margin:0;color:#526087;line-height:1.5}
.help-contact-actions{flex:0 0 auto;display:grid;gap:9px;justify-items:center}
.help-contact-actions>a:last-child{font-size:.84rem;font-weight:700}
@media(max-width:900px){.help-categories{grid-template-columns:repeat(3,1fr)}.help-section{grid-template-columns:1fr}.help-contact{align-items:flex-start;flex-direction:column}.help-contact-actions{justify-items:start}}
@media(max-width:600px){.help-hero{padding:28px 20px}.help-categories{grid-template-columns:repeat(2,1fr)}.help-section{padding:20px 16px}.help-fab{right:14px;bottom:14px;padding:8px}.help-fab strong{display:none}}
.empty-state,.credits-history-empty,.activity-empty{
  padding:20px;
  border:1px dashed #b8c8e1;
  border-radius:var(--jp-radius-md);
  background:var(--jp-blue-50);
  color:var(--jp-slate-600);
  line-height:1.55;
}

@media(max-width:760px){
  .page{padding:24px 14px 38px}
  .card{padding:20px 16px}
  .page-title h1,.dashboard-head h1{font-size:2.2rem}
  .page .btn{width:100%}
  .page .inline-form{width:100%;flex-wrap:wrap}
  .page .inline-form>.btn,.page .inline-form>button{width:auto;flex:1}
  .grid-2,.grid-3{grid-template-columns:1fr}
}

/* Expérience mobile complète */
.mobile-nav-toggle,.mobile-only-nav{display:none}
img,video,canvas,svg,iframe{max-width:100%}
.table-responsive,.admin-users-table-wrap,.usage-table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain}
.form input,.form select,.form textarea{min-width:0}

@media(max-width:1100px){
  body.mobile-menu-open{overflow:hidden}
  .topbar{height:68px;min-height:68px;padding:0 16px;gap:12px;z-index:1000}
  .topbar>.brand{font-size:22px;flex:0 0 auto}
  .topbar>.brand .brand-icon{width:30px;height:30px}
  .mobile-nav-toggle{display:grid;width:44px;height:44px;margin-left:auto;padding:10px;border:1px solid rgba(255,255,255,.25);border-radius:12px;background:rgba(255,255,255,.08);place-content:center;gap:5px;cursor:pointer}
  .mobile-nav-toggle span{display:block;width:21px;height:2px;border-radius:99px;background:#fff;transition:transform .18s,opacity .18s}
  .mobile-nav-open .mobile-nav-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .mobile-nav-open .mobile-nav-toggle span:nth-child(2){opacity:0}
  .mobile-nav-open .mobile-nav-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .topbar .main-nav{display:none;position:absolute;left:0;right:0;top:68px;max-height:calc(100dvh - 68px);overflow-y:auto;padding:14px 16px 24px;background:#07194a;border-top:1px solid rgba(255,255,255,.12);box-shadow:0 22px 42px rgba(2,12,45,.32);align-items:stretch;justify-content:flex-start;gap:5px}
  .topbar.mobile-nav-open .main-nav{display:flex;flex-direction:column}
  .topbar .main-nav>.nav-link,.topbar .main-nav>.mobile-only-nav{display:flex;min-height:48px;align-items:center;padding:11px 13px;border-radius:11px;color:#fff}
  .topbar .main-nav a.active{padding-bottom:11px;border-bottom:0;background:rgba(47,134,255,.18)}
  .topbar .main-nav .nav-dropdown{width:100%;border:1px solid rgba(255,255,255,.1);border-radius:12px}
  .topbar .main-nav .nav-dropdown summary{min-height:48px;padding:13px;color:#fff}
  .topbar .main-nav .nav-menu{position:static;width:100%;min-width:0;margin:0;padding:4px 8px 9px;border:0;background:rgba(255,255,255,.06);box-shadow:none}
  .topbar .main-nav .nav-menu a{min-height:44px;color:#fff}
  .mobile-only-nav{display:flex!important}
  .mobile-nav-cta{margin-top:6px;background:#1265ff!important;justify-content:center;font-weight:800}
  .topbar-actions{flex:0 0 auto;gap:8px}
  .topbar-actions .role-badge,.topbar-actions .topbar-secondary-link{display:none}
  .topbar-actions .btn{min-height:42px;padding:10px 14px}
  .topbar-actions .account-dropdown summary{min-height:42px;display:flex;align-items:center;padding:9px 11px}
  .topbar-actions .account-dropdown .nav-menu{right:0;left:auto;max-width:calc(100vw - 24px);max-height:calc(100dvh - 80px);overflow-y:auto}
}

@media(max-width:760px){
  html,body{max-width:100%;overflow-x:hidden}
  .page{width:100%;padding:20px 12px 34px;background-size:auto}
  .card{min-width:0;padding:18px 14px;border-radius:17px}
  .page-title h1,.dashboard-head h1,.report-hero-v2 h1{font-size:clamp(2rem,10vw,2.65rem);line-height:1.08;overflow-wrap:anywhere}
  .page-title p,.dashboard-head p,.report-lead{font-size:1rem;line-height:1.55}
  .actions,.report-actions-bar,.cv-create-preview-actions,.speech-actions,.voice-controls,.pricing-hero-actions,.payment-result .actions-row{width:100%;flex-direction:column;align-items:stretch}
  .actions .btn,.report-actions-bar .btn,.cv-create-preview-actions .btn,.speech-actions .btn,.pricing-hero-actions .btn,.payment-result .btn{width:100%;min-height:48px}
  .form input,.form select,.form textarea,.chat-input{font-size:16px;min-height:48px}
  .form textarea{min-height:130px}
  .form label{overflow-wrap:anywhere}
  .checkbox-row{align-items:flex-start!important;line-height:1.5}
  .checkbox-row input{flex:0 0 22px!important;width:22px!important;min-height:22px!important;margin-top:1px}
  .choice-cards,.pills,.language-radio-grid{grid-template-columns:1fr!important}
  .pills{display:grid}
  .pills label,.choice{min-height:48px}
  .avatar-mini{font-size:58px}
  .recap{position:static;width:100%}

  .table-responsive,.admin-users-table-wrap,.usage-table-wrap{margin-inline:-4px;padding-bottom:8px;border-radius:12px}
  .table-responsive:after,.admin-users-table-wrap:after,.usage-table-wrap:after{content:"Faites glisser horizontalement pour voir toutes les colonnes";display:block;position:sticky;left:0;padding:7px 10px;color:#64729a;font-size:.72rem}
  .table-responsive .table,.admin-users-table-wrap .table,.audio-manager-card .table,.usage-table{min-width:680px}
  .table th,.table td,.usage-table th,.usage-table td{padding:11px 9px;white-space:normal}
  .admin-status-form{min-width:190px;flex-direction:column;align-items:stretch}
  .admin-module-bars>div{grid-template-columns:100px 1fr 28px}
  .admin-compact-list>a{grid-template-columns:10px minmax(0,1fr)}
  .admin-compact-list time{grid-column:2}

  .interview-header,.question-top,.report-section-head,.section-head{align-items:stretch;flex-direction:column}
  .interview-grid{gap:14px}
  .ai-video{height:280px}
  .avatar-big{font-size:120px}
  .video-bar{padding:12px 8px;font-size:15px}
  .voice-controls{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center}
  .voice-controls button{min-width:112px;min-height:44px}
  .speech-answer-panel{padding:14px}
  .speech-status{align-self:flex-start}

  .report-page{width:100%;margin:10px auto}
  .report-hero-v2,.report-meta-grid,.report-kpi-grid,.criteria-grid-v2,.report-insights-grid,.question-content-grid,.star-diagnostic-grid-v2{grid-template-columns:1fr!important}
  .score-card-v2{width:100%;max-width:none}
  .report-section-card{padding:18px 14px}
  .report-kicker-row{align-items:flex-start}
  .star-master-card,.star-master-left,.star-master-content{min-width:0}
  .star-master-steps{grid-template-columns:1fr 1fr!important}
  .question-review-card-v2{padding:15px}
  .question-title-row{align-items:flex-start;flex-direction:column}
  .question-score-pill{align-self:flex-start}
  .human-coach-card-v2{grid-template-columns:1fr!important;text-align:left}

  .cv-create-layout,.cv-manager-layout{grid-template-columns:1fr}
  .cv-create-side-card{position:static!important}
  .cv-template-live-preview{overflow:hidden}
  .cv-sample-page{width:100%;min-width:0;min-height:250px;padding:16px;overflow-wrap:anywhere}
  .cv-sample-page strong{font-size:18px}
  .cv-create-preview-text{max-height:55vh;padding:14px;font-size:13px}
  .activity-cv-preview{height:65vh;min-height:480px;border-radius:10px}

  .pricing-page,.pricing-page>*,.pricing-hero,.pricing-card,.stripe-wallet-card,.section-card,.usage-table-wrap{min-width:0}
  .pricing-page{width:100%;overflow:hidden}
  .usage-table-wrap{width:100%;overflow-x:auto}
  .pricing-grid{gap:14px}
  .pricing-card{padding:19px 14px}
  .stripe-buy-form .btn{width:100%;min-height:48px}

  .footer.footer-premium{padding:22px 14px 92px}
  .footer-main,.footer-credit{width:100%;align-items:center;text-align:center}
  .footer-links{gap:14px 20px}
}

/* Identité de marque JobPaca IA */
.brand-logo-img{display:block;width:179px;height:auto;max-width:none}
.topbar>.brand,.footer .brand{flex:0 0 auto;line-height:0}
.feature-icon-premium svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.feature-card-premium:nth-child(3n+2) .feature-icon-premium{background:#e9f8f3;color:#07805f}
.feature-card-premium:nth-child(3n) .feature-icon-premium{background:#f0ecff;color:#6d4ed7}
.brand-kicker{display:inline-flex;align-items:center;gap:8px;color:#155eef;font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.09em}
.brand-kicker:before{content:"";width:24px;height:2px;border-radius:99px;background:linear-gradient(90deg,#155eef,#66acff)}
.brand-kicker-light{color:#b8d8ff}
.brand-kicker-light:before{background:#66acff}

.about-page{display:grid;gap:28px;max-width:1280px;margin:0 auto}
.about-hero{display:grid;grid-template-columns:minmax(0,.92fr) minmax(480px,1.08fr);min-height:610px;overflow:hidden;border:1px solid #d9e6f8;border-radius:32px;background:#fff;box-shadow:0 26px 70px rgba(7,25,71,.12)}
.about-hero-copy{display:flex;flex-direction:column;justify-content:center;padding:58px 52px}
.about-hero h1{margin:16px 0 20px;color:#071947;font-size:clamp(2.7rem,4.5vw,4.55rem);line-height:1.02;letter-spacing:-.055em}
.about-hero-copy>p{margin:0;color:#526087;font-size:1.08rem;line-height:1.75}
.about-signature{display:flex;align-items:center;gap:14px;margin-top:26px;padding:15px;border:1px solid #dbe8fa;border-radius:18px;background:#f7faff}
.about-signature img{flex:0 0 48px}
.about-signature strong,.about-signature span{display:block}
.about-signature strong{color:#12245b}
.about-signature span{margin-top:4px;color:#68779d;font-size:.86rem}
.about-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.about-hero-media{position:relative;min-width:0;margin:0;background:#dce9f8}
.about-hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,25,71,.12),transparent 30%)}
.about-hero-media>img{width:100%;height:100%;object-fit:cover}
.about-hero-media figcaption{position:absolute;z-index:1;left:24px;right:24px;bottom:24px;display:flex;align-items:center;gap:9px;padding:13px 16px;border:1px solid rgba(255,255,255,.44);border-radius:14px;background:rgba(7,25,71,.78);color:#fff;font-size:.86rem;font-weight:700;backdrop-filter:blur(10px)}
.about-live-dot{width:9px;height:9px;border-radius:50%;background:#45e596;box-shadow:0 0 0 5px rgba(69,229,150,.16)}
.about-proof-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #dce8f8;border-radius:24px;background:#fff;box-shadow:0 12px 34px rgba(7,25,71,.06)}
.about-proof-strip article{min-width:0;padding:25px;text-align:center;border-left:1px solid #e4ecf8}
.about-proof-strip article:first-child{border-left:0}
.about-proof-strip strong{display:block;color:#155eef;font-size:2rem;letter-spacing:-.04em}
.about-proof-strip span{display:block;margin-top:4px;color:#5d6d94;font-size:.88rem;line-height:1.45}
.about-section{padding:48px;border:1px solid #dce8f8;border-radius:28px;background:rgba(255,255,255,.94);box-shadow:0 16px 44px rgba(7,25,71,.065)}
.about-section-heading{max-width:790px}
.about-section-heading.centered{margin:0 auto;text-align:center}
.about-section-heading.centered .brand-kicker{justify-content:center}
.about-section-heading.compact{max-width:620px}
.about-section-heading h2{margin:12px 0;color:#071947;font-size:clamp(2rem,3vw,3rem);line-height:1.1}
.about-section-heading p{margin:0;color:#607098;font-size:1rem;line-height:1.7}
.about-values-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:30px}
.about-values-grid article{padding:25px;border:1px solid #e0e9f7;border-radius:20px;background:linear-gradient(145deg,#fff,#f7faff)}
.about-value-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#eaf2ff;color:#155eef;font-weight:850}
.about-values-grid h3{margin:20px 0 8px;color:#10245d}
.about-values-grid p{margin:0;color:#65759b;line-height:1.65}
.about-human{display:grid;grid-template-columns:minmax(340px,.8fr) minmax(0,1.2fr);gap:24px;padding:0;border:0;background:transparent;box-shadow:none}
.about-human-card{padding:38px;border-radius:26px;background:linear-gradient(145deg,#071947,#0b347f);color:#fff;box-shadow:0 22px 50px rgba(7,25,71,.19)}
.about-human-card h2{margin:14px 0;color:#fff;font-size:2.1rem;line-height:1.1}
.about-human-card p,.about-human-card li{color:#d4e3fb;line-height:1.65}
.about-human-card ul{padding-left:20px}
.about-human-card li{margin:10px 0}
.about-human-card a{display:inline-block;margin-top:10px;color:#8bc1ff;font-weight:750}
.about-voice-board{padding:36px;border:1px solid #dce8f8;border-radius:26px;background:#fff}
.about-voices{display:grid;gap:12px;margin-top:24px}
.about-voices blockquote{position:relative;margin:0;padding:18px 20px 16px 56px;border:1px solid #e0e9f7;border-radius:17px;background:#f8fbff}
.about-voices blockquote:before{content:"“";position:absolute;left:18px;top:7px;color:#82b5ff;font-family:Georgia,serif;font-size:3.2rem;line-height:1}
.about-voices p{margin:0;color:#213766;font-weight:700;line-height:1.5}
.about-voices footer{margin-top:7px;color:#7180a2;font-size:.8rem}
.about-partners{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:30px}
.about-partners>a{display:flex;align-items:center;gap:14px;padding:20px;border:1px solid #dfe8f7;border-radius:18px;background:#f9fbff;color:#14265e;transition:.18s}
.about-partners>a:hover{transform:translateY(-2px);border-color:#a9c9fb;box-shadow:0 12px 28px rgba(7,25,71,.08)}
.partner-monogram{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;border-radius:15px;background:linear-gradient(145deg,#155eef,#4c9dff);color:#fff;font-weight:850}
.about-partners strong,.about-partners small{display:block}
.about-partners small{margin-top:4px;color:#6c7a9e;line-height:1.35}
.about-reassurance{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.about-reassurance>div{padding:20px;border:1px solid #dfe9f8;border-radius:18px;background:#fff}
.about-reassurance>div>span{display:grid;place-items:center;width:28px;height:28px;margin-bottom:14px;border-radius:50%;background:#e7f8ef;color:#067647;font-weight:900}
.about-reassurance strong,.about-reassurance small{display:block}
.about-reassurance strong{color:#172b60}
.about-reassurance small{margin-top:7px;color:#6b799c;line-height:1.5}
.about-final-cta{display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center;padding:34px 38px;border-radius:26px;background:linear-gradient(120deg,#06163e,#0b327c);color:#fff;box-shadow:0 22px 50px rgba(7,25,71,.18)}
.about-final-cta img{width:165px}
.about-final-cta h2{margin:0 0 5px;color:#fff}
.about-final-cta p{margin:0;color:#cbdcf6}

.home-brand-story{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:24px;align-items:center;padding:30px 34px;border-radius:26px;background:linear-gradient(120deg,#071947,#0b347f);color:#fff;box-shadow:0 20px 48px rgba(7,25,71,.17)}
.home-brand-story>img{width:60px;height:60px}
.home-brand-story h2{margin:0 0 7px;color:#fff}
.home-brand-story p{margin:0;color:#d3e3fa;line-height:1.55}
.home-brand-story .btn{white-space:nowrap}

@media(max-width:1050px){
  .brand-logo-img{width:164px}
  .about-hero{grid-template-columns:1fr;min-height:0}
  .about-hero-media{min-height:480px;order:-1}
  .about-proof-strip,.about-reassurance{grid-template-columns:1fr 1fr}
  .about-proof-strip article:nth-child(3){border-left:0;border-top:1px solid #e4ecf8}
  .about-proof-strip article:nth-child(4){border-top:1px solid #e4ecf8}
  .about-values-grid,.about-partners{grid-template-columns:1fr}
  .about-human{grid-template-columns:1fr}
  .about-final-cta,.home-brand-story{grid-template-columns:1fr;justify-items:start}
}

@media(max-width:600px){
  .topbar>.brand .brand-logo-img{width:138px}
  .about-page{gap:18px}
  .about-hero{border-radius:22px}
  .about-hero-media{min-height:310px}
  .about-hero-media figcaption{left:12px;right:12px;bottom:12px}
  .about-hero-copy{padding:30px 20px}
  .about-hero h1{font-size:2.45rem}
  .about-actions{flex-direction:column}
  .about-actions .btn{width:100%}
  .about-proof-strip{grid-template-columns:1fr}
  .about-proof-strip article,.about-proof-strip article:nth-child(3),.about-proof-strip article:nth-child(4){border-left:0;border-top:1px solid #e4ecf8}
  .about-proof-strip article:first-child{border-top:0}
  .about-section,.about-human-card,.about-voice-board{padding:26px 18px;border-radius:22px}
  .about-values-grid{grid-template-columns:1fr}
  .about-reassurance{grid-template-columns:1fr}
  .about-final-cta{padding:28px 20px}
  .home-brand-story{padding:26px 20px}
  .home-brand-story .btn{width:100%}
}
