@font-face { font-family:"DAWAP Inter"; src:url("/assets/theme/fonts/inter-variable.woff2") format("woff2"); font-style:normal; font-weight:100 900; font-display:swap; }

:root {
  --ink: #071126; --muted: #64748b; --line: #dbe4ee; --paper: #fff;
  --cyan: #0ea5c6; --green: #10b981; --violet: #7c5cff;
  --amber: #f59e0b; --coral: #f04464; --navy: #0b1830;
  --radius: 16px; --shadow: 0 22px 55px rgba(15, 35, 60, .11);
  --content: 1180px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); font: 16px/1.55 "DAWAP Inter", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-synthesis:none; background:
  radial-gradient(circle at 18% 9%, rgba(14,165,198,.12), transparent 26rem),
  radial-gradient(circle at 82% 2%, rgba(124,92,255,.11), transparent 28rem),
  linear-gradient(rgba(116,139,168,.08) 1px, transparent 1px),
  linear-gradient(90deg, rgba(116,139,168,.08) 1px, transparent 1px), #f9fcff;
  background-size: auto, auto, 42px 42px, 42px 42px, auto; min-height: 100vh;
}
button, input { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; }
:focus-visible { outline: 3px solid rgba(14,165,198,.35); outline-offset: 3px; }
.skip-link { position: fixed; top: 8px; left: 8px; z-index: 99; padding: 9px 13px; background: var(--navy); color: white; transform: translateY(-150%); }
.skip-link:focus { transform: none; }
.shell { width: min(var(--content), calc(100% - 36px)); margin: 0 auto; padding: 38px 0 70px; }
.surface { background: rgba(255,255,255,.94); border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow); }
.topbar { position: sticky; top: 0; z-index: 20; display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 12px max(18px, calc((100vw - var(--content))/2)); background: rgba(249,252,255,.88); border-bottom: 1px solid rgba(219,228,238,.8); backdrop-filter: blur(14px); }
.brand, .nav-link, .button { display: inline-flex; align-items: center; gap: 9px; text-decoration: none; border: 0; border-radius: 11px; font-weight: 800; cursor: pointer; }
.brand img { width: 34px; height: 34px; }
.topnav { display: flex; gap: 7px; flex-wrap: wrap; }
.nav-link { padding: 8px 11px; color: #40506a; background: transparent; }
.nav-link:hover, .nav-link[aria-current="page"] { color: var(--cyan); background: #ecfeff; }
.button { justify-content: center; padding: 12px 18px; background: linear-gradient(110deg, var(--navy), #0b617a); color: white; box-shadow: 0 10px 22px rgba(10,42,72,.16); }
.button.secondary { color: var(--ink); background: white; border: 1px solid var(--line); box-shadow: none; }
.eyebrow { margin: 0 0 8px; color: #087f9a; font-size: .78rem; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
h1, h2, h3, p { margin-top: 0; }
h1 { font-size: clamp(2.4rem, 5.2vw, 4.8rem); line-height: .98; letter-spacing: -.055em; }
h2 { font-size: clamp(1.55rem, 3vw, 2.5rem); line-height: 1.08; letter-spacing: -.035em; }
h3 { line-height: 1.15; }
.muted { color: var(--muted); }
.hero { display: grid; grid-template-columns: 1.12fr .88fr; gap: 34px; padding: clamp(26px, 5vw, 48px); }
.hero-copy { align-self: center; }
.hero-copy > p:not(.eyebrow) { max-width: 670px; color: var(--muted); font-size: 1.08rem; }
.thread { padding: 20px; border: 1px solid #ccebf2; border-radius: 13px; background: linear-gradient(135deg,#f4fdff,#faf8ff); }
.thread-head { margin-bottom: 12px; font-size: .8rem; font-weight: 900; color: #0f7c95; }
.thread-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.thread-step { min-height: 112px; padding: 15px; background: white; border: 1px solid var(--line); border-radius: 10px; }
.thread-step span { color: var(--cyan); font-size: .68rem; font-weight: 900; }
.thread-step strong, .thread-step small { display: block; }
.thread-step small { color: var(--muted); }
.decision { margin-top: 10px; padding: 14px 16px; color: white; background: linear-gradient(90deg,var(--navy),#0d5269); border-radius: 10px; font-weight: 800; }
.metrics, .actions, .card-grid, .catalog-grid { display: grid; gap: 12px; }
.metrics { grid-template-columns: repeat(2, 1fr); margin-top: 12px; }
.metric { padding: 12px 15px; border: 1px solid var(--line); border-radius: 10px; background: #fbfdff; font-weight: 750; }
.actions { grid-template-columns: repeat(2, 1fr); margin-top: 12px; }
.section-head { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin: 40px 0 18px; }
.progress-list { position: relative; display: grid; gap: 12px; }
.progress-list::before { content: ""; position: absolute; left: 29px; top: 25px; bottom: 25px; width: 2px; background: linear-gradient(var(--cyan),var(--green),var(--violet),var(--amber)); }
.progress-row { position: relative; display: grid; grid-template-columns: 60px 130px 1fr auto; align-items: center; gap: 18px; padding: 13px 20px 13px 0; }
.step-number { z-index: 1; display: grid; place-items: center; width: 60px; height: 60px; border: 1px solid currentColor; border-radius: 50%; background: #effcff; color: var(--cyan); font-weight: 900; }
.tone-green .step-number { color: var(--green); background:#ecfdf5; }.tone-violet .step-number{color:var(--violet);background:#f5f1ff}.tone-amber .step-number{color:var(--amber);background:#fff8e8}
.progress-row small { color: #087f9a; font-size: .7rem; font-weight: 900; text-transform: uppercase; }
.progress-row strong { font-size: 1.12rem; }
.compass { display: flex; align-items: center; justify-content: space-between; gap: 26px; margin-top: 48px; padding: 30px; background: linear-gradient(115deg,#edfcff,#fbf8ff); }
.page-hero { padding: clamp(26px, 5vw, 52px); }
.page-hero > .muted { max-width: 760px; font-size: 1.08rem; }
.opening-nav { display: flex; justify-content: space-between; gap: 10px; margin-bottom: 18px; }
.ribbon { display: grid; grid-template-columns: repeat(4,1fr); gap: 8px; margin: 28px 0; }
.ribbon span { padding: 12px; border-radius: 9px; background: #f3f7fb; color: #52647b; font-weight: 800; text-align: center; }
.ribbon span.active { color: white; background: var(--navy); }
.card-grid { grid-template-columns: repeat(2, 1fr); }
.info-card { min-height: 160px; padding: 22px; border: 1px solid var(--line); border-radius: 13px; background: white; }
.info-card::before { content: "À RENSEIGNER"; color: var(--cyan); font-size: .68rem; font-weight: 900; letter-spacing: .06em; }
.course-layout { display: grid; grid-template-columns: 250px 1fr; gap: 22px; }
.rail { align-self: start; position: sticky; top: 84px; padding: 18px; }
.rail a { display: block; padding: 10px 12px; border-left: 3px solid #dbe4ee; color: var(--muted); text-decoration: none; font-weight: 750; }
.rail a.active { color: var(--cyan); border-color: var(--cyan); background: #effcff; }
.lesson { padding: clamp(26px,5vw,52px); }
.pedagogy-loop { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin-top: 28px; }
.loop-card { padding: 18px; border-radius: 11px; background: #f6f9fc; border: 1px solid var(--line); }
.timeline { position: relative; display: grid; gap: 18px; margin-top: 26px; padding-left: 32px; }
.timeline::before { content:""; position:absolute; left: 8px; top: 0; bottom: 0; width: 3px; background: linear-gradient(var(--cyan),var(--violet)); }
.timeline article { position: relative; padding: 22px; }
.timeline article::before { content:""; position:absolute; left:-30px; top:28px; width:15px; height:15px; border-radius:50%; background:var(--cyan); border:4px solid white; box-shadow:0 0 0 1px var(--cyan); }
.catalog-grid { grid-template-columns: repeat(3,1fr); }
.catalog-card { padding: 20px; }
.catalog-card img { display:block; width:100%; aspect-ratio:5/3; object-fit:cover; border-radius:10px; margin-bottom:16px; }
.search { width: 100%; margin: 18px 0; padding: 13px 15px; border: 1px solid var(--line); border-radius: 10px; background:white; }
.site-tree { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.site-tree a { padding:15px; border:1px solid var(--line); border-radius:10px; background:white; text-decoration:none; font-weight:800; }
.status { display:inline-flex; padding:5px 9px; border-radius:99px; color:#087f5b; background:#e9fbf4; font-size:.75rem; font-weight:900; }
.score-summary { display:flex; align-items:baseline; gap:10px; margin:24px 0; padding:20px; border-radius:13px; background:linear-gradient(110deg,var(--navy),#0b617a); color:white; }
.score-summary strong { font-size:3rem; line-height:1; }.score-summary span{font-weight:800}
.progress-table { display:grid; gap:8px; }.progress-table>a{display:grid;grid-template-columns:1.4fr auto 180px 110px;align-items:center;gap:14px;padding:13px 15px;border:1px solid var(--line);border-radius:10px;background:white;text-decoration:none}.progress-table small,.progress-table strong{display:block}.progress-table small{color:var(--muted)}.maturity,.hub-state{font-size:.75rem;font-weight:850;color:var(--muted)}
.score-track{height:8px;overflow:hidden;border-radius:99px;background:#e8eef5}.score-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--cyan),var(--green))}
.maturity-scale{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:28px}.maturity-scale div{padding:14px;border:1px solid var(--line);border-radius:10px;background:#f8fbfd}.maturity-scale strong,.maturity-scale span,.maturity-scale small{display:block}.maturity-scale strong{font-size:1.4rem}.maturity-scale span{font-weight:900}.maturity-scale small{color:var(--muted)}
.progress-dashboard{max-width:1480px;margin-inline:auto}.backlog-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:24px 0 32px}.backlog-summary div{padding:16px;border:1px solid var(--line);border-radius:12px;background:#f8fbfd}.backlog-summary strong,.backlog-summary span{display:block}.backlog-summary strong{font-size:2rem;line-height:1}.backlog-summary span{margin-top:5px;color:var(--muted);font-size:.75rem;font-weight:850}.backlog-summary [data-status="running"]{background:#eefcf8;border-color:#9ce8d2}.backlog-summary [data-status="blocked"]{background:#fff8e8;border-color:#f6d68c}.backlog-lane{margin-top:22px;padding-top:22px;border-top:1px solid var(--line)}.backlog-lane>header{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:start;margin-bottom:14px}.backlog-lane>header h2{margin:3px 0 6px;font-size:clamp(1.45rem,2vw,2.1rem)}.backlog-lane>header p{margin:0;color:var(--muted)}.backlog-lane>header>strong{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--navy);color:#fff}.backlog-items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.backlog-item{display:flex;flex-direction:column;min-height:190px;padding:17px;border:1px solid var(--line);border-top:4px solid #93a4b8;border-radius:12px;background:#fff}.backlog-item[data-status="running"]{border-top-color:var(--green);background:linear-gradient(150deg,#fff,#f0fcf8)}.backlog-item[data-status="next"]{border-top-color:var(--cyan)}.backlog-item[data-status="ready"]{border-top-color:var(--violet)}.backlog-item[data-status="blocked"]{border-top-color:var(--amber);background:linear-gradient(150deg,#fff,#fff9eb)}.backlog-item[data-status="later"]{opacity:.76}.backlog-item>div{display:flex;justify-content:space-between;gap:8px}.backlog-priority,.backlog-status{font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.backlog-priority{color:var(--navy)}.backlog-status{color:var(--muted)}.backlog-item h3{margin:14px 0 7px;font-size:1rem}.backlog-item p{margin:0;color:var(--muted);font-size:.86rem}.backlog-item footer{display:flex;justify-content:space-between;gap:8px;margin-top:auto;padding-top:16px;color:#486174;font-size:.7rem;font-weight:800}.page-maturity{margin-top:34px;border-top:1px solid var(--line);padding-top:20px}.page-maturity>summary{cursor:pointer;font-weight:900;color:var(--navy)}
.footer { padding: 24px 18px 40px; color: var(--muted); text-align:center; font-size:.82rem; }

/* Portail signature — géométrie figée sur la référence AuthWeb 2026-09-09. */
.course-landing { position:relative; isolation:isolate; min-height:100vh; overflow:hidden; background:radial-gradient(circle at 18% 8%,rgba(34,211,238,.14),transparent 26rem),radial-gradient(circle at 82% 2%,rgba(139,92,246,.13),transparent 24rem),linear-gradient(180deg,#f8fbff 0%,#fff 34%,#f7fafc 100%); color:#0f172a; }
.course-grid-bg { position:absolute; inset:0; z-index:-1; background-image:linear-gradient(rgba(15,23,42,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(15,23,42,.045) 1px,transparent 1px); background-size:42px 42px; mask-image:linear-gradient(180deg,rgba(0,0,0,.85),transparent 72%); }
.course-container { width:min(1180px,calc(100% - 40px)); margin:0 auto; padding:78px 0 96px; }
.course-menu-dot { position:fixed; top:22px; left:22px; z-index:30; width:44px; height:44px; display:grid; place-content:center; gap:4px; border:1px solid rgba(203,213,225,.7); border-radius:999px; background:rgba(255,255,255,.92); box-shadow:0 8px 24px rgba(15,23,42,.08); }
.course-menu-dot i { width:6px; height:6px; border-radius:50%; background:#526dff; }
.course-global-home { position:fixed; top:22px; left:22px; z-index:40; width:44px; height:44px; display:grid; place-items:center; border:1px solid rgba(203,213,225,.78); border-radius:999px; background:rgba(255,255,255,.94); color:#24324a; box-shadow:0 8px 24px rgba(15,23,42,.1); backdrop-filter:blur(12px); text-decoration:none; transition:transform .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease; }
.course-global-home .icon { width:21px; height:21px; }
.course-global-home:hover { transform:translateY(-2px); border-color:rgba(14,165,198,.45); color:#0891b2; box-shadow:0 12px 28px rgba(15,23,42,.14); }
.course-global-home:focus-visible { outline:3px solid rgba(14,165,198,.4); outline-offset:4px; }
.course-overview { display:grid; grid-template-columns:minmax(0,1.06fr) minmax(440px,.94fr); gap:clamp(28px,4vw,56px); align-items:stretch; border:1px solid rgba(226,232,240,.9); border-radius:8px; background:rgba(255,255,255,.78); box-shadow:0 18px 52px rgba(15,23,42,.07); backdrop-filter:blur(16px); padding:clamp(20px,3vw,30px); }
.course-overview-copy { display:grid; align-content:center; }
.course-overview h1 { margin:8px 0 0; color:#020617; font-size:clamp(38px,4.4vw,56px); line-height:1; letter-spacing:0; font-weight:950; }
.course-overview-copy>p:not(.course-kicker) { max-width:720px; margin:12px 0 0; color:#64748b; font-size:16px; line-height:1.7; }
.course-overview-side { min-width:0; display:grid; gap:12px; align-content:center; }
.course-kicker { margin:0; color:#0e7490; font-size:12px; line-height:1.2; font-weight:900; text-transform:uppercase; }
.course-auth-map { position:relative; margin:0; display:grid; gap:13px; border:1px solid rgba(14,165,233,.18); border-radius:8px; background:radial-gradient(circle at 92% 0,rgba(139,92,246,.11),transparent 36%),radial-gradient(circle at 0 100%,rgba(16,185,129,.1),transparent 34%),linear-gradient(145deg,rgba(248,250,252,.94),rgba(255,255,255,.9)); padding:16px; overflow:hidden; }
.course-auth-map::after { content:attr(data-mark); position:absolute; top:-13px; right:7px; color:rgba(15,23,42,.035); font-size:72px; line-height:1; font-weight:950; pointer-events:none; }
.course-auth-map-head { position:relative; z-index:1; display:grid; grid-template-columns:10px minmax(0,1fr); gap:10px; align-items:center; }
.course-auth-map-signal { width:9px; height:9px; border-radius:50%; background:#10b981; box-shadow:0 0 0 5px rgba(16,185,129,.12),0 0 22px rgba(16,185,129,.55); }
.course-auth-map-head div { display:grid; gap:2px; }.course-auth-map-head small,.course-auth-map-node small,.course-auth-map-decision small{color:#0891b2;font-size:9px;line-height:1.2;letter-spacing:.08em;text-transform:uppercase;font-weight:950}.course-auth-map-head strong{color:#0f172a;font-size:14px;font-weight:950}
.course-auth-map-flow { position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,1fr) 14px minmax(0,1fr) 14px minmax(0,1fr); gap:5px; align-items:center; }
.course-auth-map-node { min-height:82px; display:grid; align-content:center; justify-items:center; gap:4px; border:1px solid rgba(148,163,184,.2); border-radius:8px; background:rgba(255,255,255,.78); padding:9px 6px; text-align:center; box-shadow:0 8px 20px rgba(15,23,42,.035); }
.course-auth-map-node>.icon { width:19px; height:19px; margin-bottom:2px; }.course-auth-map-node strong{color:#334155;font-size:11px;font-weight:900}.course-auth-map-node.identity>.icon{color:#0891b2}.course-auth-map-node.proof>.icon,.course-auth-map-node.proof small{color:#7c3aed}.course-auth-map-node.rights>.icon,.course-auth-map-node.rights small{color:#d97706}.course-auth-map-arrow{color:#94a3b8;text-align:center}
.course-auth-map-decision { position:relative; z-index:1; min-height:62px; display:grid; grid-template-columns:38px minmax(0,1fr) auto; gap:10px; align-items:center; border:1px solid rgba(15,23,42,.08); border-radius:8px; background:linear-gradient(135deg,#0f172a,#1e293b 64%,#155e75); color:#fff; padding:10px 12px; box-shadow:0 12px 28px rgba(15,23,42,.15); }
.course-auth-map-shield { width:38px;height:38px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:rgba(255,255,255,.08);color:#5eead4}.course-auth-map-shield .icon{width:20px;height:20px}.course-auth-map-decision>div:not(.course-auth-map-status){display:grid;gap:3px}.course-auth-map-decision small{color:#5eead4}.course-auth-map-decision strong{font-size:11px;line-height:1.25;font-weight:900}.course-auth-map-status{display:flex;gap:4px}.course-auth-map-status span{min-width:30px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(255,255,255,.08);padding:4px 6px;font-size:9px;font-weight:950;text-align:center}.course-auth-map-status .ok{color:#6ee7b7}.course-auth-map-status .warn{color:#fcd34d}.course-auth-map-status .deny{color:#fda4af}
.course-overview-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }.course-overview-actions>span{min-height:44px;display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(148,163,184,.28);border-radius:8px;background:rgba(248,250,252,.84);color:#475569;padding:10px 12px;font-size:12px;font-weight:850}.course-overview-actions .course-button{width:100%}
.course-button { min-height:44px; display:inline-flex; align-items:center; justify-content:center; gap:9px; border:1px solid rgba(148,163,184,.34); border-radius:8px; background:rgba(255,255,255,.9); color:#0f172a; padding:11px 15px; font-weight:850; text-decoration:none; box-shadow:0 12px 28px rgba(15,23,42,.07); transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease; }.course-button:hover{transform:translateY(-1px);border-color:rgba(34,211,238,.5);color:#0f172a;box-shadow:0 18px 38px rgba(15,23,42,.11)}.course-button.primary{border-color:rgba(14,165,233,.18);background:linear-gradient(135deg,#0f172a,#1e293b 62%,#155e75);color:#fff}.course-button .icon,.course-overview-actions .icon{width:16px;height:16px}
.course-section { display:grid; gap:28px; padding:42px 0; }.timeline-section{padding-top:34px}.course-section-head{max-width:760px;display:grid;gap:10px}.timeline-heading{max-width:none;grid-template-columns:minmax(0,1fr) auto;align-items:end}.timeline-heading .course-kicker{margin-bottom:6px}.course-section h2{margin:0;color:#020617;font-size:clamp(30px,4vw,48px);line-height:1.05;font-weight:950}
.timeline-legend { display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.timeline-legend span{width:fit-content;display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(148,163,184,.28);border-radius:999px;background:rgba(255,255,255,.78);color:#475569;padding:7px 10px;font-size:12px;font-weight:850}.legend-dot{width:8px;height:8px;display:inline-block;border-radius:999px}.legend-dot.cyan{background:#06b6d4}.legend-dot.amber{background:#f59e0b}.legend-dot.violet{background:#8b5cf6}.legend-dot.emerald{background:#10b981}
.course-timeline { position:relative;display:grid;gap:26px}.course-timeline::before{content:"";position:absolute;top:18px;bottom:18px;left:31px;width:2px;border-radius:999px;background:linear-gradient(180deg,#06b6d4,#10b981,#8b5cf6,#f59e0b,#fb7185);opacity:.9}.course-timeline-item{--step-soft:#ecfeff;--step-color:#0891b2;--step-border:rgba(34,211,238,.3);position:relative;display:grid;grid-template-columns:64px minmax(0,1fr);gap:24px;align-items:start}.course-timeline-item.tone-emerald{--step-soft:#ecfdf5;--step-color:#059669;--step-border:rgba(16,185,129,.32)}.course-timeline-item.tone-violet{--step-soft:#f5f3ff;--step-color:#7c3aed;--step-border:rgba(139,92,246,.32)}.course-timeline-item.tone-amber{--step-soft:#fffbeb;--step-color:#d97706;--step-border:rgba(245,158,11,.32)}
.timeline-pin{position:sticky;top:24px;display:grid;place-items:center;z-index:1}.timeline-pin span{width:64px;height:64px;display:grid;place-items:center;border:1px solid;border-radius:999px;background:var(--step-soft);color:var(--step-color);border-color:var(--step-border);font-size:16px;font-weight:950;box-shadow:0 14px 32px rgba(15,23,42,.1)}.timeline-card{border:1px solid rgba(226,232,240,.92);border-radius:8px;background:rgba(255,255,255,.88);padding:clamp(20px,3vw,30px);box-shadow:0 18px 48px rgba(15,23,42,.07);transition:transform .18s ease,box-shadow .18s ease}.timeline-card:hover{transform:translateY(-2px);box-shadow:0 28px 60px rgba(15,23,42,.11)}.timeline-card-head{display:flex;justify-content:space-between;gap:16px;align-items:start}.timeline-card-summary{min-width:0;margin:0;padding:0;border:0;color:inherit;background:transparent;text-align:left;cursor:pointer}.timeline-card-summary:hover h3{color:var(--step-color)}.timeline-card-toggle{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;gap:7px;min-height:36px;border:1px solid var(--step-border);border-radius:999px;padding:7px 11px;color:var(--step-color);background:var(--step-soft);font-size:11px;font-weight:900;cursor:pointer}.timeline-card-toggle .icon{width:15px;height:15px}.course-timeline-item:not(.is-collapsed) .timeline-card-toggle .icon{transform:rotate(180deg)}
.course-timeline-item.is-collapsed .timeline-card{padding-block:14px}.course-timeline-item.is-collapsed .timeline-card-head{align-items:center}.course-timeline-item.is-collapsed .timeline-card-summary{display:grid;grid-template-columns:152px minmax(0,1fr);min-width:0;align-items:center;gap:12px}.course-timeline-item.is-collapsed .course-kicker{margin:0;white-space:nowrap}.course-timeline-item.is-collapsed .timeline-card h3{overflow:hidden;margin:0;color:#1e293b;font-size:clamp(16px,1.8vw,21px);line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.course-timeline-item.is-collapsed .duration-badge{display:none}.timeline-card h3{margin:5px 0 0;color:#020617;font-size:clamp(22px,3vw,34px);line-height:1.12;font-weight:950}.duration-badge{flex:0 0 auto;width:fit-content;display:inline-flex;align-items:center;border:1px solid rgba(148,163,184,.28);border-radius:999px;background:rgba(255,255,255,.78);color:#475569;padding:8px 10px;font-size:12px;font-weight:900}.timeline-description{max-width:760px;margin:14px 0 0;color:#475569;font-size:16px;line-height:1.7}.opening-actions{margin-top:20px;display:flex;flex-wrap:wrap;gap:10px}.timeline-card-content[hidden]{display:none}
.timeline-accordion{margin-top:22px;display:grid;gap:12px}.timeline-accordion-item{position:relative;overflow:hidden;border:1px solid rgba(203,213,225,.78);border-radius:8px;background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(248,250,252,.82));box-shadow:0 10px 28px rgba(15,23,42,.04);transition:border-color .18s ease,box-shadow .18s ease}.timeline-accordion-item[open]{border-color:var(--step-border);box-shadow:0 18px 46px rgba(15,23,42,.08)}.timeline-accordion-item summary{min-height:78px;display:grid;grid-template-columns:42px minmax(0,1fr) 34px;align-items:center;gap:14px;list-style:none;cursor:pointer;color:#0f172a;padding:16px}.timeline-accordion-item summary::-webkit-details-marker{display:none}.timeline-accordion-item summary::marker{content:""}.timeline-accordion-index{width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--step-border);border-radius:999px;background:var(--step-soft);color:var(--step-color);font-size:12px;font-weight:950}.timeline-accordion-copy{min-width:0;display:grid;gap:5px}.timeline-accordion-copy strong{color:#0f172a;font-size:16px;line-height:1.25;font-weight:950}.timeline-accordion-copy small{color:#64748b;font-size:12px;line-height:1.35;font-weight:800}.timeline-accordion-toggle{width:34px;height:34px;display:grid;place-items:center;border:1px solid rgba(148,163,184,.28);border-radius:999px;background:rgba(255,255,255,.82);color:#64748b}.timeline-accordion-toggle .icon{width:18px;height:18px;transition:transform .18s ease}.timeline-accordion-item[open] .timeline-accordion-toggle{border-color:var(--step-border);background:var(--step-soft);color:var(--step-color)}.timeline-accordion-item[open] .timeline-accordion-toggle .icon{transform:rotate(180deg)}.timeline-accordion-panel{display:grid;gap:12px;border-top:1px solid rgba(226,232,240,.9);background:rgba(255,255,255,.66);padding:16px 16px 18px 72px}.timeline-accordion-panel>p{margin:0;color:#64748b;font-size:14px;line-height:1.65}.timeline-course-flow{display:grid;gap:10px;align-items:start}.timeline-link-label{color:var(--step-color);font-size:11px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.timeline-link-label-secondary{margin-top:4px;color:#64748b}.timeline-course-row,.timeline-link-row{display:flex;flex-wrap:wrap;gap:9px}.timeline-course-launch{justify-self:start;min-height:42px;border-color:var(--step-color);background:linear-gradient(135deg,rgba(255,255,255,.98),color-mix(in srgb,var(--step-color) 13%,white));color:#0f172a;box-shadow:0 14px 28px rgba(15,23,42,.08)}.timeline-link-row .course-button{min-height:36px;border-color:var(--step-border);background:rgba(255,255,255,.9);color:#0f172a;padding:8px 11px;font-size:12px}.timeline-glossary-tools{width:min(100%,760px);display:flex;align-items:center;justify-content:flex-end;justify-self:end;gap:9px;margin-top:5px}.timeline-glossary-tools>span{flex:0 0 auto;color:#94a3b8;font-size:9px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.timeline-glossary-tags{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.timeline-glossary-tag{min-height:27px;display:inline-flex;align-items:center;border:1px solid color-mix(in srgb,var(--step-color) 28%,#dbe4ec);border-radius:999px;background:color-mix(in srgb,var(--step-color) 6%,#fff);color:color-mix(in srgb,var(--step-color) 72%,#334155);padding:5px 9px;font-size:10px;font-weight:900;line-height:1}
.timeline-branches{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:22px}.branch-card{--branch-accent:#0891b2;min-height:150px;border:1px solid rgba(203,213,225,.78);border-radius:8px;background:rgba(255,255,255,.82);padding:16px}.branch-card:nth-child(1),.branch-card--concepts{--branch-accent:#0891b2}.branch-card:nth-child(2),.branch-card--demos{--branch-accent:#d97706}.branch-card:nth-child(3),.branch-card--interactions{--branch-accent:#7c3aed}.branch-card:nth-child(4),.branch-card--checkpoints{--branch-accent:#059669}.branch-card>span{width:34px;height:34px;display:grid;place-items:center;border-radius:8px;background:#f2f6f8;color:var(--branch-accent)}.branch-card .icon{width:17px;height:17px}.branch-card h4{margin:10px 0 8px;color:var(--branch-accent);font-size:14px}.branch-card ul{margin:0;padding-left:17px;color:#64748b;font-size:12px;line-height:1.5}.branch-card li+li{margin-top:4px}
.course-shared-footer{position:relative;display:block;overflow:hidden;background:radial-gradient(circle at 14% 10%,rgba(34,211,238,.1),transparent 25rem),radial-gradient(circle at 88% 16%,rgba(139,92,246,.09),transparent 27rem),linear-gradient(180deg,#f7fafc,#f3f7fb);padding:0 0 96px}
.course-footer-container{padding-top:0;padding-bottom:0}
.course-footer{position:relative;display:block;margin-top:36px;overflow:hidden;border:1px solid rgba(203,213,225,.88);border-radius:24px;color:#0f172a;background:rgba(255,255,255,.94);box-shadow:0 22px 54px rgba(15,23,42,.1)}
.course-footer-intro,.course-footer-links,.course-footer-bottom{position:relative;z-index:1}
.course-footer-intro{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:18px;align-items:center;list-style:none;background:radial-gradient(circle at 7% 10%,rgba(34,211,238,.14),transparent 18rem),radial-gradient(circle at 94% 0,rgba(139,92,246,.11),transparent 22rem),linear-gradient(135deg,#f8fdff,#fbfaff);padding:clamp(26px,3.2vw,38px);cursor:pointer;transition:background .18s ease}
.course-footer-intro::-webkit-details-marker{display:none}.course-footer-intro::marker{content:""}
.course-footer-intro:hover{background:radial-gradient(circle at 7% 10%,rgba(34,211,238,.2),transparent 18rem),radial-gradient(circle at 94% 0,rgba(139,92,246,.16),transparent 22rem),linear-gradient(135deg,#f8fdff,#fbfaff)}
.course-footer[open] .course-footer-intro{border-bottom:1px solid rgba(203,213,225,.72)}
.course-footer-intro:focus-visible{outline:3px solid rgba(8,145,178,.25);outline-offset:-3px}
.course-footer-mark{width:58px;height:58px;display:grid;place-items:center;border:1px solid rgba(8,145,178,.2);border-radius:18px;color:#087f9c;background:rgba(236,254,255,.94);box-shadow:0 0 0 8px rgba(8,145,178,.045)}
.course-footer-mark .icon{width:27px;height:27px}.course-footer .course-kicker{margin:0;color:#087f9c}
.course-footer h2{margin:5px 0 7px;color:#071426;font-size:clamp(27px,3vw,40px);line-height:1.04;font-weight:950}
.course-footer-intro-copy>p:not(.course-kicker){max-width:720px;margin:0;color:#5b6d85;font-size:14px;line-height:1.6}
.course-footer-toggle{min-width:204px;display:grid;grid-template-columns:34px minmax(0,1fr);gap:11px;align-items:center;border:1px solid #d7e1eb;border-radius:14px;color:#172033;background:rgba(255,255,255,.82);padding:11px 14px;box-shadow:0 7px 18px rgba(15,23,42,.05);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.course-footer-toggle-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;color:#087f9c;background:#ecfeff}.course-footer-toggle-icon .icon{width:17px;height:17px;transition:transform .18s ease}
.course-footer-toggle>span:last-child{display:grid;gap:2px}.course-footer-toggle strong{display:block;font-size:12px;font-weight:900}.course-footer-toggle small{color:#718198;font-size:10px;font-weight:700}.course-footer-toggle-close{display:none!important}.course-footer[open] .course-footer-toggle-open{display:none}.course-footer[open] .course-footer-toggle-close{display:block!important}.course-footer[open] .course-footer-toggle-icon .icon{transform:rotate(180deg)}
.course-footer-intro:hover .course-footer-toggle{border-color:rgba(8,145,178,.42);box-shadow:0 10px 24px rgba(8,145,178,.1);transform:translateY(-2px)}
.course-footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:clamp(18px,2.4vw,28px)}
.course-footer-group{--footer-accent:#0891b2;--footer-soft:#ecfeff;--footer-border:rgba(8,145,178,.2);display:grid;align-content:start;gap:10px;overflow:hidden;border:1px solid var(--footer-border);border-radius:18px;background:radial-gradient(circle at 100% 0,var(--footer-soft),transparent 13rem),#fbfdff;padding:18px}
.course-footer-group--cyan{--footer-accent:#0891b2;--footer-soft:#ecfeff;--footer-border:rgba(8,145,178,.2)}
.course-footer-group--emerald{--footer-accent:#059669;--footer-soft:#ecfdf5;--footer-border:rgba(5,150,105,.19)}.course-footer-group--violet{--footer-accent:#7c3aed;--footer-soft:#f5f3ff;--footer-border:rgba(124,58,237,.18)}.course-footer-group--orange{--footer-accent:#d97706;--footer-soft:#fff7ed;--footer-border:rgba(217,119,6,.2)}
.course-footer-group-head{display:flex;align-items:center;gap:11px}.course-footer-group-icon{width:42px;height:42px;flex:0 0 auto;display:grid;place-items:center;border:1px solid var(--footer-border);border-radius:13px;color:var(--footer-accent);background:var(--footer-soft)}.course-footer-group-icon .icon{width:20px;height:20px}.course-footer-group-head>div{display:grid;gap:2px}.course-footer-group-head span:not(.course-footer-group-icon){color:var(--footer-accent);font-size:10px;font-weight:950;letter-spacing:.1em;text-transform:uppercase}.course-footer-group h3{margin:0;color:#142033;font-size:18px;line-height:1.15;font-weight:950}.course-footer-group-description{min-height:37px;margin:0;color:#64748b;font-size:12px;line-height:1.5}
.course-footer-destinations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.course-footer-destination{width:100%;min-height:70px;display:grid;grid-template-columns:34px minmax(0,1fr) 14px;align-items:center;gap:9px;border:1px solid rgba(203,213,225,.78);border-radius:12px;color:#172033;background:rgba(255,255,255,.88);padding:9px 10px;font:inherit;text-align:left;text-decoration:none;cursor:pointer;box-shadow:0 3px 10px rgba(15,23,42,.025);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.course-footer-destination:hover{border-color:var(--footer-accent);color:#172033;background:#fff;text-decoration:none;box-shadow:0 8px 18px rgba(15,23,42,.07);transform:translateY(-2px)}.course-footer-link-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;color:var(--footer-accent);background:var(--footer-soft)}.course-footer-link-icon .icon{width:16px;height:16px}.course-footer-destination>span:nth-child(2){min-width:0;display:grid;gap:3px}.course-footer-destination strong{color:#172033;font-size:11px;font-weight:900;line-height:1.25}.course-footer-destination small{color:#718198;font-size:9.5px;font-weight:650;line-height:1.32}.course-footer-destination>.icon{width:14px;height:14px;color:var(--footer-accent);opacity:.62;transition:opacity .18s ease,transform .18s ease}.course-footer-destination:hover>.icon{opacity:1;transform:translate(2px,-2px)}
.course-footer-destination:focus-visible,.course-footer-bottom a:focus-visible{outline:3px solid color-mix(in srgb,var(--footer-accent,#0891b2) 24%,transparent);outline-offset:2px}
.course-footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid rgba(203,213,225,.72);background:#f8fafc;padding:15px clamp(18px,2.4vw,28px);color:#64748b;font-size:11px;font-weight:700}.course-footer-bottom>span,.course-footer-bottom a{display:inline-flex;align-items:center;gap:8px}.course-footer-bottom>span .icon{width:15px;height:15px;color:#0891b2}.course-footer-bottom a{flex:0 0 auto;border-radius:10px;color:#087f9c;padding:7px 9px;font-weight:900;text-decoration:none;transition:background .18s ease,transform .18s ease}.course-footer-bottom a:hover{background:#ecfeff;text-decoration:none;transform:translateX(2px)}.course-footer-bottom a .icon{width:14px;height:14px}

/* Présentation formateur — composition canonique issue d'AuthWeb. */
.page-container{min-height:100vh;display:grid;align-content:start;gap:18px}.course-page-nav{display:flex;align-items:center;justify-content:space-between;gap:12px}.course-back,.course-next{width:fit-content;min-height:42px;display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(148,163,184,.28);border-radius:999px;background:rgba(255,255,255,.86);color:#334155;padding:10px 14px;box-shadow:0 10px 28px rgba(15,23,42,.08);font-weight:750;text-decoration:none}.course-next{margin-left:auto;border-color:rgba(16,185,129,.28);background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(236,253,245,.9)),radial-gradient(circle at top right,rgba(16,185,129,.16),transparent 42%);color:#065f46}.course-next span{color:#059669;font-size:10px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.course-back .icon,.course-next .icon{width:16px;height:16px}
.opening-page-card{border:1px solid rgba(226,232,240,.9);border-radius:8px;background:rgba(255,255,255,.84);box-shadow:0 24px 70px rgba(15,23,42,.09);backdrop-filter:blur(16px);padding:clamp(22px,4vw,42px)}.trainer-card{display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);gap:clamp(24px,5vw,52px);align-items:start}.trainer-cv{padding:clamp(20px,3.6vw,38px)}.trainer-aside{position:sticky;top:28px;display:grid;gap:16px}.trainer-photo{position:relative;aspect-ratio:1;overflow:hidden;border:1px solid rgba(148,163,184,.28);border-radius:8px;background:radial-gradient(circle at 30% 20%,rgba(34,211,238,.2),transparent 38%),linear-gradient(135deg,#f8fafc,#eef2ff);box-shadow:0 24px 70px rgba(15,23,42,.14)}.trainer-photo::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.45);pointer-events:none}.trainer-photo img{width:100%;height:100%;display:block;object-fit:cover}.trainer-identity{display:grid;gap:8px}.trainer-identity h1{margin:0;color:#020617;font-size:clamp(40px,6vw,72px);line-height:1;letter-spacing:0;font-weight:950}.trainer-identity p:not(.course-kicker){margin:0;color:#475569;font-size:15px;line-height:1.6;font-weight:750}.trainer-copy{display:grid;gap:18px}.trainer-intro{display:grid;gap:12px}.trainer-lead{margin:0;max-width:940px;color:#475569;font-size:clamp(17px,2vw,22px);line-height:1.55;font-weight:650}.trainer-intro p:not(.trainer-lead){margin:0;color:#64748b;font-size:16px;line-height:1.7;font-weight:600}
.trainer-facts{display:flex;flex-wrap:wrap;gap:10px}.trainer-facts-column{display:grid}.trainer-facts span{min-height:38px;display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(148,163,184,.28);border-radius:999px;background:#fff;color:#475569;padding:8px 11px;font-size:12px;font-weight:850}.trainer-facts .icon{width:15px;height:15px}.trainer-word-cloud{display:flex;flex-wrap:wrap;gap:8px;border:1px solid rgba(226,232,240,.9);border-radius:8px;background:linear-gradient(135deg,rgba(255,255,255,.84),rgba(248,250,252,.72)),radial-gradient(circle at 22% 12%,rgba(139,92,246,.11),transparent 38%);padding:14px}.trainer-word-cloud span{display:inline-flex;align-items:center;min-height:30px;border:1px solid rgba(148,163,184,.22);border-radius:999px;background:rgba(255,255,255,.82);color:#475569;padding:6px 9px;font-size:11px;line-height:1;font-weight:900}.trainer-word-cloud span:nth-child(3n){color:#0891b2;background:rgba(236,254,255,.8)}.trainer-word-cloud span:nth-child(4n){color:#7c3aed;background:rgba(245,243,255,.82);font-size:12px}.trainer-word-cloud span:nth-child(5n){color:#059669;background:rgba(236,253,245,.82)}
.trainer-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.trainer-stats div{min-height:104px;display:grid;align-content:space-between;gap:10px;border:1px solid rgba(226,232,240,.95);border-radius:8px;background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(248,250,252,.78)),radial-gradient(circle at top right,rgba(34,211,238,.12),transparent 46%);padding:16px}.trainer-stats strong{color:#020617;font-size:clamp(28px,4vw,42px);line-height:1;font-weight:950}.trainer-stats span{color:#64748b;font-size:12px;line-height:1.35;font-weight:850}.trainer-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.trainer-profile-grid-compact{align-items:stretch}.trainer-panel{display:grid;align-content:start;gap:12px;border:1px solid rgba(226,232,240,.9);border-radius:8px;background:rgba(248,250,252,.72);padding:18px}.trainer-panel h2{margin:0;color:#0f172a;font-size:24px;line-height:1.15;letter-spacing:0;font-weight:950}.trainer-panel p{margin:0;color:#64748b;line-height:1.65}.trainer-dawap{background:linear-gradient(135deg,rgba(236,254,255,.74),rgba(255,255,255,.86) 42%,rgba(245,243,255,.74)),rgba(248,250,252,.82)}.trainer-warning{background:linear-gradient(135deg,rgba(255,251,235,.76),rgba(255,255,255,.9) 52%,rgba(255,241,242,.58))}.trainer-diplomas{background:linear-gradient(135deg,rgba(240,253,250,.78),rgba(255,255,255,.9) 45%,rgba(239,246,255,.72)),rgba(248,250,252,.82)}
.cv-list{margin:0;padding:0;display:grid;gap:10px;list-style:none}.cv-list li{position:relative;padding-left:20px;color:#64748b;line-height:1.58}.cv-list li::before{content:"";position:absolute;top:.66em;left:0;width:7px;height:7px;border-radius:999px;background:#06b6d4;box-shadow:0 0 0 4px rgba(6,182,212,.1)}.skill-cloud,.domain-grid{display:flex;flex-wrap:wrap;gap:8px}.skill-cloud span,.domain-grid span{min-height:34px;display:inline-flex;align-items:center;border:1px solid rgba(148,163,184,.24);border-radius:999px;background:rgba(255,255,255,.78);color:#475569;padding:7px 10px;font-size:12px;font-weight:850}.domain-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.domain-grid span{justify-content:center;border-radius:8px;text-align:center}.diploma-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.diploma-list article{display:grid;align-content:start;gap:7px;min-height:178px;border:1px solid rgba(226,232,240,.92);border-radius:8px;background:rgba(255,255,255,.8);padding:14px}.diploma-list span{width:fit-content;border-radius:999px;background:rgba(14,165,233,.1);color:#0369a1;padding:5px 8px;font-size:11px;font-weight:950}.diploma-list strong{color:#0f172a;font-size:15px;line-height:1.25}.diploma-list p{font-size:13px}.experience-list{display:grid;gap:10px}.experience-list article{position:relative;display:grid;gap:5px;border:1px solid rgba(226,232,240,.9);border-radius:8px;background:rgba(255,255,255,.78);padding:14px 14px 14px 18px;overflow:hidden}.experience-list article::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,#06b6d4,#8b5cf6)}.experience-list span{color:#0891b2;font-size:11px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.experience-list strong{color:#0f172a;font-size:16px;line-height:1.35}.experience-list p{margin:0;color:#64748b;line-height:1.58}

/* Déroulé global — composition canonique AuthWeb. */
.opening-page-head{display:grid;gap:12px}.opening-page-head h1{margin:0;color:#020617;font-size:clamp(40px,6vw,72px);line-height:1;letter-spacing:0;font-weight:950}.opening-page-head>p:not(.course-kicker){max-width:940px;margin:0;color:#475569;font-size:clamp(17px,2vw,22px);line-height:1.55;font-weight:650}.program-headline{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(24px,4vw,54px);align-items:end}.opening-page-head .program-headline h1{max-width:700px;font-size:clamp(42px,4.4vw,56px)}.program-duration{display:grid;grid-template-columns:repeat(2,minmax(120px,1fr));gap:8px;max-width:410px}.program-duration>span{min-height:72px;display:flex;align-items:center;gap:9px;border:1px solid rgba(14,165,233,.16);border-radius:8px;background:linear-gradient(135deg,rgba(236,254,255,.78),rgba(255,255,255,.9));color:#475569;padding:12px 14px;font-size:12px;line-height:1.35;font-weight:750}.program-duration strong{color:#0891b2;font-size:30px;line-height:1;font-weight:950}.program-flow{position:relative;margin:30px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;list-style:none}.program-flow::before{content:"";position:absolute;z-index:0;top:23px;left:10%;right:10%;height:2px;background:linear-gradient(90deg,#10b981,#8b5cf6,#f59e0b,#f43f5e);opacity:.42}.program-flow li{position:relative;z-index:1;min-height:92px;display:grid;grid-template-columns:46px minmax(0,1fr);grid-template-rows:auto auto;column-gap:10px;align-content:center;border:1px solid rgba(226,232,240,.94);border-radius:8px;background:rgba(255,255,255,.92);padding:12px}.program-flow li>span{grid-row:1/3;width:46px;height:46px;display:grid;place-items:center;border-radius:50%;color:#fff;font-size:12px;font-weight:950;box-shadow:0 8px 22px rgba(15,23,42,.12)}.program-flow li>strong{align-self:end;color:#0f172a;font-size:15px;font-weight:950}.program-flow li>small{align-self:start;color:#64748b;font-size:11px;font-weight:700}.program-flow .is-theory>span{background:#10b981}.program-flow .is-demo>span{background:#8b5cf6}.program-flow .is-practice>span{background:#f59e0b}.program-flow .is-evaluation>span{background:#f43f5e}
.program-grid{margin-top:32px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.program-card{position:relative;min-height:450px;display:grid;grid-template-rows:auto auto auto 1fr auto;align-content:stretch;gap:12px;border:1px solid rgba(226,232,240,.95);border-radius:8px;background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(248,250,252,.82));padding:22px;overflow:hidden}.program-card::before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--program-accent,#0891b2);opacity:.75}.program-card-top{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:12px;align-items:center}.program-card-meta{min-width:0}.program-card-meta .course-kicker{margin-bottom:4px}.program-card-meta>span{display:block;color:#64748b;font-size:11px;font-weight:750}.program-step{align-self:start;color:var(--program-accent,#0891b2);font-size:26px;line-height:1;font-weight:950;opacity:.24}.program-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:8px}.program-icon .icon{width:23px;height:23px}.program-card h2{margin:0;color:#0f172a;font-size:24px;line-height:1.15;letter-spacing:0;font-weight:950}.program-card-summary{margin:0;color:#475569;font-size:14px;line-height:1.55;font-weight:650}.program-card ul{margin:0;padding-left:18px;display:grid;gap:9px;color:#64748b;font-size:13px;line-height:1.55}.program-card li strong{color:#334155}.program-outcome{display:grid;grid-template-columns:18px minmax(0,1fr);gap:9px;align-items:start;border-top:1px solid rgba(226,232,240,.9);color:#475569;padding-top:13px;font-size:12px;line-height:1.45}.program-outcome .icon{width:16px;height:16px;color:var(--program-accent,#0891b2)}.program-outcome strong{color:var(--program-accent,#0891b2)}.tone-cyan{--program-accent:#0891b2}.tone-emerald{--program-accent:#059669}.tone-violet{--program-accent:#7c3aed}.tone-amber{--program-accent:#d97706}.tone-rose{--program-accent:#e11d48}.tone-cyan .program-icon{background:#ecfeff;color:#0891b2}.tone-emerald .program-icon{background:#ecfdf5;color:#059669}.tone-violet .program-icon{background:#f5f3ff;color:#7c3aed}.tone-amber .program-icon{background:#fffbeb;color:#d97706}.tone-rose .program-icon{background:#fff1f2;color:#e11d48}

/* Tour de table — questions et échelle AuthWeb. */
.roundtable-grid{margin-top:32px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.question-card{min-height:172px;display:grid;align-content:start;gap:10px;border:1px solid rgba(226,232,240,.9);border-radius:8px;background:rgba(255,255,255,.76);padding:16px}.question-card>span{width:34px;height:34px;display:grid;place-items:center;border-radius:999px;background:#ecfeff;color:#0891b2;font-size:12px;font-weight:950}.question-card>strong{color:#0f172a;font-size:18px;font-weight:950}.question-card p{margin:0;color:#64748b;line-height:1.55}.interest-scale{margin-top:20px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;border:1px solid rgba(226,232,240,.9);border-radius:8px;background:rgba(248,250,252,.72);padding:18px}.interest-scale h2{margin:0;color:#0f172a;font-size:24px;line-height:1.15;letter-spacing:0;font-weight:950}.interest-scale p{margin:0;color:#64748b;line-height:1.65}.scale-row{display:grid;grid-template-columns:repeat(6,48px);gap:8px}.scale-row span{width:48px;height:48px;display:grid;place-items:center;border:1px solid rgba(14,165,233,.24);border-radius:999px;background:#fff;color:#0f172a;font-size:17px;font-weight:950}
.diagnostic-page{display:grid;gap:24px}.diagnostic-head{max-width:940px}.diagnostic-focus{display:grid;grid-template-columns:72px minmax(0,1fr);gap:18px;align-items:center;border:1px solid rgba(14,165,233,.18);border-radius:8px;background:radial-gradient(circle at top left,rgba(34,211,238,.18),transparent 32%),linear-gradient(135deg,#0f172a,#1e293b 62%,#155e75);color:#fff;padding:clamp(18px,3vw,28px);box-shadow:0 22px 55px rgba(15,23,42,.16)}.diagnostic-focus>.icon{width:58px;height:58px;color:#67e8f9}.diagnostic-focus div{display:grid;gap:8px}.diagnostic-focus span{color:#67e8f9;font-size:12px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.diagnostic-focus strong{font-size:clamp(28px,5vw,54px);line-height:1.05;font-weight:950}.diagnostic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.dialogue-card{min-height:220px;display:grid;align-content:start;gap:12px;border:1px solid rgba(226,232,240,.9);border-radius:8px;background:rgba(255,255,255,.78);padding:18px;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.dialogue-card:hover{transform:translateY(-2px);border-color:rgba(14,165,233,.22);box-shadow:0 18px 45px rgba(15,23,42,.09)}.dialogue-card>span{width:38px;height:38px;display:grid;place-items:center;border-radius:999px;background:#f8fafc;color:#0f172a;font-size:12px;font-weight:950}.dialogue-card h2,.listening-board h2{margin:0;color:#0f172a;font-size:clamp(22px,3vw,30px);line-height:1.1;font-weight:950;letter-spacing:0}.dialogue-card p{margin:0;color:#64748b;font-size:16px;line-height:1.62;font-weight:650}.dialogue-card.tone-cyan>span{background:#ecfeff;color:#0891b2}.dialogue-card.tone-violet>span{background:#f5f3ff;color:#7c3aed}.dialogue-card.tone-amber>span{background:#fffbeb;color:#d97706}.dialogue-card.tone-emerald>span{background:#ecfdf5;color:#059669}.listening-board{display:grid;grid-template-columns:minmax(240px,.85fr) minmax(0,1.15fr);gap:18px;align-items:start;border:1px solid rgba(226,232,240,.9);border-radius:8px;background:linear-gradient(135deg,rgba(248,250,252,.88),rgba(255,255,255,.84)),radial-gradient(circle at bottom right,rgba(16,185,129,.11),transparent 34%);padding:20px}.listening-tags{display:flex;flex-wrap:wrap;gap:9px}.listening-tags span{min-height:36px;display:inline-flex;align-items:center;border:1px solid rgba(148,163,184,.24);border-radius:999px;background:rgba(255,255,255,.82);color:#475569;padding:8px 11px;font-size:12px;font-weight:850}

/* Fondations — pourquoi, six notions et conclusion. */
.foundation-hub,.foundation-lesson,.foundation-conclusion,.history-page,.panorama-page{display:grid;gap:30px}.foundation-hero{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);gap:34px;align-items:center}.foundation-hero h1,.foundation-lesson h1{margin:7px 0 14px;color:#020617;font-size:clamp(42px,5vw,66px);line-height:1;letter-spacing:0;font-weight:950}.foundation-hero>div>p:not(.course-kicker),.foundation-lesson header>p:not(.course-kicker){margin:0;color:#64748b;font-size:17px;line-height:1.65;font-weight:650}.foundation-question{min-height:230px;display:grid;align-content:center;gap:12px;border:1px solid rgba(14,165,233,.16);border-radius:8px;background:radial-gradient(circle at top right,rgba(34,211,238,.18),transparent 40%),linear-gradient(135deg,#0f172a,#1e293b 65%,#155e75);color:#fff;padding:24px;box-shadow:0 22px 54px rgba(15,23,42,.15)}.foundation-question>.icon{width:38px;height:38px;color:#67e8f9}.foundation-question span{color:#67e8f9;font-size:11px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.foundation-question strong{font-size:22px;line-height:1.3;font-weight:900}.foundation-map-head{display:flex;align-items:end;justify-content:space-between;gap:18px}.foundation-map-head h2{margin:4px 0 0;color:#020617;font-size:clamp(28px,3.5vw,42px);font-weight:950}.demo-badge{flex:0 0 auto;border:1px solid rgba(245,158,11,.25);border-radius:999px;background:#fffbeb;color:#b45309;padding:7px 11px;font-size:11px;font-weight:900}.foundation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.foundation-card{--foundation-accent:#0891b2;min-height:172px;display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:15px;align-items:start;border:1px solid rgba(226,232,240,.94);border-radius:8px;background:rgba(255,255,255,.84);color:#0f172a;padding:18px;text-decoration:none;box-shadow:0 12px 32px rgba(15,23,42,.055);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.foundation-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--foundation-accent) 36%,transparent);box-shadow:0 22px 46px rgba(15,23,42,.1)}.foundation-card.tone-emerald{--foundation-accent:#059669}.foundation-card.tone-violet{--foundation-accent:#7c3aed}.foundation-card.tone-amber{--foundation-accent:#d97706}.foundation-card.tone-rose{--foundation-accent:#e11d48}.foundation-number{width:52px;height:52px;display:grid;place-items:center;border-radius:999px;background:color-mix(in srgb,var(--foundation-accent) 10%,white);color:var(--foundation-accent);font-size:14px;font-weight:950}.foundation-card-copy{display:grid;gap:6px}.foundation-card-copy small{color:var(--foundation-accent);font-size:10px;font-weight:950;text-transform:uppercase}.foundation-card-copy strong{font-size:19px;font-weight:950}.foundation-card-copy p{margin:0;color:#475569;font-size:14px;line-height:1.5}.foundation-card-copy em{color:#64748b;font-size:11px;line-height:1.4;font-style:normal;font-weight:750}.foundation-arrow{align-self:center;color:var(--foundation-accent);font-size:25px;font-weight:900}.foundation-conclusion-cta{min-height:84px;display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:14px;align-items:center;border:1px solid rgba(16,185,129,.24);border-radius:8px;background:linear-gradient(135deg,rgba(236,253,245,.84),rgba(255,255,255,.9));padding:15px 18px;text-decoration:none}.foundation-conclusion-cta>span:first-child{width:44px;height:44px;display:grid;place-items:center;border-radius:8px;background:#0f172a;color:#5eead4}.foundation-conclusion-cta small,.foundation-conclusion-cta strong{display:block}.foundation-conclusion-cta small{color:#059669;font-size:10px;font-weight:950;text-transform:uppercase}.foundation-conclusion-cta strong{font-size:18px;font-weight:950}
.foundation-lesson-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:18px;align-items:start}.foundation-local-nav{position:sticky;top:24px;display:grid;gap:7px;border:1px solid rgba(226,232,240,.9);border-radius:8px;background:rgba(255,255,255,.86);padding:16px;box-shadow:0 18px 48px rgba(15,23,42,.07)}.foundation-local-nav>a{display:grid;grid-template-columns:26px minmax(0,1fr);gap:8px;align-items:center;border-left:3px solid transparent;color:#64748b;padding:9px 10px;text-decoration:none;font-size:11px;font-weight:850}.foundation-local-nav>a span{color:#0891b2;font-weight:950}.foundation-local-nav>a.active{border-color:#0891b2;background:#ecfeff;color:#0f172a}.foundation-local-nav>.foundation-home-link{display:block;border:1px solid rgba(148,163,184,.24);border-radius:8px;background:#f8fafc;color:#334155;text-align:center}.foundation-placeholder-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.foundation-placeholder{--foundation-accent:#0891b2;min-height:250px;display:grid;grid-template-columns:42px minmax(0,1fr);gap:14px;align-content:start;border:1px solid rgba(226,232,240,.92);border-radius:8px;background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(248,250,252,.75));padding:18px}.foundation-placeholder.tone-violet{--foundation-accent:#7c3aed}.foundation-placeholder.tone-amber{--foundation-accent:#d97706}.foundation-placeholder.tone-emerald{--foundation-accent:#059669}.foundation-placeholder>span{width:42px;height:42px;display:grid;place-items:center;border-radius:999px;background:color-mix(in srgb,var(--foundation-accent) 10%,white);color:var(--foundation-accent);font-size:12px;font-weight:950}.foundation-placeholder div{display:grid;align-content:start;gap:9px}.foundation-placeholder small{color:var(--foundation-accent);font-size:10px;font-weight:950;text-transform:uppercase}.foundation-placeholder h2{margin:0;color:#0f172a;font-size:22px;line-height:1.2;font-weight:950;letter-spacing:0}.foundation-placeholder p{margin:0;color:#64748b;line-height:1.6}.foundation-recap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.foundation-recap a{min-height:142px;display:grid;align-content:start;gap:7px;border:1px solid rgba(226,232,240,.92);border-radius:8px;background:rgba(255,255,255,.82);padding:14px;text-decoration:none}.foundation-recap span{width:32px;height:32px;display:grid;place-items:center;border-radius:999px;background:#ecfeff;color:#0891b2;font-size:11px;font-weight:950}.foundation-recap strong{font-size:15px;font-weight:950}.foundation-recap small{color:#64748b;line-height:1.4}.conclusion-rules{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:18px;align-items:start;border:1px solid rgba(226,232,240,.9);border-radius:8px;background:#f8fafc;padding:20px}.conclusion-rules h2{margin:4px 0 0;font-size:27px;letter-spacing:0}.conclusion-rules ol{margin:0;display:grid;gap:9px}.conclusion-rules li{border:1px solid rgba(148,163,184,.22);border-radius:8px;background:white;padding:11px;color:#475569;font-weight:800}.conclusion-checkpoint{display:grid;grid-template-columns:52px minmax(0,1fr);gap:15px;align-items:center;border-radius:8px;background:linear-gradient(135deg,#0f172a,#1e293b 62%,#155e75);color:#fff;padding:20px}.conclusion-checkpoint>.icon{width:42px;height:42px;color:#5eead4}.conclusion-checkpoint small,.conclusion-checkpoint strong{display:block}.conclusion-checkpoint small{margin-bottom:6px;color:#5eead4;font-size:10px;font-weight:950;text-transform:uppercase}.conclusion-checkpoint strong{font-size:19px;line-height:1.4}

/* Timeline et panorama démonstratifs — aucune donnée de domaine n'est présentée comme réelle. */
.history-legend{display:flex;flex-wrap:wrap;gap:8px}.history-legend span{border:1px solid rgba(148,163,184,.24);border-radius:999px;background:#f8fafc;color:#475569;padding:7px 11px;font-size:11px;font-weight:900}.history-track{position:relative;display:grid;gap:20px}.history-track::before{content:"";position:absolute;top:30px;bottom:30px;left:27px;width:3px;border-radius:999px;background:linear-gradient(#06b6d4,#8b5cf6,#f59e0b,#10b981)}.history-event{position:relative;display:grid;grid-template-columns:58px minmax(0,1fr);gap:18px}.history-event-marker{position:relative;z-index:1;padding-top:18px}.history-event-marker span{width:58px;height:58px;display:grid;place-items:center;border:1px solid rgba(14,165,233,.28);border-radius:999px;background:#ecfeff;color:#0891b2;font-size:13px;font-weight:950;box-shadow:0 12px 28px rgba(15,23,42,.1)}.history-event-card{display:grid;gap:14px;border:1px solid rgba(226,232,240,.94);border-radius:8px;background:rgba(255,255,255,.86);padding:20px;box-shadow:0 14px 38px rgba(15,23,42,.06)}.history-event-title{display:grid;gap:5px}.history-event-title span{color:#0891b2;font-size:10px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.history-event-title h2{margin:0;color:#0f172a;font-size:25px;letter-spacing:0}.history-event-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.history-event-grid section{border:1px solid rgba(226,232,240,.9);border-radius:8px;background:#f8fafc;padding:13px}.history-event-grid small{display:block;margin-bottom:6px;font-size:10px;font-weight:950;text-transform:uppercase}.history-event-grid p{margin:0;color:#64748b;font-size:13px;line-height:1.55}.history-event-grid .is-problem small{color:#e11d48}.history-event-grid .is-response small{color:#059669}.history-event-grid .is-limit small{color:#d97706}.history-conclusion{display:grid;grid-template-columns:42px minmax(0,1fr);gap:14px;align-items:center;border:1px solid rgba(139,92,246,.2);border-radius:8px;background:linear-gradient(135deg,#f5f3ff,#fff);padding:18px}.history-conclusion>.icon{width:32px;height:32px;color:#7c3aed}.history-conclusion p{margin:0;color:#475569;font-weight:800}
.panorama-criteria{display:grid;grid-template-columns:minmax(230px,.72fr) minmax(0,1.28fr);gap:18px;align-items:center;border:1px solid rgba(14,165,233,.17);border-radius:8px;background:linear-gradient(135deg,#ecfeff,#fff 52%,#f5f3ff);padding:20px}.panorama-criteria h2{margin:4px 0 0;color:#0f172a;font-size:27px;letter-spacing:0}.panorama-criteria>div:last-child{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.panorama-criteria span{display:flex;align-items:center;gap:9px;border:1px solid rgba(148,163,184,.23);border-radius:8px;background:rgba(255,255,255,.82);padding:10px;color:#475569;font-size:12px;font-weight:850}.panorama-criteria i{width:28px;height:28px;display:grid;place-items:center;border-radius:999px;background:#0f172a;color:#67e8f9;font-size:9px;font-style:normal;font-weight:950}.panorama-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.panorama-card{--panorama-accent:#0891b2;min-height:335px;display:grid;grid-template-rows:auto 1fr 1fr auto;gap:12px;border:1px solid rgba(226,232,240,.94);border-radius:8px;background:rgba(255,255,255,.84);padding:20px;box-shadow:0 14px 38px rgba(15,23,42,.055)}.panorama-card.tone-emerald{--panorama-accent:#059669}.panorama-card.tone-violet{--panorama-accent:#7c3aed}.panorama-card.tone-amber{--panorama-accent:#d97706}.panorama-card header{display:grid;gap:5px;border-bottom:2px solid color-mix(in srgb,var(--panorama-accent) 25%,transparent);padding-bottom:12px}.panorama-card header span,.panorama-card small{color:var(--panorama-accent);font-size:10px;font-weight:950;text-transform:uppercase}.panorama-card header strong{font-size:23px;font-weight:950}.panorama-card section{border-radius:8px;background:#f8fafc;padding:12px}.panorama-card p{margin:5px 0 0;color:#64748b;font-size:13px;line-height:1.55}.panorama-card footer{display:grid;gap:5px;border-radius:8px;background:color-mix(in srgb,var(--panorama-accent) 8%,white);padding:12px}.panorama-card footer strong{color:#334155;font-size:13px;line-height:1.45}.panorama-decision{display:grid;grid-template-columns:56px minmax(0,1fr);gap:16px;align-items:center;border-radius:8px;background:linear-gradient(135deg,#0f172a,#1e293b 62%,#155e75);color:#fff;padding:22px}.panorama-decision>.icon{width:46px;height:46px;color:#67e8f9}.panorama-decision small,.panorama-decision strong{display:block}.panorama-decision small{margin-bottom:6px;color:#67e8f9;font-size:10px;font-weight:950;text-transform:uppercase}.panorama-decision strong{font-size:19px;line-height:1.42}
/* Navigation de chapitre AuthWeb : une synthèse cliquable puis des pages filles. */
.history-event{color:inherit;text-decoration:none}.history-event-card{transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.history-event:hover .history-event-card{transform:translateY(-2px);border-color:rgba(14,165,233,.3);box-shadow:0 22px 48px rgba(15,23,42,.1)}.history-conclusion{grid-template-columns:42px minmax(0,1fr) auto}.chapter-card-action{justify-self:end;color:#0891b2;font-size:11px;font-weight:950;text-transform:uppercase}.chapter-conclusion-link{color:inherit;text-decoration:none}.chapter-conclusion-link>span:last-child{font-size:24px;font-weight:950}
.panorama-card{grid-template-rows:auto 1fr 1fr auto auto;min-height:350px;color:#0f172a;text-decoration:none;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.panorama-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--panorama-accent) 34%,transparent);box-shadow:0 22px 48px rgba(15,23,42,.1)}.panorama-card .chapter-card-action{color:var(--panorama-accent)}.panorama-decision{grid-template-columns:56px minmax(0,1fr) auto;text-decoration:none}.panorama-decision strong{color:#fff}
.sequence-child-page,.sequence-conclusion-page{display:grid;gap:26px}.sequence-child-hero{--sequence-accent:#0891b2;display:grid;grid-template-columns:minmax(0,1fr) 118px;gap:28px;align-items:center;border:1px solid color-mix(in srgb,var(--sequence-accent) 22%,#e2e8f0);border-radius:8px;background:radial-gradient(circle at top right,color-mix(in srgb,var(--sequence-accent) 13%,transparent),transparent 34%),linear-gradient(135deg,#fff,#f8fafc);padding:clamp(20px,3vw,30px)}.sequence-child-hero.tone-emerald{--sequence-accent:#059669}.sequence-child-hero.tone-violet{--sequence-accent:#7c3aed}.sequence-child-hero.tone-amber{--sequence-accent:#d97706}.sequence-child-hero.tone-rose{--sequence-accent:#e11d48}.sequence-child-hero h1{margin:6px 0 10px;color:#020617;font-size:clamp(42px,5vw,66px);line-height:1;letter-spacing:0;font-weight:950}.sequence-child-hero p:not(.course-kicker){margin:0;color:#64748b;font-size:16px;font-weight:700}.sequence-child-badge{width:112px;height:112px;display:grid;place-content:center;gap:4px;border:1px solid color-mix(in srgb,var(--sequence-accent) 30%,#e2e8f0);border-radius:28px;background:color-mix(in srgb,var(--sequence-accent) 8%,white);color:var(--sequence-accent);text-align:center}.sequence-child-badge span{font-size:37px;line-height:1;font-weight:950}.sequence-child-badge small{font-size:9px;font-weight:950;text-transform:uppercase}.sequence-child-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.sequence-child-panel{--panel-accent:#0891b2;min-height:225px;display:grid;grid-template-columns:42px minmax(0,1fr);gap:14px;align-content:start;border:1px solid rgba(226,232,240,.92);border-radius:8px;background:rgba(248,250,252,.76);padding:18px}.sequence-child-panel.tone-emerald{--panel-accent:#059669}.sequence-child-panel.tone-violet{--panel-accent:#7c3aed}.sequence-child-panel.tone-amber{--panel-accent:#d97706}.sequence-child-panel.tone-rose{--panel-accent:#e11d48}.sequence-child-panel>span{width:42px;height:42px;display:grid;place-items:center;border-radius:999px;background:color-mix(in srgb,var(--panel-accent) 10%,white);color:var(--panel-accent);font-size:11px;font-weight:950}.sequence-child-panel div{display:grid;align-content:start;gap:8px}.sequence-child-panel small{color:var(--panel-accent);font-size:10px;font-weight:950;text-transform:uppercase}.sequence-child-panel h2{margin:0;color:#0f172a;font-size:22px;line-height:1.2;letter-spacing:0;font-weight:950}.sequence-child-panel p{margin:0;color:#64748b;line-height:1.58}.sequence-recap-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.sequence-recap-grid a{min-height:145px;display:grid;align-content:start;gap:7px;border:1px solid rgba(226,232,240,.92);border-radius:8px;background:#fff;color:#0f172a;padding:14px;text-decoration:none}.sequence-recap-grid span{width:32px;height:32px;display:grid;place-items:center;border-radius:999px;background:#ecfeff;color:#0891b2;font-size:10px;font-weight:950}.sequence-recap-grid strong{font-size:15px;font-weight:950}.sequence-recap-grid small{color:#64748b;line-height:1.42}

/* Conclusion de timeline — frise synthétique des grandes périodes. */
.timeline-summary-page .page-container{width:min(1480px,calc(100% - 48px))}
.timeline-summary-sheet{display:grid;gap:20px;padding:clamp(24px,2.5vw,38px)}
.timeline-summary-head{display:grid;gap:7px;max-width:1050px}
.timeline-summary-head h1{margin:0;color:#020617;font-size:clamp(38px,4.1vw,62px);line-height:1;letter-spacing:-.035em;font-weight:950}
.timeline-summary-head>p:last-child{max-width:980px;margin:2px 0 0;color:#64748b;font-size:15px;line-height:1.55;font-weight:650}
.timeline-summary-frieze{overflow:hidden;border:1px solid rgba(148,163,184,.25);border-radius:12px;background:linear-gradient(180deg,rgba(248,250,252,.96),rgba(255,255,255,.98));padding:18px 14px}
.timeline-summary-frieze ol{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:190px 54px 190px;gap:0 10px;margin:0;padding:0;list-style:none}
.timeline-summary-frieze ol::before{content:"";position:absolute;z-index:0;top:50%;left:4%;right:4%;height:3px;transform:translateY(-50%);border-radius:99px;background:linear-gradient(90deg,#06b6d4,#10b981 25%,#8b5cf6 50%,#f59e0b 75%,#f43f5e)}
.timeline-summary-period{--summary-accent:#0891b2;position:relative;z-index:1;grid-row:1/-1;min-width:0}
.timeline-summary-period.tone-emerald{--summary-accent:#059669}.timeline-summary-period.tone-violet{--summary-accent:#7c3aed}.timeline-summary-period.tone-amber{--summary-accent:#d97706}.timeline-summary-period.tone-rose{--summary-accent:#e11d48}
.timeline-summary-period>a{height:100%;display:grid;grid-template-rows:190px 54px 190px;color:#0f172a;text-decoration:none}
.timeline-summary-card{position:relative;display:grid;align-content:start;gap:5px;border:1px solid color-mix(in srgb,var(--summary-accent) 28%,#e2e8f0);border-radius:10px;background:#fff;padding:13px;box-shadow:0 10px 28px rgba(15,23,42,.06);transition:transform .2s ease,box-shadow .2s ease}
.timeline-summary-card small{color:var(--summary-accent);font-size:9px;line-height:1.25;font-weight:950;text-transform:uppercase}
.timeline-summary-card strong{font-size:16px;line-height:1.12;font-weight:950}
.timeline-summary-card em{margin-top:4px;color:#94a3b8;font-size:8px;line-height:1;font-style:normal;font-weight:950;text-transform:uppercase;letter-spacing:.05em}
.timeline-summary-card p{margin:0;color:#475569;font-size:10px;line-height:1.36;font-weight:650}
.timeline-summary-period.is-top .timeline-summary-card{grid-row:1;align-self:end}
.timeline-summary-period.is-bottom .timeline-summary-card{grid-row:3;align-self:start}
.timeline-summary-card::after{content:"";position:absolute;left:50%;width:1px;height:28px;transform:translateX(-50%);background:color-mix(in srgb,var(--summary-accent) 55%,#cbd5e1)}
.timeline-summary-period.is-top .timeline-summary-card::after{bottom:-29px}.timeline-summary-period.is-bottom .timeline-summary-card::after{top:-29px}
.timeline-summary-marker{grid-row:2;align-self:center;justify-self:center;width:42px;height:42px;display:grid;place-items:center;border:4px solid #f8fafc;border-radius:999px;background:var(--summary-accent);color:#fff;box-shadow:0 0 0 1px color-mix(in srgb,var(--summary-accent) 55%,#cbd5e1);font-size:10px;font-weight:950}
.timeline-summary-period>a:hover .timeline-summary-card,.timeline-summary-period>a:focus-visible .timeline-summary-card{transform:translateY(-3px);box-shadow:0 16px 34px rgba(15,23,42,.11)}
.timeline-summary-period>a:focus-visible{outline:3px solid color-mix(in srgb,var(--summary-accent) 28%,transparent);outline-offset:4px;border-radius:10px}
.timeline-summary-present{display:grid;grid-template-columns:58px minmax(0,1fr);gap:16px;align-items:center;border:1px solid rgba(13,148,136,.25);border-radius:10px;background:linear-gradient(105deg,#052e2b,#0f3e48 70%,#164e63);color:#fff;padding:17px 20px}
.timeline-summary-present>span{width:50px;height:50px;display:grid;place-items:center;border-radius:14px;background:#5eead4;color:#083344}.timeline-summary-present .icon{width:24px;height:24px}
.timeline-summary-present small{color:#5eead4;font-size:9px;font-weight:950;text-transform:uppercase}.timeline-summary-present h2{margin:2px 0 3px;color:#fff;font-size:22px;line-height:1.1;letter-spacing:0}.timeline-summary-present p{margin:0;color:#cbd5e1;font-size:12px;line-height:1.45;font-weight:650}
.timeline-summary-sheet .conclusion-checkpoint{padding:14px 18px}.timeline-summary-sheet .conclusion-checkpoint strong{font-size:15px}
.icon { display:block; flex:0 0 auto; }
@media (max-width: 960px) { .hero,.course-layout,.trainer-card,.diploma-list,.trainer-profile-grid,.program-grid,.roundtable-grid,.interest-scale,.diagnostic-grid,.listening-board,.foundation-hero,.foundation-lesson-layout,.conclusion-rules,.panorama-criteria { grid-template-columns:1fr; }.rail,.foundation-local-nav{position:static}.catalog-grid,.site-tree{grid-template-columns:repeat(2,1fr)}.trainer-aside{position:static}.trainer-photo{width:min(280px,100%)}.trainer-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.scale-row{grid-template-columns:repeat(6,minmax(38px,1fr))}.scale-row span{width:100%}.foundation-local-nav{grid-template-columns:repeat(4,minmax(0,1fr))}.foundation-local-nav .course-kicker,.foundation-local-nav>.foundation-home-link{grid-column:1/-1} }
@media (max-width:1180px){.course-overview{grid-template-columns:1fr;align-items:start}.timeline-branches{grid-template-columns:repeat(2,minmax(0,1fr))}.course-footer-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width: 900px) { .backlog-items{grid-template-columns:repeat(2,minmax(0,1fr))}.backlog-summary{grid-template-columns:repeat(3,1fr)} }
@media (max-width: 720px) { .shell{width:min(100% - 20px,var(--content));padding-top:18px}.topbar{align-items:flex-start}.topnav{justify-content:flex-end}.topnav .nav-link:nth-child(n+4){display:none}.hero{padding:24px}.thread-steps,.metrics,.actions,.card-grid,.catalog-grid,.site-tree,.ribbon,.pedagogy-loop,.maturity-scale,.backlog-items,.backlog-summary{grid-template-columns:1fr}.progress-row{grid-template-columns:52px 1fr;gap:12px;padding-right:12px}.progress-row small,.progress-row .button{grid-column:2}.progress-list::before{left:25px}.step-number{width:52px;height:52px}.compass,.section-head{align-items:flex-start;flex-direction:column}.opening-nav{flex-wrap:wrap}h1{font-size:clamp(2.25rem,13vw,3.5rem)}.progress-table>a{grid-template-columns:1fr auto}.score-track,.hub-state{grid-column:1/-1} }
@media (max-width:720px){.course-container{width:min(100% - 22px,1180px);padding:30px 0 56px}.course-menu-dot{position:absolute;top:10px;left:10px;width:38px;height:38px}.course-overview{grid-template-columns:1fr;padding:20px;gap:24px}.course-overview h1{font-size:clamp(38px,12vw,52px)}.course-auth-map-flow{grid-template-columns:1fr}.course-auth-map-arrow{transform:rotate(90deg)}.course-overview-actions{grid-template-columns:1fr}.timeline-heading,.timeline-card-head{display:grid;grid-template-columns:1fr}.timeline-legend{justify-content:flex-start}.course-timeline::before{left:20px}.course-timeline-item{grid-template-columns:42px minmax(0,1fr);gap:14px}.timeline-pin span{width:42px;height:42px;font-size:12px}.course-timeline-item.is-collapsed .timeline-card-summary{display:flex}.course-timeline-item.is-collapsed .course-kicker{font-size:8px}.course-timeline-item.is-collapsed .timeline-card h3{font-size:15px}.timeline-accordion-item summary{grid-template-columns:36px minmax(0,1fr) 32px;gap:10px;padding:14px}.timeline-accordion-index{width:34px;height:34px}.timeline-accordion-panel{padding:14px}.timeline-glossary-tools{align-items:flex-start;justify-self:start;flex-direction:column}.timeline-glossary-tags{justify-content:flex-start}.timeline-branches,.course-footer-links{grid-template-columns:1fr}.course-footer-intro{grid-template-columns:42px minmax(0,1fr);padding:22px 16px}.course-footer-toggle{grid-column:1/-1}.course-footer-mark{width:42px;height:42px;border-radius:13px}.course-page-nav{align-items:stretch;flex-direction:column}.course-back,.course-next{width:100%;justify-content:center}.trainer-identity h1,.opening-page-head h1{font-size:clamp(34px,11vw,46px)}.trainer-stats,.domain-grid{grid-template-columns:1fr}.trainer-stats div,.program-card,.question-card{min-height:auto}.program-headline,.program-duration,.program-flow{grid-template-columns:1fr}.program-flow::before{display:none}.program-duration{max-width:none}.scale-row{grid-template-columns:repeat(3,1fr)}.opening-actions{display:grid;grid-template-columns:1fr}.opening-actions .course-button{width:100%}}

@media (max-width:720px){.course-footer{margin-top:20px;border-radius:18px}.course-footer-intro{grid-template-columns:46px minmax(0,1fr);gap:13px;padding:24px 20px}.course-footer-mark{width:46px;height:46px;border-radius:14px}.course-footer-mark .icon{width:22px;height:22px}.course-footer-links{grid-template-columns:1fr;gap:14px;padding:16px}.course-footer-toggle{width:100%;min-width:0;grid-column:1/-1}.course-footer-bottom{align-items:flex-start;flex-direction:column}}
@media (max-width:560px){.course-footer-intro{grid-template-columns:42px minmax(0,1fr);padding:22px 16px}.course-footer-mark{width:42px;height:42px;border-radius:13px}.course-footer h2{font-size:28px}.course-footer-destinations{grid-template-columns:1fr}.course-footer-group-description{min-height:0}.course-footer-bottom a{width:100%;justify-content:center}}
@media (max-width:720px){.diagnostic-focus{grid-template-columns:1fr}.diagnostic-focus>.icon{width:42px;height:42px}.dialogue-card{min-height:auto}.foundation-grid,.foundation-placeholder-grid,.foundation-recap,.history-event-grid,.panorama-grid,.panorama-criteria>div:last-child{grid-template-columns:1fr}.foundation-map-head{align-items:start;flex-direction:column}.foundation-question{min-height:auto}.foundation-card{grid-template-columns:42px minmax(0,1fr) auto;min-height:auto;padding:14px}.foundation-number{width:42px;height:42px}.foundation-local-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.foundation-local-nav>a{grid-template-columns:22px minmax(0,1fr);padding:8px 6px}.foundation-placeholder{min-height:auto;grid-template-columns:36px minmax(0,1fr);padding:14px}.foundation-placeholder>span{width:36px;height:36px}.history-event{grid-template-columns:42px minmax(0,1fr);gap:12px}.history-track::before{left:19px}.history-event-marker span{width:42px;height:42px}.history-event-card{padding:14px}.panorama-card{min-height:auto}.foundation-hero h1,.foundation-lesson h1{font-size:clamp(36px,11vw,48px)}}
@media (max-width:960px){.sequence-recap-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:720px){.sequence-child-grid,.sequence-recap-grid{grid-template-columns:1fr}.sequence-child-panel{min-height:auto;grid-template-columns:36px minmax(0,1fr);padding:14px}.sequence-child-panel>span{width:36px;height:36px}.sequence-child-hero{grid-template-columns:1fr}.sequence-child-badge{width:84px;height:84px;border-radius:22px}.sequence-child-badge span{font-size:28px}}
@media (max-width:960px){.timeline-summary-page .page-container{width:min(100% - 28px,760px)}.timeline-summary-frieze{padding:18px}.timeline-summary-frieze ol{display:grid;grid-template-columns:46px minmax(0,1fr);grid-template-rows:none;gap:14px 12px}.timeline-summary-frieze ol::before{top:18px;bottom:18px;left:22px;right:auto;width:3px;height:auto;transform:none;background:linear-gradient(180deg,#06b6d4,#10b981 25%,#8b5cf6 50%,#f59e0b 75%,#f43f5e)}.timeline-summary-period{display:contents}.timeline-summary-period>a{grid-column:1/-1;height:auto;display:grid;grid-template-columns:46px minmax(0,1fr);grid-template-rows:auto;gap:12px;align-items:center}.timeline-summary-marker{grid-column:1;grid-row:1;width:42px;height:42px}.timeline-summary-card,.timeline-summary-period.is-top .timeline-summary-card,.timeline-summary-period.is-bottom .timeline-summary-card{grid-column:2;grid-row:1;align-self:stretch}.timeline-summary-card::after{display:none}.timeline-summary-card p{font-size:12px}.timeline-summary-present{grid-template-columns:48px minmax(0,1fr)}}
@media (max-width:720px){.timeline-summary-page .page-container{width:min(100% - 22px,760px)}.timeline-summary-sheet{gap:16px;padding:18px}.timeline-summary-head h1{font-size:clamp(34px,11vw,46px)}.timeline-summary-frieze{padding:14px 10px}.timeline-summary-frieze ol{grid-template-columns:42px minmax(0,1fr);gap:12px 8px}.timeline-summary-frieze ol::before{left:20px}.timeline-summary-period>a{grid-template-columns:42px minmax(0,1fr);gap:8px}.timeline-summary-marker{width:38px;height:38px;border-width:3px}.timeline-summary-card{padding:12px}.timeline-summary-present{grid-template-columns:1fr;padding:16px}.timeline-summary-sheet .conclusion-checkpoint{grid-template-columns:42px minmax(0,1fr)}}
@media (max-width:720px){.course-global-home{top:10px;left:10px;width:38px;height:38px}.course-global-home .icon{width:18px;height:18px}body:has(.course-global-home) .topbar{padding-left:58px}}
/* Webothèque — composition AuthWeb pilotée par resource-library.json */
.resource-library-page{min-height:100vh;color:#0f172a}
.resource-library-shell{position:relative;z-index:1;width:min(100% - 48px,1420px);margin:0 auto;padding:48px 0 88px}
.resource-library-shell>.course-page-nav{margin:0 0 18px}
.resource-library-hero{position:relative;overflow:hidden;min-height:390px;display:grid;align-content:center;border:1px solid rgba(51,65,85,.35);border-radius:30px;background:radial-gradient(circle at 92% 8%,rgba(20,184,166,.25),transparent 38%),radial-gradient(circle at 12% 100%,rgba(124,58,237,.22),transparent 42%),linear-gradient(135deg,#10182e,#071b2b 75%);padding:clamp(38px,5vw,64px);box-shadow:0 30px 80px rgba(15,23,42,.16)}
.resource-library-hero::after{content:attr(data-watermark);position:absolute;right:3%;bottom:-16%;color:rgba(255,255,255,.035);font-size:clamp(120px,22vw,310px);line-height:.75;font-weight:950;letter-spacing:-.08em;pointer-events:none}
.resource-library-hero>*{position:relative;z-index:1}.resource-library-hero .course-kicker{color:#5eead4;letter-spacing:.12em}.resource-library-hero h1{max-width:850px;margin:18px 0 12px;color:#fff;font-size:clamp(46px,6.4vw,82px);line-height:.92;letter-spacing:-.055em;font-weight:950}.resource-library-hero>p:not(.course-kicker){max-width:780px;margin:0;color:#cbd5e1;font-size:17px;line-height:1.65}
.resource-library-stats{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.resource-library-stats>span{min-height:38px;display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(255,255,255,.07);color:#e2e8f0;padding:8px 13px;font-size:11px;font-weight:850;backdrop-filter:blur(8px)}.resource-library-stats b{color:#5eead4;font-size:16px}.resource-library-stats .icon{width:15px;height:15px;color:#5eead4}
.resource-library-tools{position:relative;margin-top:22px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;border:1px solid rgba(203,213,225,.9);border-radius:21px;background:rgba(255,255,255,.92);padding:18px;box-shadow:0 18px 46px rgba(15,23,42,.08);backdrop-filter:blur(16px)}
.resource-library-search{min-height:54px;display:grid;grid-template-columns:24px minmax(0,1fr) 36px;align-items:center;gap:10px;border:1px solid #cbd5e1;border-radius:14px;background:#f8fafc;padding:0 12px}.resource-library-search:focus-within{border-color:#06b6d4;box-shadow:0 0 0 4px rgba(6,182,212,.1)}.resource-library-search>.icon,.resource-library-search>span>.icon{width:20px;height:20px;color:#64748b}.resource-library-search input{width:100%;border:0;outline:0;background:transparent;color:#0f172a;font:inherit;font-size:14px}.resource-library-search input::placeholder{color:#94a3b8}.resource-library-search button{width:34px;height:34px;display:grid;place-items:center;border:0;border-radius:999px;background:#e2e8f0;color:#475569;cursor:pointer}.resource-library-search button .icon{width:16px;height:16px}
.resource-library-search button[hidden]{display:none}
.resource-library-tools>output{min-width:172px;display:grid;place-items:center;border-radius:14px;background:#f1f5f9;color:#475569;padding:0 15px;font-size:12px;font-weight:900}
.resource-library-filter-row{grid-column:1/-1;display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:start;border-top:1px solid #e2e8f0;padding-top:14px}.resource-library-filter-row>span{min-height:34px;display:inline-flex;align-items:center;gap:7px;color:#64748b;font-size:10px;font-weight:950;text-transform:uppercase;white-space:nowrap}.resource-library-filter-row>span .icon{width:15px;height:15px;color:#0891b2}.resource-library-filter-row>div{display:flex;flex-wrap:wrap;gap:8px}
.resource-library-filter{min-height:34px;display:inline-flex;align-items:center;gap:7px;border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:#475569;padding:7px 11px;font-size:10px;font-weight:900;cursor:pointer;transition:.18s ease}.resource-library-filter:hover{border-color:#67e8f9;color:#0e7490}.resource-library-filter.is-active{border-color:#0f172a;background:#0f172a;color:#fff;box-shadow:0 8px 20px rgba(15,23,42,.16)}.resource-library-filter>i{width:8px;height:8px;border-radius:999px;background:#06b6d4}.resource-library-filter:nth-child(3n+2)>i{background:#8b5cf6}.resource-library-filter:nth-child(3n)>i{background:#10b981}.resource-library-filter>.icon{width:14px;height:14px}.resource-library-filter>span{min-width:22px;border-radius:999px;background:rgba(148,163,184,.18);padding:3px 6px;text-align:center}.resource-library-filter.is-active>span{background:rgba(255,255,255,.15)}
.resource-library-section{--library-accent:#06b6d4;--library-soft:#ecfeff;margin-top:24px;border:1px solid rgba(203,213,225,.8);border-radius:24px;background:linear-gradient(125deg,rgba(255,255,255,.96),rgba(236,254,255,.7));padding:clamp(24px,3vw,34px);box-shadow:0 22px 58px rgba(15,23,42,.07)}.resource-library-section.tone-violet{--library-accent:#7c3aed;--library-soft:#f5f3ff;background:linear-gradient(125deg,#fff,rgba(245,243,255,.82))}.resource-library-section.tone-emerald{--library-accent:#059669;--library-soft:#ecfdf5;background:linear-gradient(125deg,#fff,rgba(236,253,245,.82))}
.resource-library-section-head{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.65fr);gap:36px;align-items:end;margin-bottom:22px}.resource-library-section-head h2{margin:6px 0 0;color:#0f172a;font-size:clamp(30px,4vw,48px);line-height:1;letter-spacing:-.04em;font-weight:950}.resource-library-section-head>p{margin:0;color:#64748b;font-size:13px;line-height:1.6}.resource-library-section .course-kicker{color:var(--library-accent)}
.resource-library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.resource-library-card{min-height:270px;display:flex;flex-direction:column;gap:18px;border:1px solid rgba(203,213,225,.9);border-radius:20px;background:rgba(255,255,255,.94);padding:20px;box-shadow:0 14px 34px rgba(15,23,42,.055);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.resource-library-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--library-accent) 55%,white);box-shadow:0 24px 50px rgba(15,23,42,.1)}.resource-library-card[hidden],.resource-library-section[hidden],.resource-library-empty[hidden]{display:none}
.resource-library-card>header{display:flex;align-items:center;gap:10px}.resource-library-card-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:var(--library-soft);color:var(--library-accent)}.resource-library-card-icon .icon{width:21px;height:21px}.resource-library-card-kind{color:var(--library-accent);font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.06em}.resource-library-card>div{display:grid;gap:9px}.resource-library-card h3{margin:0;color:#0f172a;font-size:22px;line-height:1.08;letter-spacing:-.025em;font-weight:950}.resource-library-card p{margin:0;color:#64748b;font-size:13px;line-height:1.55}.resource-library-card>footer{margin-top:auto;display:grid;gap:14px}.resource-library-card>footer>small{border-top:1px solid #e2e8f0;padding-top:12px;color:#64748b;font-size:10px;font-weight:850}.resource-library-card-actions{display:flex;flex-wrap:wrap;gap:8px}.resource-library-open,.resource-library-pdf{min-height:39px;display:inline-flex;align-items:center;gap:7px;border-radius:10px;padding:9px 11px;text-decoration:none;font-size:10px;font-weight:950}.resource-library-open{border:1px solid #0f172a;background:#0f172a;color:#fff}.resource-library-pdf{border:1px solid color-mix(in srgb,var(--library-accent) 38%,white);background:var(--library-soft);color:var(--library-accent)}.resource-library-open:hover,.resource-library-pdf:hover{transform:translateY(-1px)}.resource-library-open .icon,.resource-library-pdf .icon{width:15px;height:15px}
.resource-library-empty{margin-top:24px;min-height:280px;display:grid;place-items:center;align-content:center;gap:10px;border:1px dashed #94a3b8;border-radius:24px;background:rgba(255,255,255,.86);padding:30px;text-align:center}.resource-library-empty>span{width:54px;height:54px;display:grid;place-items:center;border-radius:16px;background:#ecfeff;color:#0891b2}.resource-library-empty .icon{width:25px;height:25px}.resource-library-empty h2,.resource-library-empty p{margin:0}.resource-library-empty p{color:#64748b}
@media (max-width:960px){.resource-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.resource-library-section-head{grid-template-columns:1fr;gap:10px}.resource-library-hero{min-height:340px}}
@media (max-width:720px){.resource-library-shell{width:min(100% - 22px,1420px);padding:30px 0 56px}.resource-library-hero{min-height:0;border-radius:22px;padding:28px 22px}.resource-library-hero h1{font-size:clamp(40px,14vw,58px)}.resource-library-hero>p:not(.course-kicker){font-size:14px}.resource-library-tools{grid-template-columns:1fr;border-radius:18px;padding:12px}.resource-library-tools>output{min-height:42px}.resource-library-filter-row{grid-template-columns:1fr;gap:7px}.resource-library-filter-row>div{max-width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:5px;scrollbar-width:thin}.resource-library-filter{flex:0 0 auto}.resource-library-section{border-radius:20px;padding:20px 14px}.resource-library-grid{grid-template-columns:1fr}.resource-library-card{min-height:0}.resource-library-section-head h2{font-size:34px}}
/* Famille de pages ressources AuthWeb */
.resource-suite-page{min-height:100vh}.resource-suite-shell{position:relative;z-index:1;width:min(100% - 48px,1320px);margin:0 auto;padding:48px 0 88px}.resource-suite-shell>.course-page-nav{margin-bottom:18px}
.resource-suite-hero{--suite-accent:#06b6d4;position:relative;overflow:hidden;min-height:330px;display:grid;align-content:center;border-radius:28px;background:radial-gradient(circle at 90% 0,color-mix(in srgb,var(--suite-accent) 30%,transparent),transparent 38%),linear-gradient(135deg,#10182e,#071b2b 78%);padding:clamp(34px,5vw,58px);box-shadow:0 28px 70px rgba(15,23,42,.15)}.resource-suite-hero.tone-violet{--suite-accent:#8b5cf6}.resource-suite-hero.tone-amber{--suite-accent:#f59e0b}.resource-suite-hero.tone-emerald{--suite-accent:#10b981}.resource-suite-hero.tone-rose{--suite-accent:#f43f5e}.resource-suite-hero .course-kicker{color:color-mix(in srgb,var(--suite-accent) 75%,white)}.resource-suite-hero h1{max-width:850px;margin:14px 0 10px;color:#fff;font-size:clamp(44px,6vw,76px);line-height:.96;letter-spacing:-.05em;font-weight:950}.resource-suite-hero>p:not(.course-kicker){max-width:760px;margin:0;color:#cbd5e1;font-size:16px;line-height:1.65}.resource-suite-hero>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.resource-suite-hero>div span{border:1px solid rgba(255,255,255,.15);border-radius:999px;background:rgba(255,255,255,.07);color:#e2e8f0;padding:8px 12px;font-size:11px;font-weight:850}
.resource-suite-tools{margin-top:20px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;border:1px solid #dbe4ef;border-radius:20px;background:rgba(255,255,255,.94);padding:16px;box-shadow:0 16px 42px rgba(15,23,42,.07)}.resource-suite-tools label,.site-map-suite-tools label{min-height:52px;display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:10px;border:1px solid #cbd5e1;border-radius:13px;background:#f8fafc;padding:0 14px}.resource-suite-tools label .icon,.site-map-suite-tools label .icon{width:19px;height:19px;color:#64748b}.resource-suite-tools input,.site-map-suite-tools input{width:100%;border:0;outline:0;background:transparent;color:#0f172a;font:inherit}.resource-suite-tools output,.site-map-suite-tools output{display:grid;place-items:center;border-radius:13px;background:#f1f5f9;color:#475569;padding:0 16px;font-size:12px;font-weight:900}.resource-suite-tools>div{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:7px;border-top:1px solid #e2e8f0;padding-top:12px}.resource-suite-tools>div button{border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:#475569;padding:8px 11px;font-size:10px;font-weight:900;cursor:pointer}.resource-suite-tools>div button.is-active{border-color:#0f172a;background:#0f172a;color:#fff}
.resource-suite-grid{--suite-accent:#06b6d4;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:20px}.resource-suite-grid.tone-violet{--suite-accent:#8b5cf6}.resource-suite-grid.tone-amber{--suite-accent:#d97706}.resource-suite-grid.tone-emerald{--suite-accent:#059669}.resource-suite-grid.tone-rose{--suite-accent:#e11d48}.resource-suite-card{min-height:260px;display:flex;flex-direction:column;gap:13px;border:1px solid #dbe4ef;border-radius:19px;background:rgba(255,255,255,.94);padding:20px;box-shadow:0 15px 36px rgba(15,23,42,.06);transition:.18s ease}.resource-suite-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--suite-accent) 45%,#dbe4ef)}.resource-suite-card[hidden],.resource-suite-empty[hidden]{display:none}.resource-suite-card>header{display:flex;align-items:center;gap:10px}.resource-suite-card>header>span{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:color-mix(in srgb,var(--suite-accent) 10%,white);color:var(--suite-accent)}.resource-suite-card>header .icon{width:20px;height:20px}.resource-suite-card>header small{color:var(--suite-accent);font-size:10px;font-weight:950;text-transform:uppercase}.resource-suite-card h3{margin:0;color:#0f172a;font-size:23px;line-height:1.08;font-weight:950}.resource-suite-card>p{margin:0;color:#64748b;font-size:13px;line-height:1.55}.resource-suite-card>footer{margin-top:auto;display:grid;gap:12px}.resource-suite-card>footer>em{border-top:1px solid #e2e8f0;padding-top:11px;color:#64748b;font-size:10px;font-style:normal;font-weight:850}.resource-suite-card>footer>div{display:flex;flex-wrap:wrap;gap:7px}.resource-suite-open,.resource-suite-pdf{min-height:38px;display:inline-flex;align-items:center;gap:7px;border-radius:9px;padding:9px 11px;text-decoration:none;font-size:10px;font-weight:950}.resource-suite-open{background:#0f172a;color:#fff}.resource-suite-pdf{border:1px solid color-mix(in srgb,var(--suite-accent) 35%,white);background:color-mix(in srgb,var(--suite-accent) 8%,white);color:var(--suite-accent)}.resource-suite-open .icon,.resource-suite-pdf .icon{width:14px;height:14px}.resource-suite-empty{margin-top:20px;display:grid;justify-items:center;gap:10px;border:1px dashed #94a3b8;border-radius:20px;background:#fff;padding:38px}.resource-suite-empty h2{margin:0}.resource-suite-empty button{border:0;border-radius:999px;background:#0f172a;color:#fff;padding:10px 15px;font-weight:900;cursor:pointer}
/* Glossaire */
.glossary-suite-card{border:1px solid #dbe4ef;border-radius:22px;background:rgba(255,255,255,.96);padding:clamp(24px,4vw,42px);box-shadow:0 24px 64px rgba(15,23,42,.08)}.glossary-suite-hero{display:grid;gap:10px;border-bottom:1px solid #e2e8f0;padding-bottom:22px}.glossary-suite-hero h1{max-width:950px;margin:0;color:#020617;font-size:clamp(44px,6vw,74px);line-height:.95;letter-spacing:-.055em;font-weight:950}.glossary-suite-hero>p:not(.course-kicker){max-width:800px;margin:0;color:#526078;font-size:17px;line-height:1.55}.glossary-suite-hero>div{display:flex;flex-wrap:wrap;gap:9px;margin-top:10px}.glossary-suite-hero>div span{display:inline-flex;align-items:center;gap:7px;border:1px solid #dbe4ef;border-radius:999px;padding:9px 12px;color:#475569;font-size:11px;font-weight:900}.glossary-suite-hero>div .icon{width:17px;height:17px}.glossary-suite-map{display:grid;grid-template-columns:190px minmax(0,1fr);gap:16px;margin-top:24px}.glossary-suite-map>strong{display:grid;align-content:center;border:1px solid #a5f3fc;border-radius:14px;background:linear-gradient(135deg,#ecfeff,#f0fdfa);padding:18px;color:#0f172a;font-size:52px;line-height:1}.glossary-suite-map>strong small{margin-top:7px;color:#475569;font-size:11px;line-height:1.3}.glossary-suite-map nav{display:flex;align-content:center;align-items:center;flex-wrap:wrap;gap:8px;border:1px solid #dbe4ef;border-radius:14px;background:#f8fafc;padding:18px}.glossary-suite-map a{border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:#475569;padding:8px 11px;text-decoration:none;font-size:11px;font-weight:900}.glossary-suite-search{margin-top:24px;border:1px solid #a5f3fc;border-radius:18px;background:linear-gradient(135deg,#ecfeff,#fff 55%,#f5f3ff);padding:22px}.glossary-suite-search>header{display:flex;align-items:end;justify-content:space-between;gap:20px}.glossary-suite-search h2{margin:3px 0 0;font-size:34px}.glossary-suite-search output{border-radius:999px;background:#fff;padding:7px 10px;font-size:11px;font-weight:900}.glossary-suite-search>label{min-height:58px;display:grid;grid-template-columns:24px minmax(0,1fr) 38px;align-items:center;gap:10px;margin-top:14px;border:1px solid #cbd5e1;border-radius:999px;background:#fff;padding:0 14px}.glossary-suite-search>label>.icon{width:21px}.glossary-suite-search input{border:0;outline:0;background:transparent;font:inherit;font-size:15px}.glossary-suite-search button{width:34px;height:34px;display:grid;place-items:center;border:0;border-radius:999px;background:#f1f5f9;cursor:pointer}.glossary-suite-search button[hidden]{display:none}.glossary-suite-search button .icon{width:16px}.glossary-suite-list{display:grid;gap:18px;margin-top:24px}.glossary-suite-category{border:1px solid #dbe4ef;border-radius:18px;overflow:hidden}.glossary-suite-category[hidden],.glossary-suite-entry[hidden]{display:none}.glossary-suite-category>header{display:flex;align-items:end;justify-content:space-between;background:#f8fafc;padding:18px}.glossary-suite-category h2{margin:3px 0 0;font-size:28px}.glossary-suite-category>header>span{color:#64748b;font-size:11px;font-weight:900}.glossary-suite-category>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.glossary-suite-entry{min-height:190px;display:grid;grid-template-columns:minmax(0,1fr) 36px;gap:12px;border-right:1px solid #e2e8f0;padding:18px}.glossary-suite-entry:last-child{border-right:0}.glossary-suite-entry h3{margin:0;font-size:21px}.glossary-suite-entry p{color:#64748b;font-size:13px;line-height:1.55}.glossary-suite-entry small{color:#0891b2;font-size:10px;font-weight:850}.glossary-suite-entry button{width:34px;height:34px;display:grid;place-items:center;border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:#475569;cursor:pointer}.glossary-suite-entry button .icon{width:15px}.resource-suite-dialog{width:min(720px,calc(100% - 28px));border:0;border-radius:22px;background:#fff;padding:0;box-shadow:0 38px 100px rgba(2,6,23,.35)}.resource-suite-dialog::backdrop{background:rgba(2,6,23,.72);backdrop-filter:blur(7px)}.resource-suite-dialog>article{position:relative;padding:32px}.resource-suite-dialog>article>button{position:absolute;top:16px;right:16px;width:38px;height:38px;border:0;border-radius:999px;background:#f1f5f9;font-size:22px;cursor:pointer}.resource-suite-dialog h2{margin:8px 0;font-size:38px}.resource-suite-dialog p{color:#526078;line-height:1.65}.resource-suite-dialog footer{display:grid;gap:4px;border-radius:13px;background:#ecfeff;padding:14px}.resource-suite-dialog footer small{color:#0891b2;font-weight:900}
/* BDthèque */
.comic-suite-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:30px;align-items:center;border-radius:28px;background:radial-gradient(circle at 85% 20%,rgba(139,92,246,.28),transparent 34%),linear-gradient(135deg,#071827,#111936);padding:clamp(34px,5vw,58px);color:#fff}.comic-suite-hero h1{max-width:850px;margin:12px 0;color:#fff;font-size:clamp(44px,6vw,76px);line-height:.96;letter-spacing:-.05em}.comic-suite-hero p:not(.course-kicker){max-width:720px;color:#cbd5e1;line-height:1.6}.comic-suite-hero aside{display:flex;gap:10px}.comic-suite-hero aside .icon{width:56px;height:56px;border:1px solid rgba(255,255,255,.15);border-radius:17px;padding:14px;color:#5eead4}.comic-suite-collection{margin-top:22px;border:1px solid #dbe4ef;border-radius:22px;background:#fff;padding:26px}.comic-suite-collection>header{display:flex;align-items:end;justify-content:space-between;gap:20px}.comic-suite-collection>header h2{margin:4px 0 0;font-size:36px}.comic-suite-collection>header>span{color:#64748b;font-size:12px;font-weight:900}.comic-suite-collection>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px}.comic-suite-card{display:grid;grid-template-columns:42% minmax(0,1fr);overflow:hidden;border:1px solid #dbe4ef;border-radius:18px;background:#fff}.comic-suite-cover{position:relative;min-height:270px;background:linear-gradient(145deg,#0f172a,#172554);padding:14px}.comic-suite-cover img{width:100%;height:100%;object-fit:cover;border-radius:12px;opacity:.72}.comic-suite-cover span{position:absolute;left:24px;bottom:20px;border-radius:999px;background:#0f172a;color:#fff;padding:7px 10px;font-size:10px;font-weight:900}.comic-suite-cover b{position:absolute;top:20px;right:20px;color:#fff;font-size:34px}.comic-suite-card>div:last-child{display:flex;flex-direction:column;padding:20px}.comic-suite-card small{color:#7c3aed;font-weight:950;text-transform:uppercase}.comic-suite-card h2{margin:8px 0;font-size:26px;line-height:1.05}.comic-suite-card p{color:#64748b;line-height:1.55}.comic-suite-card footer{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}.comic-suite-card footer button,.comic-suite-card footer a,.comic-suite-reader a{display:inline-flex;align-items:center;gap:7px;border:0;border-radius:9px;background:#0f172a;color:#fff;padding:10px 12px;text-decoration:none;font-size:10px;font-weight:900;cursor:pointer}.comic-suite-card footer a{background:#f5f3ff;color:#7c3aed}.comic-suite-card footer .icon,.comic-suite-reader .icon{width:15px}.comic-suite-reader{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px}.comic-suite-reader img{width:100%;min-height:300px;object-fit:cover;border-radius:14px;background:#0f172a}.comic-suite-reader blockquote{margin:16px 0;border-left:3px solid #8b5cf6;background:#f8fafc;padding:15px;color:#475569;line-height:1.6}.comic-suite-reader>div>div{display:flex}.comic-suite-reader span{border-radius:999px;background:#f1f5f9;padding:9px 12px;color:#64748b;font-size:11px;font-weight:900}
/* Exercices */
.exercise-suite-hero,.stack-suite-hero{border-radius:28px;background:radial-gradient(circle at 90% 0,rgba(16,185,129,.24),transparent 38%),linear-gradient(135deg,#111936,#061c25);padding:clamp(34px,5vw,58px);color:#fff}.exercise-suite-hero h1,.stack-suite-hero h1{max-width:980px;margin:12px 0;color:#fff;font-size:clamp(44px,6vw,72px);line-height:.96;letter-spacing:-.05em}.exercise-suite-hero>p:not(.course-kicker),.stack-suite-hero>p:not(.course-kicker){max-width:780px;color:#cbd5e1;line-height:1.6}.exercise-suite-hero>span{display:inline-flex;margin-top:16px;border-radius:999px;background:rgba(255,255,255,.1);padding:9px 12px;font-size:11px;font-weight:900}.exercise-suite-guide{display:flex;align-items:center;gap:10px;border:1px solid #a5f3fc;border-radius:14px;background:#ecfeff;padding:14px;color:#155e75;font-size:12px;font-weight:850}.exercise-suite-guide .icon{width:19px}.exercise-suite-groups{display:grid;gap:18px;margin-top:18px}.exercise-suite-group{overflow:hidden;border:1px solid #dbe4ef;border-radius:20px;background:#fff}.exercise-suite-group>header{display:flex;justify-content:space-between;align-items:end;background:#f8fafc;padding:18px}.exercise-suite-group h2{margin:4px 0 0;font-size:30px}.exercise-suite-group>header>span{color:#64748b;font-size:11px;font-weight:900}.exercise-suite-group>div>article{display:grid;grid-template-columns:46px minmax(0,1fr) 130px 130px;gap:14px;align-items:center;border-top:1px solid #e2e8f0;padding:15px 18px}.exercise-suite-group>div>article>span{width:42px;height:42px;display:grid;place-items:center;border-radius:999px;background:#ecfeff;color:#0891b2;font-weight:950}.exercise-suite-group h3{margin:0;font-size:17px}.exercise-suite-group p{margin:4px 0 0;color:#64748b;font-size:12px}.exercise-suite-group article>small{display:flex;align-items:center;gap:7px;color:#64748b;font-weight:850}.exercise-suite-group article>small .icon{width:15px}.exercise-suite-group article>div:last-child a{display:inline-flex;align-items:center;gap:6px;border-radius:9px;background:#0f172a;color:#fff;padding:9px 10px;text-decoration:none;font-size:10px;font-weight:900}.exercise-suite-group article>div:last-child .icon{width:14px}.exercise-suite-group article>div:last-child em{color:#94a3b8;font-size:10px;font-style:normal;font-weight:850}
/* Fil conducteur réintégré au programme */
.programme-conductor{margin-top:28px;border-top:1px solid #dbe4ef;padding-top:28px}.programme-conductor>header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:end}.programme-conductor>header h2{margin:4px 0 0;font-size:36px}.programme-conductor>p{max-width:760px;color:#64748b;line-height:1.6}.plan-suite-facts{display:flex;flex-wrap:wrap;gap:8px}.plan-suite-facts span{border:1px solid #cbd5e1;border-radius:999px;background:#fff;padding:8px 11px;color:#475569;font-size:10px;font-weight:900}.plan-suite-day{margin-top:20px;border:1px solid #dbe4ef;border-radius:18px;overflow:hidden}.plan-suite-day>header{background:#0f172a;padding:18px 20px}.plan-suite-day>header .course-kicker{color:#5eead4}.plan-suite-day>header h2{margin:5px 0 0;color:#fff;font-size:25px}.plan-suite-slot{display:grid;grid-template-columns:105px 42px minmax(0,1fr) 170px;gap:14px;align-items:center;border-top:1px solid #e2e8f0;padding:16px 20px}.plan-suite-slot time{color:#475569;font-size:11px;font-weight:900}.plan-suite-slot>span{width:38px;height:38px;display:grid;place-items:center;border-radius:999px;background:#ecfeff;color:#0891b2;font-size:11px;font-weight:950}.plan-suite-slot h3{margin:0;font-size:17px}.plan-suite-slot p{margin:4px 0;color:#64748b;font-size:12px}.plan-suite-slot strong{color:#0f766e;font-size:10px}.plan-suite-slot fieldset{display:flex;gap:6px;border:0;padding:0}.plan-suite-slot legend{position:absolute;clip:rect(0 0 0 0)}.plan-suite-slot fieldset button{border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:#64748b;padding:7px 9px;font-size:9px;font-weight:900;cursor:pointer}.plan-suite-slot fieldset button.is-active{border-color:#0f766e;background:#ecfdf5;color:#047857}
/* Stack */
.stack-suite-hero>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.stack-suite-hero>div span{border:1px solid rgba(255,255,255,.15);border-radius:999px;background:rgba(255,255,255,.07);padding:8px 11px;font-size:10px;font-weight:900}.stack-suite-map{margin-top:20px;border:1px solid #26354a;border-radius:22px;background:#071827;padding:20px;color:#fff}.stack-suite-map>header{display:flex;justify-content:space-between;gap:20px;align-items:end}.stack-suite-map h2{margin:4px 0 0;color:#fff;font-size:34px}.stack-suite-map>header>span{display:flex;align-items:center;gap:7px;color:#94a3b8;font-size:10px;font-weight:900}.stack-suite-map>header>span i{width:8px;height:8px;border-radius:999px;background:#2dd4bf;box-shadow:0 0 0 5px rgba(45,212,191,.12)}.stack-suite-world{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:20px;border:1px solid #1e3a4d;border-radius:18px;background-image:linear-gradient(rgba(148,163,184,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.07) 1px,transparent 1px);background-size:32px 32px;padding:24px}.stack-suite-node{--node:#22d3ee;min-height:150px;display:grid;align-content:center;justify-items:center;gap:6px;border:1px solid color-mix(in srgb,var(--node) 45%,#334155);border-radius:17px;background:rgba(15,23,42,.88);color:#fff;padding:16px;text-align:center;cursor:pointer}.stack-suite-node.tone-violet{--node:#a78bfa}.stack-suite-node.tone-amber{--node:#fbbf24}.stack-suite-node.tone-emerald{--node:#34d399}.stack-suite-node.tone-rose{--node:#fb7185}.stack-suite-node[aria-pressed="true"]{background:color-mix(in srgb,var(--node) 16%,#0f172a);box-shadow:0 0 0 3px color-mix(in srgb,var(--node) 20%,transparent)}.stack-suite-node>span{color:var(--node)}.stack-suite-node .icon{width:27px;height:27px}.stack-suite-node small{color:var(--node);font-weight:950}.stack-suite-node strong{font-size:18px}.stack-suite-node em{color:#94a3b8;font-size:11px;font-style:normal}.stack-suite-map>aside{display:grid;grid-template-columns:50px minmax(0,1fr);gap:14px;align-items:center;margin-top:14px;border:1px solid #1e5965;border-radius:14px;background:#0b2d38;padding:16px}.stack-suite-map>aside>span{width:46px;height:46px;display:grid;place-items:center;border-radius:13px;background:#5eead4;color:#083344}.stack-suite-map>aside .icon{width:23px}.stack-suite-map>aside small{color:#5eead4;font-size:9px;font-weight:950;text-transform:uppercase}.stack-suite-map>aside h3{margin:2px 0;color:#fff;font-size:20px}.stack-suite-map>aside p{margin:0;color:#cbd5e1;font-size:12px}
/* Plan du site */
.site-map-suite-hero{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:30px;align-items:end;border-radius:26px;background:linear-gradient(135deg,#fff,#ecfeff 56%,#f5f3ff);padding:clamp(30px,4vw,48px);box-shadow:0 20px 54px rgba(15,23,42,.08)}.site-map-suite-hero h1{max-width:900px;margin:10px 0;color:#020617;font-size:clamp(44px,6vw,72px);line-height:.96;letter-spacing:-.05em}.site-map-suite-hero p:not(.course-kicker){max-width:760px;color:#64748b;line-height:1.6}.site-map-suite-hero aside{display:grid;justify-items:center;border-radius:18px;background:#0f172a;padding:22px;color:#fff}.site-map-suite-hero aside strong{font-size:48px}.site-map-suite-hero aside span{color:#94a3b8;font-size:11px;font-weight:900}.site-map-suite-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;margin-top:20px;border:1px solid #dbe4ef;border-radius:18px;background:#fff;padding:14px}.site-map-suite-tree{display:grid;gap:14px;margin-top:18px}.site-map-suite-branch{border:1px solid #dbe4ef;border-radius:18px;background:#fff;overflow:hidden}.site-map-suite-branch[hidden]{display:none}.site-map-suite-branch>summary{display:grid;grid-template-columns:42px minmax(0,1fr) auto 30px;gap:12px;align-items:center;list-style:none;background:#f8fafc;padding:15px 18px;cursor:pointer}.site-map-suite-branch>summary::-webkit-details-marker{display:none}.site-map-suite-branch>summary>span{width:38px;height:38px;display:grid;place-items:center;border-radius:999px;background:#ecfeff;color:#0891b2;font-size:11px;font-weight:950}.site-map-suite-branch>summary strong{font-size:18px}.site-map-suite-branch>summary small{color:#64748b;font-weight:850}.site-map-suite-branch>summary .icon{width:18px}.site-map-suite-branch[open]>summary .icon{transform:rotate(180deg)}.site-map-suite-branch>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px}.site-map-suite-branch a{min-height:86px;display:grid;grid-template-columns:34px minmax(0,1fr);gap:9px;align-content:center;border:1px solid #e2e8f0;border-radius:13px;padding:12px;color:#0f172a;text-decoration:none}.site-map-suite-branch a[hidden]{display:none}.site-map-suite-branch a>span{grid-row:1/3;width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:#ecfeff;color:#0891b2}.site-map-suite-branch a .icon{width:15px}.site-map-suite-branch a strong{font-size:13px}.site-map-suite-branch a small{color:#64748b;font-size:10px}
/* Fiches de glossaire riches et appelables partout */
.glossary-suite-entry{min-height:470px}.glossary-suite-entry-facts{display:grid;gap:8px;margin:15px 0 0}.glossary-suite-entry-facts>div{border-top:1px solid #e2e8f0;padding-top:8px}.glossary-suite-entry-facts dt{color:#0891b2;font-size:9px;font-weight:950;text-transform:uppercase}.glossary-suite-entry-facts dd{margin:3px 0 0;color:#526078;font-size:11px;line-height:1.45}.timeline-glossary-tag:is(button),.history-v2-richness button.is-term{appearance:none;font:inherit;cursor:pointer}.history-v2-richness button{min-height:28px;display:inline-flex;align-items:center;gap:5px;border:1px solid rgba(148,163,184,.28);border-radius:999px;background:#fff;color:#475569;padding:5px 9px;font-size:9px;font-weight:900}.history-v2-richness button.is-term{border-color:color-mix(in srgb,var(--event-accent) 28%,#dbe4ee);background:color-mix(in srgb,var(--event-accent) 7%,white);color:color-mix(in srgb,var(--event-accent) 72%,#334155)}.glossary-global-dialog{width:min(980px,calc(100% - 28px));max-height:min(900px,calc(100dvh - 28px));overflow:auto;border:0;border-radius:24px;background:transparent;padding:0;box-shadow:0 42px 120px rgba(2,6,23,.45)}.glossary-global-dialog::backdrop{background:rgba(2,6,23,.76);backdrop-filter:blur(8px)}.glossary-global-overlay{display:none}.glossary-global-shell{position:relative;border:1px solid rgba(255,255,255,.75);border-radius:24px;background:#fff;padding:clamp(24px,4vw,42px)}.glossary-global-close{position:absolute;z-index:2;top:18px;right:18px;width:42px;height:42px;display:grid;place-items:center;border:0;border-radius:999px;background:#eef2f7;color:#334155;cursor:pointer}.glossary-global-close .icon{width:19px}.glossary-global-detail>header{padding-right:50px}.glossary-global-detail>header h2{display:flex;flex-wrap:wrap;align-items:baseline;gap:12px;margin:8px 0;color:#020617;font-size:clamp(42px,7vw,72px);line-height:.94;letter-spacing:-.05em}.glossary-global-detail>header h2 span{border-radius:999px;background:#ecfeff;color:#0e7490;padding:8px 11px;font-size:11px;letter-spacing:0}.glossary-global-detail>header>p:last-child{max-width:760px;color:#526078;font-size:17px;line-height:1.55}.glossary-global-definition{display:grid;gap:5px;margin-top:22px;border-left:4px solid #06b6d4;border-radius:0 14px 14px 0;background:#ecfeff;padding:17px 19px}.glossary-global-definition small{color:#0e7490;font-size:9px;font-weight:950;text-transform:uppercase}.glossary-global-definition strong{font-size:17px;line-height:1.45}.glossary-global-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.glossary-global-sections section{border:1px solid #dbe4ef;border-radius:16px;background:#f8fafc;padding:18px}.glossary-global-sections h3,.glossary-global-related h3{margin:0 0 9px;font-size:17px}.glossary-global-sections p,.glossary-global-sections li{color:#526078;font-size:13px;line-height:1.55}.glossary-global-sections ul{margin:0;padding-left:18px}.glossary-global-sections .is-example{border-color:#a7f3d0;background:#ecfdf5}.glossary-global-sections .is-warning{border-color:#fed7aa;background:#fff7ed}.glossary-global-related{margin-top:16px;border-top:1px solid #e2e8f0;padding-top:16px}.glossary-global-related>div{display:flex;flex-wrap:wrap;gap:8px}.glossary-global-related button,.glossary-global-related span{display:inline-flex;align-items:center;gap:6px;border:1px solid #a5f3fc;border-radius:999px;background:#ecfeff;color:#0e7490;padding:8px 11px;font-size:11px;font-weight:900}.glossary-global-related button{cursor:pointer}.glossary-global-related .icon{width:14px}.glossary-global-detail>footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;border-radius:14px;background:#0f172a;padding:14px 16px;color:#fff}.glossary-global-detail>footer small{color:#94a3b8;font-weight:850}.glossary-global-detail>footer a{display:inline-flex;align-items:center;gap:6px;color:#5eead4;text-decoration:none;font-size:11px;font-weight:900}.glossary-global-detail>footer .icon{width:14px}.glossary-global-unavailable{padding:35px 10px}.glossary-global-unavailable h2{font-size:42px}.glossary-global-unavailable p{color:#64748b}.glossary-global-unavailable code{color:#0e7490}
/* Bibliographie détaillée AuthWeb */
.bibliography-suite-list{display:grid;gap:16px;margin-top:20px}.bibliography-suite-entry{overflow:hidden;border:1px solid #dbe4ef;border-radius:20px;background:#fff;box-shadow:0 14px 34px rgba(15,23,42,.06)}.bibliography-suite-entry[hidden]{display:none}.bibliography-suite-entry>header{display:grid;grid-template-columns:150px minmax(0,1fr) 150px;gap:20px;align-items:center;padding:20px}.bibliography-suite-entry figure{position:relative;height:190px;margin:0;border-radius:13px;background:#0f172a;padding:8px}.bibliography-suite-entry figure img{width:100%;height:100%;border-radius:9px;object-fit:cover}.bibliography-suite-entry figure>span{position:absolute;top:16px;right:16px;width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#fff;color:#0f172a;font-weight:950}.bibliography-suite-tags{display:flex;flex-wrap:wrap;gap:7px}.bibliography-suite-tags span{border-radius:999px;background:#f5f3ff;color:#7c3aed;padding:7px 9px;font-size:9px;font-weight:950}.bibliography-suite-entry h2{margin:10px 0 5px;font-size:28px;line-height:1.04}.bibliography-suite-entry header p{margin:7px 0;color:#64748b;line-height:1.5}.bibliography-suite-byline{font-size:12px;font-weight:900}.bibliography-suite-source{justify-self:end;display:inline-flex;align-items:center;gap:7px;border:1px solid #c4b5fd;border-radius:10px;background:#f5f3ff;color:#6d28d9;padding:10px 12px;text-decoration:none;font-size:10px;font-weight:950}.bibliography-suite-source .icon{width:14px}.bibliography-suite-entry>details{border-top:1px solid #e2e8f0}.bibliography-suite-entry>details>summary{display:flex;align-items:center;justify-content:space-between;list-style:none;background:#f8fafc;padding:14px 20px;color:#334155;font-size:11px;font-weight:950;cursor:pointer}.bibliography-suite-entry>details>summary::-webkit-details-marker{display:none}.bibliography-suite-entry>details>summary .icon{width:17px}.bibliography-suite-entry>details[open]>summary .icon{transform:rotate(180deg)}.bibliography-suite-entry>details>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:18px 20px}.bibliography-suite-entry>details section{border:1px solid #e2e8f0;border-radius:14px;padding:15px}.bibliography-suite-entry>details section>span{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#ecfeff;color:#0891b2}.bibliography-suite-entry>details section .icon{width:17px}.bibliography-suite-entry>details h3{margin:10px 0 5px;font-size:15px}.bibliography-suite-entry>details p{margin:0;color:#64748b;font-size:12px;line-height:1.5}.bibliography-suite-entry>details footer{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #e2e8f0;padding:13px 20px}.bibliography-suite-entry>details footer>span{color:#64748b;font-size:10px;font-weight:850}.bibliography-suite-entry>details footer nav{display:flex;gap:7px}
@media(max-width:960px){.resource-suite-grid,.glossary-suite-category>div,.stack-suite-world,.site-map-suite-branch>div{grid-template-columns:repeat(2,minmax(0,1fr))}.comic-suite-collection>div{grid-template-columns:1fr}.plan-suite-slot{grid-template-columns:90px 40px minmax(0,1fr)}.plan-suite-slot fieldset{grid-column:3}.programme-conductor>header{grid-template-columns:1fr}.bibliography-suite-entry>header{grid-template-columns:120px minmax(0,1fr)}.bibliography-suite-source{grid-column:2;justify-self:start}.bibliography-suite-entry>details>div{grid-template-columns:1fr}}
@media(max-width:720px){.resource-suite-shell{width:min(100% - 22px,1320px);padding:30px 0 56px}.resource-suite-hero{min-height:0;border-radius:22px;padding:28px 22px}.resource-suite-hero h1,.exercise-suite-hero h1,.stack-suite-hero h1,.comic-suite-hero h1,.glossary-suite-hero h1,.site-map-suite-hero h1{font-size:clamp(38px,13vw,54px)}.resource-suite-tools,.site-map-suite-tools{grid-template-columns:1fr}.resource-suite-tools output,.site-map-suite-tools output{min-height:40px}.resource-suite-tools>div{overflow-x:auto;flex-wrap:nowrap}.resource-suite-tools>div button{flex:0 0 auto}.resource-suite-grid,.glossary-suite-category>div,.stack-suite-world,.site-map-suite-branch>div{grid-template-columns:1fr}.resource-suite-card{min-height:0}.glossary-suite-card{padding:20px 14px}.glossary-suite-map{grid-template-columns:1fr}.glossary-suite-entry{min-height:0;border-right:0;border-bottom:1px solid #e2e8f0}.glossary-suite-category>div>.glossary-suite-entry:last-child{border-bottom:0}.glossary-suite-search>header{align-items:start;flex-direction:column}.comic-suite-hero,.site-map-suite-hero{grid-template-columns:1fr}.comic-suite-hero aside{display:none}.comic-suite-collection{padding:18px 12px}.comic-suite-collection>header{align-items:start;flex-direction:column}.comic-suite-card{grid-template-columns:1fr}.comic-suite-cover{min-height:220px}.comic-suite-reader{grid-template-columns:1fr}.comic-suite-reader img{min-height:220px}.exercise-suite-group>div>article{grid-template-columns:42px minmax(0,1fr)}.exercise-suite-group article>small,.exercise-suite-group article>div:last-child{grid-column:2}.plan-suite-slot{grid-template-columns:1fr 38px minmax(0,1fr);align-items:start}.plan-suite-slot time{grid-column:1/-1}.plan-suite-slot fieldset{grid-column:3}.stack-suite-map{padding:14px}.stack-suite-map>header{align-items:start;flex-direction:column}.site-map-suite-hero aside{justify-items:start}.site-map-suite-branch>summary{grid-template-columns:38px minmax(0,1fr) 24px}.site-map-suite-branch>summary small{display:none}.glossary-global-sections{grid-template-columns:1fr}.glossary-global-detail>footer{align-items:flex-start;flex-direction:column}.bibliography-suite-entry>header{grid-template-columns:1fr}.bibliography-suite-entry figure{height:240px}.bibliography-suite-source{grid-column:auto}.bibliography-suite-entry>details footer{align-items:flex-start;flex-direction:column}}
/* Bibliographie web commentée */
.web-bibliography-hero{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:34px;align-items:center;border-radius:28px;background:radial-gradient(circle at 90% 0,rgba(45,212,191,.22),transparent 36%),linear-gradient(135deg,#151b42,#071d28);padding:clamp(34px,5vw,58px);color:#fff}.web-bibliography-hero h1{max-width:880px;margin:12px 0;color:#fff;font-size:clamp(44px,6vw,72px);line-height:.96;letter-spacing:-.05em}.web-bibliography-hero>div>p:not(.course-kicker){max-width:760px;color:#cbd5e1;line-height:1.6}.web-bibliography-hero>div>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.web-bibliography-hero>div>div span{border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(255,255,255,.07);padding:8px 11px;font-size:10px;font-weight:900}.web-bibliography-hero>aside{border:1px solid rgba(255,255,255,.18);border-radius:18px;background:rgba(255,255,255,.09);padding:22px}.web-bibliography-hero>aside small{display:flex;align-items:center;gap:7px;color:#5eead4;font-weight:950;text-transform:uppercase}.web-bibliography-hero>aside small .icon{width:16px}.web-bibliography-hero>aside p{color:#cbd5e1;font-size:12px;line-height:1.5}.web-bibliography-hero>aside a{display:flex;justify-content:center;align-items:center;gap:7px;border-radius:11px;background:#5eead4;color:#042f2e;padding:12px;text-decoration:none;font-size:11px;font-weight:950}.web-bibliography-hero>aside a .icon{width:16px}.web-bibliography-list{display:grid;gap:16px;margin-top:20px}.web-bibliography-entry{overflow:hidden;border:1px solid #dbe4ef;border-radius:20px;background:#fff}.web-bibliography-entry[hidden]{display:none}.web-bibliography-entry>header{display:grid;grid-template-columns:48px minmax(0,1fr) 42px;gap:14px;align-items:start;padding:20px}.web-bibliography-entry>header>span{width:46px;height:46px;display:grid;place-items:center;border-radius:13px;background:#0d9488;color:#fff;font-weight:950}.web-bibliography-entry>header>div>div{display:flex;flex-wrap:wrap;gap:7px}.web-bibliography-entry>header small,.web-bibliography-entry>header em{border-radius:999px;background:#ecfdf5;color:#047857;padding:6px 8px;font-size:8px;font-style:normal;font-weight:950;text-transform:uppercase}.web-bibliography-entry>header em{background:#f1f5f9;color:#475569}.web-bibliography-entry h2{margin:9px 0 3px;font-size:23px}.web-bibliography-entry>header p{margin:4px 0;color:#64748b;font-size:12px}.web-bibliography-source{width:40px;height:40px;display:grid;place-items:center;border:1px solid #cbd5e1;border-radius:10px;color:#0f766e}.web-bibliography-source .icon{width:16px}.web-bibliography-entry>section{margin:0 20px 18px;border-left:3px solid #14b8a6;border-radius:0 11px 11px 0;background:#f0fdfa;padding:12px 14px}.web-bibliography-entry>section small{display:flex;align-items:center;gap:6px;color:#047857;font-size:9px;font-weight:950;text-transform:uppercase}.web-bibliography-entry>section small .icon{width:14px}.web-bibliography-entry>section p{margin:7px 0 0;color:#526078;font-size:12px}.web-bibliography-entry>details{border-top:1px solid #e2e8f0}.web-bibliography-entry>details>summary{display:flex;justify-content:space-between;list-style:none;background:#f8fafc;padding:14px 20px;font-size:10px;font-weight:950;cursor:pointer}.web-bibliography-entry>details>summary::-webkit-details-marker{display:none}.web-bibliography-entry>details>summary .icon{width:16px}.web-bibliography-entry>details[open]>summary .icon{transform:rotate(180deg)}.web-bibliography-entry>details>div{display:grid;gap:10px;padding:16px 20px}.web-bibliography-entry>details section{border:1px solid #e2e8f0;border-radius:13px;padding:14px}.web-bibliography-entry>details section>span{color:#0d9488}.web-bibliography-entry>details section>span .icon{width:18px}.web-bibliography-entry>details h3{margin:7px 0;font-size:14px}.web-bibliography-entry>details p,.web-bibliography-entry>details li{color:#64748b;font-size:11px;line-height:1.5}.web-bibliography-entry>details ul{margin:0;padding-left:18px}.web-bibliography-entry>details section>div{display:flex;flex-wrap:wrap;gap:7px}.web-bibliography-entry>details section button,.web-bibliography-entry>details section>div>span{border:1px solid #a5f3fc;border-radius:999px;background:#ecfeff;color:#0e7490;padding:7px 9px;font-size:9px;font-weight:900}.web-bibliography-entry>details section button{cursor:pointer}
@media(max-width:960px){.web-bibliography-hero{grid-template-columns:1fr}.web-bibliography-hero>aside{max-width:360px}}
@media(max-width:720px){.web-bibliography-entry>header{grid-template-columns:42px minmax(0,1fr)}.web-bibliography-source{grid-column:2}.web-bibliography-hero h1{font-size:clamp(38px,13vw,54px)}}
/* Registre local de La Boîte à Bidules */
.stack-registry-panel{margin-top:20px;border:1px solid #b7d8db;border-radius:22px;background:linear-gradient(135deg,#f0fdfa,#fff 52%,#eef2ff);padding:clamp(20px,3vw,30px);box-shadow:0 18px 48px rgba(15,23,42,.07)}.stack-registry-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.stack-registry-panel h2{margin:5px 0;color:#071827;font-size:clamp(30px,4vw,44px);letter-spacing:-.04em}.stack-registry-panel [data-lab-message]{max-width:700px;margin:8px 0 0;color:#526078;font-size:13px;line-height:1.55}.stack-registry-controls{display:grid;justify-items:end;gap:10px}.stack-registry-controls output{display:inline-flex;align-items:center;border:1px solid #cbd5e1;border-radius:999px;background:#f8fafc;color:#475569;padding:8px 11px;font-size:10px;font-weight:950;text-transform:uppercase}.stack-registry-controls output::before{width:8px;height:8px;margin-right:7px;border-radius:999px;background:currentColor;content:"";box-shadow:0 0 0 4px color-mix(in srgb,currentColor 12%,transparent)}.stack-registry-controls output[data-lab-state="ready"]{border-color:#6ee7b7;background:#ecfdf5;color:#047857}.stack-registry-controls output[data-lab-state="degraded"]{border-color:#fcd34d;background:#fffbeb;color:#a16207}.stack-registry-controls output[data-lab-state="unavailable"],.stack-registry-controls output[data-lab-state="incompatible"]{border-color:#fda4af;background:#fff1f2;color:#be123c}.stack-registry-controls output[data-lab-state="permission-required"],.stack-registry-controls output[data-lab-state="unknown"]{border-color:#c4b5fd;background:#f5f3ff;color:#6d28d9}.stack-registry-controls button{min-height:40px;display:inline-flex;align-items:center;gap:7px;border:0;border-radius:11px;background:#0f172a;color:#fff;padding:10px 13px;font-size:10px;font-weight:950;cursor:pointer}.stack-registry-controls button:disabled{cursor:wait;opacity:.6}.stack-registry-controls button .icon{width:15px}.stack-registry-panel[aria-busy="true"] .stack-registry-controls button .icon{animation:stack-registry-spin 1s linear infinite}.stack-registry-components{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:22px}.stack-registry-component{overflow:hidden;border:1px solid #dbe4ef;border-radius:16px;background:rgba(255,255,255,.92)}.stack-registry-component>header{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;padding:15px}.stack-registry-component>header>span{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:#ecfeff;color:#0891b2}.stack-registry-component>header>span .icon{width:19px}.stack-registry-component>header small{display:block;color:#64748b;font-size:8px;font-weight:950;text-transform:uppercase}.stack-registry-component>header strong{display:block;margin-top:2px;color:#0f172a;font-size:14px;line-height:1.15}.stack-registry-component>header em{grid-column:1/-1;justify-self:start;border-radius:999px;background:#f1f5f9;color:#475569;padding:6px 8px;font-size:8px;font-style:normal;font-weight:950;text-transform:uppercase}.stack-registry-component[data-lab-state="ready"]>header em{background:#ecfdf5;color:#047857}.stack-registry-component[data-lab-state="degraded"]>header em{background:#fffbeb;color:#a16207}.stack-registry-component[data-lab-state="unavailable"]>header em,.stack-registry-component[data-lab-state="incompatible"]>header em{background:#fff1f2;color:#be123c}.stack-registry-component[data-lab-state="permission-required"]>header em,.stack-registry-component[data-lab-state="unknown"]>header em{background:#f5f3ff;color:#6d28d9}.stack-registry-component>div{display:grid;gap:7px;border-top:1px solid #e2e8f0;padding:12px}.stack-registry-component a{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:8px;border-radius:9px;background:#0f172a;color:#fff;padding:9px 10px;text-decoration:none;font-size:9px;font-weight:950}.stack-registry-component a .icon{width:14px;flex:0 0 auto}.stack-registry-component a.is-disabled,.stack-registry-component a[aria-disabled="true"]{border:1px dashed #cbd5e1;background:#f8fafc;color:#64748b;cursor:not-allowed}.stack-registry-note{margin:16px 0 0;border-left:3px solid #14b8a6;border-radius:0 10px 10px 0;background:rgba(255,255,255,.72);padding:11px 13px;color:#526078;font-size:11px;line-height:1.5}.stack-registry-panel:focus-within{border-color:#14b8a6}.stack-registry-controls button:focus-visible,.stack-registry-component a:focus-visible{outline:3px solid #22d3ee;outline-offset:3px}@keyframes stack-registry-spin{to{transform:rotate(360deg)}}
@media(max-width:960px){.stack-registry-components{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.stack-registry-panel>header{flex-direction:column}.stack-registry-controls{width:100%;grid-template-columns:1fr;justify-items:stretch}.stack-registry-controls output,.stack-registry-controls button{justify-content:center}.stack-registry-components{grid-template-columns:1fr}}
@media (prefers-reduced-motion: reduce) { html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important} }

/* Registre éditorial de ressources — composants dormants jusqu’à intégration des corpus */
.resource-catalog{display:grid;gap:22px}.resource-catalog-intro{max-width:820px}.resource-catalog-intro h2{margin:6px 0;font-size:clamp(32px,4vw,48px);letter-spacing:-.04em}.resource-catalog-intro>p:last-child{color:#526078;line-height:1.6}.resource-catalog-controls{display:grid;grid-template-columns:minmax(240px,2fr) repeat(auto-fit,minmax(150px,1fr));gap:12px;border:1px solid #dbe4ef;border-radius:18px;background:#fff;padding:16px}.resource-catalog-controls label{display:grid;gap:6px;color:#475569;font-size:9px;font-weight:950;text-transform:uppercase}.resource-catalog-controls input,.resource-catalog-controls select{width:100%;min-height:42px;border:1px solid #cbd5e1;border-radius:10px;background:#f8fafc;color:#0f172a;padding:9px 11px;font:inherit;font-size:12px;text-transform:none}.resource-catalog-controls input:focus-visible,.resource-catalog-controls select:focus-visible{border-color:#0891b2;outline:3px solid rgba(34,211,238,.28);outline-offset:1px}.resource-catalog-count{margin:0;color:#64748b;font-size:11px;font-weight:900}.resource-catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.resource-catalog-card{display:grid;align-content:start;gap:15px;border:1px solid #dbe4ef;border-radius:20px;background:#fff;padding:20px;box-shadow:0 16px 42px rgba(15,23,42,.06)}.resource-catalog-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.resource-catalog-kicker{margin:0;color:#0891b2;font-size:9px;font-weight:950;text-transform:uppercase}.resource-catalog-card h3{margin:6px 0 0;color:#0f172a;font-size:22px;letter-spacing:-.025em}.resource-proof-badge{flex:0 0 auto;border:1px solid #c4b5fd;border-radius:999px;background:#f5f3ff;color:#6d28d9;padding:7px 9px;font-size:8px;font-weight:950;text-transform:uppercase}.resource-proof-badge[data-proof-level="stack-reelle"]{border-color:#6ee7b7;background:#ecfdf5;color:#047857}.resource-proof-badge[data-proof-level="simulation-deterministe"]{border-color:#67e8f9;background:#ecfeff;color:#0e7490}.resource-catalog-summary{margin:0;color:#475569;font-size:13px;line-height:1.55}.resource-catalog-stance,.resource-catalog-details{display:grid;gap:9px;margin:0}.resource-catalog-stance>div,.resource-catalog-details>div{border-left:3px solid #14b8a6;border-radius:0 9px 9px 0;background:#f0fdfa;padding:10px 12px}.resource-catalog-stance dt,.resource-catalog-details dt{color:#0f766e;font-size:8px;font-weight:950;text-transform:uppercase}.resource-catalog-stance dd,.resource-catalog-details dd{margin:4px 0 0;color:#526078;font-size:11px;line-height:1.5}.resource-proof-statement{margin:0;border-radius:10px;background:#f8fafc;padding:11px;color:#64748b;font-size:10px;line-height:1.5}.resource-catalog-card>details{border-top:1px solid #e2e8f0;padding-top:12px}.resource-catalog-card>details>summary{color:#0f172a;font-size:10px;font-weight:950;cursor:pointer}.resource-catalog-card>details>p,.resource-catalog-card>details section{color:#526078;font-size:11px;line-height:1.55}.resource-catalog-card>details h4{margin:14px 0 7px;color:#0f172a;font-size:10px;text-transform:uppercase}.resource-catalog-card>footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto}.resource-catalog-links{display:flex;flex-wrap:wrap;gap:8px}.resource-catalog-links a{color:#0e7490;font-size:10px;font-weight:900}.resource-pdf-action{font-size:10px}.resource-catalog-empty{grid-column:1/-1;border:1px dashed #cbd5e1;border-radius:16px;background:#f8fafc;padding:26px;color:#64748b;text-align:center}
@media(max-width:820px){.resource-catalog-grid{grid-template-columns:1fr}.resource-catalog-controls{grid-template-columns:1fr 1fr}.resource-catalog-search{grid-column:1/-1}}
@media(max-width:520px){.resource-catalog-controls{grid-template-columns:1fr}.resource-catalog-search{grid-column:auto}.resource-catalog-card>header,.resource-catalog-card>footer{align-items:flex-start;flex-direction:column}}

/* Six concepts transversaux — écrans de présentation inspirés du cheminement AuthWeb. */
.foundation-hub .foundation-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.foundation-hub .foundation-card{min-height:205px;grid-template-columns:48px minmax(0,1fr) auto}.foundation-hub .foundation-number{width:48px;height:48px;border-radius:15px}.foundation-hub .foundation-number .icon{width:24px;height:24px}.foundation-hub .foundation-card-copy strong{font-size:24px}.foundation-hub .foundation-card-copy em{margin-top:6px;color:var(--foundation-accent);font-weight:900}.foundation-reading-line{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));overflow:hidden;border:1px solid #dbe4ef;border-radius:14px;background:#f8fafc}.foundation-reading-line span{display:flex;gap:8px;align-items:center;justify-content:center;border-right:1px solid #dbe4ef;padding:11px 7px;color:#475569;font-size:10px;font-weight:900;text-transform:uppercase}.foundation-reading-line span:last-child{border-right:0}.foundation-reading-line b{color:#0891b2}.foundation-key{display:grid;grid-template-columns:52px minmax(0,1fr);gap:16px;align-items:center;border-radius:16px;background:linear-gradient(135deg,#071827,#13243a 58%,#0d4854);padding:20px;color:#fff}.foundation-key>span{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:#5eead4;color:#083344}.foundation-key .icon{width:24px;height:24px}.foundation-key h2{margin:3px 0;color:#fff;font-size:24px}.foundation-key p:last-child{margin:0;color:#cbd5e1;font-size:13px;line-height:1.5}
.foundation-hub{gap:40px;padding:clamp(34px,4.5vw,56px)}.foundation-hub .foundation-hero{grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);gap:54px}.foundation-hub .foundation-hero h1{max-width:720px;font-size:clamp(58px,6.1vw,84px);line-height:.92;letter-spacing:-.05em}.foundation-hub .foundation-hero>div>p:not(.course-kicker){max-width:720px;font-size:18px}.foundation-hub .foundation-question{min-height:260px;padding:30px}.foundation-hub .foundation-question strong{font-size:25px}.foundation-concepts-grid{gap:18px}.foundation-hub .foundation-concept-card{min-height:245px;grid-template-columns:54px minmax(0,1fr) 24px;gap:16px;padding:22px}.foundation-concept-card-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:17px;background:color-mix(in srgb,var(--foundation-accent) 11%,white);color:var(--foundation-accent)}.foundation-concept-card-icon .icon{width:27px;height:27px}.foundation-concept-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.foundation-concept-card-meta small{color:var(--foundation-accent)}.foundation-concept-card-meta b{border:1px solid color-mix(in srgb,var(--foundation-accent) 24%,#dbe4ef);border-radius:999px;background:color-mix(in srgb,var(--foundation-accent) 7%,white);color:var(--foundation-accent);padding:5px 7px;font-size:8px;font-weight:950;text-transform:uppercase}.foundation-hub .foundation-concept-card .foundation-card-copy strong{font-size:27px;line-height:1}.foundation-hub .foundation-concept-card .foundation-card-copy p{font-size:14px;line-height:1.55}.foundation-hub .foundation-concept-card .foundation-card-copy em{margin-top:auto;padding-top:8px}.foundation-hub .foundation-map-head h2{font-size:clamp(34px,4vw,50px);line-height:1}.foundation-hub .foundation-arrow{align-self:center}
.foundation-hub{gap:clamp(22px,3vw,34px);padding:clamp(34px,4vw,46px)}.foundation-hub .foundation-hero{min-height:280px;grid-template-columns:minmax(0,1fr) minmax(220px,340px);gap:clamp(24px,5vw,56px);align-items:center}.foundation-hub .foundation-hero h1{max-width:950px;margin-top:12px;font-size:clamp(44px,6.4vw,86px);line-height:.98;letter-spacing:-.055em}.foundation-hub .foundation-hero>div>p:not(.course-kicker){max-width:820px;margin-top:20px;color:#475569;font-size:clamp(18px,2vw,24px);line-height:1.45;font-weight:700}.foundation-overview-visual{min-height:0;aspect-ratio:1;display:grid;place-items:center;border:1px solid #dbe4ef;border-radius:8px;background:radial-gradient(circle at 72% 74%,rgba(139,92,246,.08),transparent 42%),linear-gradient(145deg,#fbfeff,#fff);box-shadow:0 14px 34px rgba(15,23,42,.045)}.foundation-orbit{position:relative;width:72%;height:72%;display:grid;place-items:center;border:1px solid #dbe4ef;border-radius:50%}.foundation-orbit::before{content:"";position:absolute;width:58%;height:58%;border:1px solid #dbe4ef;border-radius:50%}.foundation-orbit>strong{position:relative;color:#64748b;font-size:13px;line-height:1.1;text-align:center}.foundation-orbit-node{--node-color:#0891b2;position:absolute;left:calc(50% + cos(calc(var(--node-index) * 60deg - 90deg)) * 50%);top:calc(50% + sin(calc(var(--node-index) * 60deg - 90deg)) * 50%);width:48px;height:48px;display:grid;place-items:center;transform:translate(-50%,-50%);border:1px solid color-mix(in srgb,var(--node-color) 22%,#dbe4ef);border-radius:8px;background:#fff;color:var(--node-color);box-shadow:0 14px 30px rgba(15,23,42,.1)}.foundation-orbit-node.tone-emerald{--node-color:#059669}.foundation-orbit-node.tone-violet{--node-color:#7c3aed}.foundation-orbit-node.tone-amber{--node-color:#d97706}.foundation-orbit-node.tone-rose{--node-color:#e11d48}.foundation-orbit-node .icon{width:24px;height:24px}.foundation-orbit-node i{position:absolute;right:4px;bottom:2px;color:#94a3b8;font-size:7px;font-style:normal;font-weight:900}.foundation-concepts-grid{gap:14px}.foundation-hub .foundation-concept-card{min-height:190px;display:block;position:relative;padding:20px}.foundation-concept-card-icon{width:48px;height:48px;display:grid;place-items:center;border:1px solid #e2e8f0;border-radius:8px;background:color-mix(in srgb,var(--foundation-accent) 9%,white);color:var(--foundation-accent)}.foundation-concept-card-icon .icon{width:24px;height:24px}.foundation-concept-card-meta{position:absolute;top:20px;right:20px}.foundation-concept-card-meta b{min-height:28px;display:inline-flex;align-items:center;border:1px solid #e2e8f0;border-radius:999px;background:#f8fafc;color:#475569;padding:5px 10px;font-size:12px;line-height:1;font-weight:950;text-transform:none;white-space:nowrap}.foundation-hub .foundation-concept-card .foundation-card-copy{display:block}.foundation-hub .foundation-concept-card .foundation-card-copy strong{display:block;margin-top:14px;font-size:clamp(22px,2.2vw,30px);line-height:1.08}.foundation-hub .foundation-concept-card .foundation-card-copy p{margin-top:10px;color:#64748b;font-size:15px;line-height:1.5;font-weight:700}.foundation-hub .foundation-concept-card:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(15,23,42,.08)}.foundation-key{grid-template-columns:58px minmax(0,1fr);gap:18px;border:1px solid rgba(34,211,238,.24);border-radius:8px;background:linear-gradient(135deg,rgba(236,254,255,.86),rgba(255,255,255,.9) 48%,rgba(236,253,245,.8));padding:clamp(18px,3vw,26px);color:#0f172a}.foundation-key>span{width:58px;height:58px;border-radius:8px;background:#0f172a;color:#fff}.foundation-key>span .icon{width:27px;height:27px}.foundation-key h2{margin-top:4px;color:#0f172a;font-size:clamp(24px,3vw,38px);line-height:1.08}.foundation-key p:last-child{max-width:940px;margin-top:8px;color:#475569;font-size:clamp(16px,1.7vw,20px);line-height:1.45;font-weight:700}
.auth-term-page{--term-color:#0891b2;--term-soft:#ecfeff;--term-border:rgba(34,211,238,.3);--term-glow:rgba(34,211,238,.18);position:relative;overflow:hidden;display:grid;gap:clamp(22px,3vw,34px)}.auth-term-page::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right,var(--term-glow),transparent 34%),linear-gradient(135deg,rgba(255,255,255,.78),rgba(248,250,252,.52));pointer-events:none}.auth-term-page>*{position:relative}.auth-term-page.tone-emerald{--term-color:#059669;--term-soft:#ecfdf5;--term-border:rgba(16,185,129,.3);--term-glow:rgba(16,185,129,.18)}.auth-term-page.tone-violet{--term-color:#7c3aed;--term-soft:#f5f3ff;--term-border:rgba(139,92,246,.28);--term-glow:rgba(139,92,246,.16)}.auth-term-page.tone-amber{--term-color:#d97706;--term-soft:#fffbeb;--term-border:rgba(245,158,11,.3);--term-glow:rgba(245,158,11,.18)}.auth-term-page.tone-rose{--term-color:#e11d48;--term-soft:#fff1f2;--term-border:rgba(244,63,94,.28);--term-glow:rgba(244,63,94,.16)}.auth-term-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,230px);gap:clamp(22px,5vw,60px);align-items:center}.auth-term-hero h1{margin-top:10px;color:#020617;font-size:clamp(54px,8vw,104px);line-height:.94;font-weight:950}.auth-term-hero p:not(.course-kicker){max-width:900px;margin-top:18px;color:#475569;font-size:clamp(18px,2vw,24px);line-height:1.45;font-weight:700}.auth-term-badge{aspect-ratio:1;display:grid;place-items:center;gap:14px;align-content:center;border:1px solid var(--term-border);border-radius:8px;background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.92),transparent 36%),var(--term-soft);color:var(--term-color)}.auth-term-badge .icon{width:clamp(72px,8vw,112px);height:clamp(72px,8vw,112px);stroke-width:1.8}.auth-term-badge span{border-radius:999px;background:rgba(255,255,255,.72);color:#0f172a;padding:7px 12px;font-size:13px;font-weight:950}.auth-term-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:14px}.auth-term-panel{display:grid;align-content:start;gap:12px;min-height:210px;border:1px solid rgba(226,232,240,.95);border-radius:8px;background:rgba(255,255,255,.82);padding:clamp(18px,2.3vw,24px);box-shadow:0 14px 34px rgba(15,23,42,.05)}.auth-term-panel.focus{border-color:var(--term-border);background:linear-gradient(135deg,var(--term-soft),rgba(255,255,255,.9) 54%),#fff}.auth-term-panel h2{color:#0f172a;font-size:clamp(30px,4vw,52px);line-height:1;font-weight:950}.auth-term-panel p:not(.course-kicker),.auth-term-panel li{color:#52627a;font-size:clamp(15px,1.45vw,18px);line-height:1.55;font-weight:700}.auth-term-panel ul{margin:0;padding-left:19px;display:grid;gap:10px}.auth-term-panel .course-kicker{color:var(--term-color)}
.foundation-concept-page{--concept:#06b6d4;gap:18px;padding:clamp(22px,3vw,34px)}.foundation-concept-page.tone-emerald{--concept:#10b981}.foundation-concept-page.tone-violet{--concept:#8b5cf6}.foundation-concept-page.tone-amber{--concept:#f59e0b}.foundation-concept-page.tone-rose{--concept:#f43f5e}.foundation-concept-hero{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:28px;align-items:center}.foundation-concept-hero h1{margin:5px 0;color:#020617;font-size:clamp(58px,7.5vw,96px);line-height:.88;letter-spacing:-.055em}.foundation-concept-hero p:not(.course-kicker){max-width:800px;margin:15px 0 0;color:#475569;font-size:clamp(19px,2vw,26px);line-height:1.25;font-weight:800}.foundation-concept-badge{width:138px;height:138px;display:grid;place-content:center;justify-items:center;gap:10px;border:1px solid color-mix(in srgb,var(--concept) 35%,#dbe4ef);border-radius:34px;background:color-mix(in srgb,var(--concept) 10%,white);color:var(--concept)}.foundation-concept-badge .icon{width:48px;height:48px}.foundation-concept-badge strong{font-size:11px;letter-spacing:.12em}
.foundation-stage{position:relative;overflow:hidden;min-height:300px;border:1px solid #20344a;border-radius:20px;background-color:#071827;background-image:linear-gradient(rgba(148,163,184,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.07) 1px,transparent 1px),radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--concept) 18%,transparent),transparent 48%);background-size:34px 34px,34px 34px,auto;padding:24px;color:#fff}.foundation-stage header{position:relative;z-index:2;max-width:820px}.foundation-stage header small{display:block;margin-bottom:6px;color:var(--concept);font-size:10px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.foundation-stage header strong{font-size:clamp(24px,3.2vw,40px);line-height:1.08}.foundation-stage-diagram{position:relative;z-index:1;display:flex;align-items:stretch;justify-content:center;gap:15px;margin-top:30px}.concept-node{position:relative;min-width:145px;min-height:92px;display:grid;align-content:center;justify-items:center;gap:8px;border:1px solid color-mix(in srgb,var(--concept) 54%,#334155);border-radius:16px;background:rgba(15,23,42,.88);padding:15px;text-align:center;box-shadow:0 16px 32px rgba(2,6,23,.3)}.concept-node i{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:color-mix(in srgb,var(--concept) 20%,#0f172a);color:var(--concept);font-size:9px;font-style:normal;font-weight:950}.concept-node strong{font-size:14px;line-height:1.2}.foundation-stage--lanes .concept-node:nth-child(even){transform:translateY(24px)}.foundation-stage--interleave .concept-node:not(:last-child)::after,.foundation-stage--retry .concept-node:not(:last-child)::after,.foundation-stage--trace .concept-node:not(:last-child)::after{position:absolute;top:50%;right:-22px;color:var(--concept);font-size:24px;content:"→"}.foundation-stage--interleave .concept-node:nth-child(2){transform:translateY(24px)}.foundation-stage--interleave .concept-node:nth-child(3){transform:translateY(-8px)}.foundation-stage--invariant .foundation-stage-diagram{align-items:center}.foundation-stage--invariant .foundation-stage-diagram::before{position:absolute;z-index:-1;width:170px;height:170px;border:2px solid var(--concept);border-radius:50%;background:rgba(15,23,42,.88);content:"RÈGLE";display:grid;place-items:center;color:#fff;font-size:20px;font-weight:950}.foundation-stage--invariant .concept-node{min-width:190px}.foundation-stage--invariant .concept-node:nth-child(2){margin:90px -36px 0}.foundation-stage--capacity .foundation-stage-diagram{align-items:end}.foundation-stage--capacity .concept-node:nth-child(1){min-height:80px}.foundation-stage--capacity .concept-node:nth-child(2){min-height:125px}.foundation-stage--capacity .concept-node:nth-child(3){min-height:175px;border-color:#fb7185;background:rgba(76,5,25,.58)}.foundation-stage--capacity .concept-node:nth-child(3)::after{position:absolute;top:10px;right:10px;color:#fb7185;content:"SATURATION";font-size:8px;font-weight:950}.foundation-stage--trace .concept-node{border-radius:999px;min-height:76px}.foundation-stage--trace .concept-node:last-child{border-color:#34d399;background:rgba(6,78,59,.66)}
.foundation-concept-explain{display:grid;grid-template-columns:1.08fr .92fr;gap:12px}.foundation-concept-explain section{border:1px solid #dbe4ef;border-radius:16px;background:#f8fafc;padding:17px}.foundation-concept-explain small,.foundation-concept-footer small,.foundation-speaker-prompt small{display:block;margin-bottom:7px;color:var(--concept);font-size:9px;font-weight:950;letter-spacing:.06em;text-transform:uppercase}.foundation-concept-explain h2{margin:0;color:#0f172a;font-size:20px;line-height:1.28}.foundation-concept-explain p{margin:0;color:#526078;font-size:14px;line-height:1.55}.foundation-speaker-prompt{display:grid;grid-template-columns:40px minmax(0,1fr);gap:14px;align-items:center;border-left:4px solid var(--concept);border-radius:0 15px 15px 0;background:color-mix(in srgb,var(--concept) 8%,white);padding:15px 18px}.foundation-speaker-prompt>.icon{width:34px;height:34px;color:var(--concept)}.foundation-speaker-prompt strong{font-size:18px;line-height:1.35}.foundation-concept-footer{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);gap:12px}.foundation-concept-footer>div,.foundation-concept-footer aside{border:1px solid #dbe4ef;border-radius:15px;padding:14px}.foundation-concept-footer p{display:flex;flex-wrap:wrap;gap:7px;margin:0}.foundation-concept-footer p span{border-radius:999px;background:#f1f5f9;color:#475569;padding:7px 9px;font-size:10px;font-weight:900}.foundation-concept-footer aside{border-color:color-mix(in srgb,var(--concept) 25%,#dbe4ef);background:#0f172a;color:#fff}.foundation-concept-footer aside strong{font-size:15px;line-height:1.4}
@media(max-width:960px){.foundation-hub .foundation-hero{min-height:auto;grid-template-columns:1fr;gap:24px}.foundation-overview-visual{width:min(100%,320px);justify-self:center}.foundation-hub .foundation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.foundation-reading-line{grid-template-columns:repeat(3,minmax(0,1fr))}.foundation-reading-line span:nth-child(3){border-right:0}.foundation-reading-line span:nth-child(-n+3){border-bottom:1px solid #dbe4ef}.foundation-stage-diagram{flex-wrap:wrap}.foundation-stage--invariant .concept-node:nth-child(2){margin:0}.foundation-concept-explain,.foundation-concept-footer{grid-template-columns:1fr}}
@media(max-width:720px){.foundation-hub .foundation-hero h1{font-size:clamp(36px,11vw,52px)}.foundation-hub .foundation-hero>div>p:not(.course-kicker){font-size:17px}.foundation-hub .foundation-grid{grid-template-columns:1fr}.foundation-hub .foundation-concept-card{min-height:auto}.foundation-key{grid-template-columns:1fr}.foundation-key>span{width:48px;height:48px}.foundation-concept-hero{grid-template-columns:1fr}.foundation-concept-badge{width:100%;height:auto;grid-template-columns:auto auto;justify-content:start;border-radius:16px;padding:15px}.foundation-concept-badge .icon{width:30px;height:30px}.foundation-stage{min-height:0;padding:18px}.foundation-stage-diagram{display:grid;grid-template-columns:1fr 1fr}.concept-node{min-width:0;min-height:82px!important;transform:none!important}.concept-node::after{display:none!important}.foundation-stage--invariant .foundation-stage-diagram::before{display:none}.foundation-stage--invariant .concept-node{min-width:0}.foundation-concept-hero h1{font-size:56px}.foundation-concept-hero p:not(.course-kicker){font-size:19px}.auth-term-page{gap:18px}.auth-term-hero,.auth-term-grid{grid-template-columns:1fr}.auth-term-hero{gap:18px}.auth-term-hero h1{font-size:clamp(42px,14vw,64px)}.auth-term-hero p:not(.course-kicker){font-size:17px}.auth-term-badge{width:min(100%,220px);justify-self:center}.auth-term-panel,.auth-term-panel.focus{min-height:auto}.auth-term-panel h2{font-size:clamp(28px,9vw,42px)}}

/* Conclusion du pourquoi — composition AuthWeb : chemin, réponse, thèse finale. */
.why-answer-page{display:grid;gap:clamp(22px,3vw,34px)}
.why-answer-hero{display:grid;gap:18px}
.why-answer-hero h1{max-width:980px;margin:10px 0 0;color:#020617;font-size:clamp(42px,5.8vw,78px);line-height:.98;letter-spacing:-.045em;font-weight:950}
.why-answer-hero p:not(.course-kicker){max-width:860px;margin:0;color:#475569;font-size:clamp(18px,2vw,24px);line-height:1.45;font-weight:700}
.why-answer-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.why-answer-card{--answer-color:#0891b2;--answer-soft:#ecfeff;min-height:260px;display:grid;align-content:start;gap:14px;border:1px solid rgba(226,232,240,.95);border-radius:8px;background:linear-gradient(135deg,var(--answer-soft),rgba(255,255,255,.92) 54%),#fff;padding:20px;box-shadow:0 16px 36px rgba(15,23,42,.06)}
.why-answer-card.tone-emerald{--answer-color:#059669;--answer-soft:#ecfdf5}.why-answer-card.tone-amber{--answer-color:#d97706;--answer-soft:#fffbeb}.why-answer-card.tone-violet{--answer-color:#7c3aed;--answer-soft:#f5f3ff}
.why-answer-card>span{width:54px;height:54px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--answer-color) 28%,transparent);border-radius:8px;background:rgba(255,255,255,.78);color:var(--answer-color)}
.why-answer-card>span .icon{width:27px;height:27px}.why-answer-card .course-kicker{color:var(--answer-color)}
.why-answer-card h2{margin:0;color:#0f172a;font-size:clamp(24px,2.4vw,34px);line-height:1;font-weight:950;letter-spacing:-.025em}
.why-answer-card p:not(.course-kicker){margin:0;color:#52627a;font-size:15px;line-height:1.5;font-weight:700}
.why-answer-conclusion{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);gap:clamp(18px,3vw,30px);align-items:start;border:1px solid rgba(34,211,238,.26);border-radius:8px;background:linear-gradient(135deg,rgba(236,254,255,.82),rgba(255,255,255,.92) 50%,rgba(245,243,255,.65)),#fff;padding:clamp(20px,3vw,30px)}
.why-answer-conclusion h2{margin:6px 0 14px;color:#020617;font-size:clamp(30px,4vw,52px);line-height:1;font-weight:950;letter-spacing:-.035em}
.why-answer-conclusion p:not(.course-kicker),.why-answer-conclusion li{color:#475569;font-size:clamp(16px,1.6vw,20px);line-height:1.5;font-weight:750}
.why-answer-conclusion p:not(.course-kicker){margin:0}.why-answer-conclusion ul{display:grid;gap:10px;margin:0;padding-left:20px}
.why-answer-final{border:1px solid rgba(15,23,42,.1);border-radius:8px;background:radial-gradient(circle at top right,rgba(34,211,238,.18),transparent 34%),linear-gradient(135deg,#0f172a,#111827 58%,#172554);color:#fff;padding:clamp(24px,4vw,42px);box-shadow:0 24px 60px rgba(15,23,42,.22)}
.why-answer-final .course-kicker{color:#67e8f9}.why-answer-final h2{max-width:1060px;margin:10px 0 0;color:#fff;font-size:clamp(34px,5vw,70px);line-height:.98;font-weight:950;letter-spacing:-.04em}
.why-answer-final p:not(.course-kicker){max-width:880px;margin:20px 0 0;color:#cbd5e1;font-size:clamp(17px,1.7vw,22px);line-height:1.45;font-weight:750}
@media(max-width:960px){.why-answer-flow{grid-template-columns:repeat(2,minmax(0,1fr))}.why-answer-conclusion{grid-template-columns:1fr}}
@media(max-width:720px){.why-answer-flow{grid-template-columns:1fr}.why-answer-card{min-height:auto}.why-answer-hero h1{font-size:clamp(34px,10vw,48px)}.why-answer-hero p:not(.course-kicker){font-size:17px}}
/* Glossaire AuthWeb — hiérarchie, métriques et modal non native canoniques. */
.glossary-list{display:grid;gap:22px}.glossary-category{padding:22px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--shadow);scroll-margin-top:86px}.glossary-category-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 16px;align-items:end;padding-bottom:16px;border-bottom:1px solid var(--line)}.glossary-category-head .course-kicker{grid-column:1/-1}.glossary-category-head h2{margin:0;color:#1f2937;font-size:24px}.glossary-category-head span{min-height:28px;display:inline-flex;align-items:center;padding:4px 9px;border-radius:4px;background:#f4f7fb;color:var(--muted);font-size:12px;font-weight:900}.glossary-entries{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-top:16px}.glossary-entry{position:relative;min-height:132px;display:grid;align-content:start;gap:10px;padding:15px;border:1px solid #e5ebf3;border-radius:4px;background:#fbfcfe;scroll-margin-top:96px}.glossary-entry h3{display:flex;align-items:baseline;flex-wrap:wrap;gap:7px;margin:0;color:#2f3a4a;font-size:16px;line-height:1.2}.glossary-entry h3 span{color:var(--primary);font-size:12px;font-weight:850}.glossary-entry p{margin:0;color:#68778d;line-height:1.55}.glossary-course-container{gap:18px}.glossary-course-card{display:grid;gap:clamp(22px,3vw,34px)}.glossary-course-hero{min-height:300px;display:grid;gap:clamp(20px,3vw,32px);align-items:end;padding-bottom:clamp(10px,2vw,20px);border-bottom:1px solid rgba(226,232,240,.9)}.glossary-course-hero h1{max-width:1040px;margin:12px 0 0;color:#020617;font-size:clamp(44px,5.8vw,78px);line-height:.98;font-weight:950}.glossary-course-hero p:not(.course-kicker){max-width:820px;margin:20px 0 0;color:#475569;font-size:clamp(18px,2vw,24px);line-height:1.45;font-weight:700}.glossary-course-badges{display:flex;flex-wrap:wrap;gap:10px}.glossary-course-badges span{min-height:48px;display:flex;align-items:center;gap:10px;border:1px solid rgba(148,163,184,.28);border-radius:999px;background:rgba(255,255,255,.82);color:#475569;padding:10px 13px;font-size:12px;line-height:1.25;font-weight:900;box-shadow:0 12px 28px rgba(15,23,42,.06)}.glossary-course-badges .icon{width:17px;height:17px;color:#0891b2;flex:0 0 auto}.glossary-course-tools{display:grid;grid-template-columns:minmax(180px,240px) minmax(0,1fr);gap:16px;align-items:stretch}.glossary-course-stat{min-height:150px;display:grid;align-content:center;gap:8px;border:1px solid rgba(34,211,238,.24);border-radius:8px;background:linear-gradient(135deg,rgba(236,254,255,.86),rgba(255,255,255,.9) 52%,rgba(236,253,245,.78)),#fff;padding:22px}.glossary-course-stat strong{color:#020617;font-size:clamp(42px,5vw,64px);line-height:.9;font-weight:950}.glossary-course-stat span{color:#475569;font-size:13px;line-height:1.35;font-weight:850}.glossary-course-map{display:flex;flex-wrap:wrap;align-content:center;gap:9px;border:1px solid rgba(226,232,240,.9);border-radius:8px;background:linear-gradient(135deg,rgba(255,255,255,.8),rgba(248,250,252,.68)),radial-gradient(circle at 18% 12%,rgba(139,92,246,.09),transparent 38%);padding:18px}.glossary-course-map a{min-height:34px;display:inline-flex;align-items:center;border:1px solid rgba(148,163,184,.25);border-radius:999px;background:rgba(255,255,255,.86);color:#475569;padding:7px 11px;font-size:12px;font-weight:900;text-decoration:none}.glossary-course-map a:hover{border-color:rgba(34,211,238,.5);color:#0f172a;text-decoration:none;box-shadow:0 12px 24px rgba(15,23,42,.08)}.glossary-course-card .glossary-category{border-color:rgba(226,232,240,.95);background:rgba(255,255,255,.78);box-shadow:0 16px 36px rgba(15,23,42,.06);backdrop-filter:blur(12px)}.glossary-course-card .glossary-category-head h2{color:#0f172a;font-size:clamp(28px,3.2vw,42px);line-height:1.08;font-weight:950}.glossary-course-card .glossary-category-head span{border-radius:999px;background:#ecfeff;color:#0891b2}.glossary-course-card .glossary-entry{min-height:150px;border-color:rgba(226,232,240,.95);background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(248,250,252,.78)),radial-gradient(circle at top right,rgba(34,211,238,.1),transparent 46%);box-shadow:none}.glossary-course-card .glossary-entry h3{color:#0f172a;font-size:18px;font-weight:950}.glossary-course-card .glossary-entry h3 span{color:#0891b2}.glossary-course-card .glossary-entry p{color:#64748b;font-size:15px;line-height:1.6;font-weight:650;padding-right:42px}.glossary-search-panel{display:grid;gap:14px;border:1px solid rgba(34,211,238,.24);border-radius:8px;background:linear-gradient(135deg,rgba(236,254,255,.72),rgba(255,255,255,.9) 44%,rgba(245,243,255,.62)),#fff;padding:clamp(16px,2.4vw,24px)}.glossary-search-head{display:flex;align-items:end;justify-content:space-between;gap:16px}.glossary-search-head h2{margin:4px 0 0;color:#0f172a;font-size:clamp(26px,3vw,38px);line-height:1.08;font-weight:950}.glossary-search-head>span{min-height:32px;display:inline-flex;align-items:center;border:1px solid rgba(148,163,184,.25);border-radius:999px;background:rgba(255,255,255,.84);color:#475569;padding:6px 11px;font-size:12px;font-weight:900;white-space:nowrap}.glossary-search-box{position:relative;display:grid;grid-template-columns:22px minmax(0,1fr) 42px;align-items:center;gap:10px;border:1px solid rgba(148,163,184,.3);border-radius:999px;background:rgba(255,255,255,.92);padding:9px 10px 9px 16px;box-shadow:0 18px 42px rgba(15,23,42,.08)}.glossary-search-box>.icon{width:20px;height:20px;color:#0891b2}.glossary-search-box input{width:100%;min-height:42px;border:0;outline:0;background:transparent;color:#0f172a;font:inherit;font-size:18px;font-weight:800}.glossary-search-box input::placeholder{color:#94a3b8}.glossary-search-box input::-webkit-search-cancel-button{appearance:none}.glossary-search-box>button{width:42px;height:42px;min-height:42px;display:grid;place-items:center;border:1px solid rgba(148,163,184,.24);border-radius:999px;background:#fff;padding:0}.glossary-search-box>button .icon{width:17px;height:17px}.glossary-suggestions{position:absolute;z-index:5;top:calc(100% + 10px);left:18px;right:18px;display:none;overflow:hidden;border:1px solid rgba(148,163,184,.28);border-radius:8px;background:rgba(255,255,255,.98);box-shadow:0 24px 58px rgba(15,23,42,.16)}.glossary-suggestions.active{display:grid}.glossary-suggestions button{width:100%;min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:14px;border:0;border-bottom:1px solid rgba(226,232,240,.82);border-radius:0;background:transparent;color:#0f172a;padding:11px 14px;text-align:left;box-shadow:none}.glossary-suggestions button:last-child{border-bottom:0}.glossary-suggestions button:hover{background:#ecfeff;color:#0f172a}.glossary-suggestions strong{font-size:14px;font-weight:950}.glossary-suggestions span{color:#64748b;font-size:12px;font-weight:850}.glossary-search-results{display:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.glossary-search-results.active{display:grid}.glossary-result-card{min-height:172px;display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:14px;align-items:start;border:1px solid rgba(226,232,240,.95);border-radius:8px;background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(248,250,252,.82)),radial-gradient(circle at top right,rgba(34,211,238,.12),transparent 44%);padding:16px}.glossary-result-category{width:fit-content;min-height:26px;display:inline-flex;align-items:center;border-radius:999px;background:#ecfeff;color:#0891b2;padding:4px 9px;font-size:11px;font-weight:950;text-transform:uppercase}.glossary-result-card h3{margin:10px 0 0;color:#0f172a;font-size:22px;line-height:1.12;font-weight:950}.glossary-result-card h3 span{color:#0891b2;font-size:13px}.glossary-result-card p{margin:10px 0 0;color:#64748b;font-size:15px;line-height:1.55;font-weight:650}.glossary-result-card mark{border-radius:4px;background:#fef3c7;color:inherit;padding:0 2px}.glossary-result-card>button{width:44px;height:44px;min-height:44px;display:grid;place-items:center;border:1px solid rgba(148,163,184,.28);border-radius:999px;background:#fff;color:#0f172a;text-decoration:none;padding:0;box-shadow:none}.glossary-result-card>button:hover{border-color:rgba(34,211,238,.5);color:#0891b2}.glossary-result-card>button .icon{width:18px;height:18px}.glossary-empty-result{grid-column:1/-1;min-height:110px;display:grid;align-content:center;gap:7px;border:1px dashed rgba(148,163,184,.42);border-radius:8px;background:rgba(255,255,255,.7);padding:18px;text-align:center}.glossary-empty-result strong{color:#0f172a;font-size:18px;font-weight:950}.glossary-empty-result span{color:#64748b;font-weight:700}
.glossary-term-modal-overlay{position:fixed;inset:0;z-index:80;display:grid;place-items:center;background:radial-gradient(circle at 24% 14%,rgba(34,211,238,.2),transparent 32%),radial-gradient(circle at 82% 76%,rgba(16,185,129,.18),transparent 34%),rgba(15,23,42,.48);padding:clamp(16px,3vw,34px);backdrop-filter:blur(16px)}.glossary-term-dialog{position:relative;z-index:82;outline:0;width:min(1040px,100%);max-height:min(88vh,900px);display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;border:1px solid rgba(226,232,240,.9);border-radius:8px;background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(248,250,252,.86)),radial-gradient(circle at top left,rgba(34,211,238,.14),transparent 40%),radial-gradient(circle at bottom right,rgba(16,185,129,.1),transparent 38%);box-shadow:0 28px 80px rgba(15,23,42,.24)}.glossary-term-modal{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:clamp(16px,3vw,34px)}.glossary-term-modal[hidden]{display:none}.glossary-term-header{display:grid;gap:18px;border-bottom:1px solid rgba(226,232,240,.86);padding:clamp(28px,4vw,46px) clamp(22px,4.4vw,56px) clamp(20px,3vw,30px)}.glossary-term-detail{display:grid;gap:clamp(18px,2.6vw,28px)}.glossary-term-header .course-kicker{width:fit-content;min-height:28px;display:inline-flex;align-items:center;border:1px solid rgba(34,211,238,.26);border-radius:999px;background:#ecfeff;color:#0891b2;padding:5px 10px;font-size:11px;font-weight:950;text-transform:uppercase}.glossary-term-header h2{margin:0;color:#020617;font-size:clamp(38px,4.8vw,68px);line-height:1;font-weight:950}.glossary-term-header h2 span{color:#0891b2;font-size:.42em;font-weight:900}.glossary-term-close{position:absolute;top:clamp(16px,3vw,24px);right:clamp(16px,3vw,24px);z-index:2;width:44px;height:44px;min-height:44px;display:grid;place-items:center;border:1px solid rgba(148,163,184,.28);border-radius:999px;background:rgba(255,255,255,.84);color:#0f172a;padding:0;box-shadow:0 12px 28px rgba(15,23,42,.08)}.glossary-term-close:hover{border-color:rgba(34,211,238,.55);color:#0891b2}.glossary-term-close .icon{width:18px;height:18px}.glossary-term-content{display:grid;gap:22px;overflow:auto;padding:clamp(24px,3.8vw,42px)}.glossary-term-header p:not(.course-kicker){margin:0;border:1px solid rgba(34,211,238,.22);border-radius:8px;background:rgba(236,254,255,.58);color:#334155;padding:clamp(20px,2.7vw,28px);font-size:clamp(18px,2vw,22px);line-height:1.62;font-weight:750}.glossary-term-points,.glossary-term-examples,.glossary-term-notes,.glossary-term-risks{display:grid;gap:16px;border:1px solid rgba(226,232,240,.9);border-radius:8px;background:rgba(255,255,255,.76);padding:clamp(22px,3vw,30px);box-shadow:0 14px 34px rgba(15,23,42,.05)}.glossary-term-points h3,.glossary-term-examples h3,.glossary-term-notes h3,.glossary-term-risks h3,.glossary-term-related h3{margin:0;color:#0f172a;font-size:21px;line-height:1.2;font-weight:950}.glossary-term-points p,.glossary-term-points li,.glossary-term-examples p,.glossary-term-examples li,.glossary-term-notes p,.glossary-term-notes li,.glossary-term-risks p,.glossary-term-risks li{margin:0;color:#64748b;font-size:16px;line-height:1.75;font-weight:650}.glossary-term-points ul,.glossary-term-examples ul,.glossary-term-notes ul,.glossary-term-risks ul{margin:0;padding-left:22px}.glossary-term-points li,.glossary-term-examples li,.glossary-term-notes li,.glossary-term-risks li{margin-top:8px}.glossary-term-related{display:grid;gap:14px;margin-top:clamp(8px,1.6vw,18px);padding-top:clamp(16px,2vw,24px);border-top:1px solid rgba(148,163,184,.24)}.glossary-term-related>div{display:flex;flex-wrap:wrap;gap:11px}.glossary-term-related button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid rgba(16,185,129,.28);border-radius:999px;background:rgba(236,253,245,.86);color:#047857;padding:10px 14px;font-size:12px;font-weight:900;text-decoration:none;box-shadow:none}.glossary-term-related button:hover{border-color:rgba(34,211,238,.52);background:#ecfeff;color:#0891b2}.glossary-term-error{min-height:180px;display:grid;place-items:center;gap:10px;border:1px dashed rgba(241,85,108,.32);border-radius:8px;background:rgba(255,241,242,.76);color:#be123c;padding:24px;text-align:center;font-weight:800}.glossary-entry-open{position:absolute;right:12px;bottom:12px;width:38px;height:38px;min-height:38px;display:grid;place-items:center;border:1px solid rgba(148,163,184,.28);border-radius:999px;background:#fff;color:#0f172a;padding:0;opacity:.92}.glossary-entry-open .icon{width:16px;height:16px}.glossary-entry-open:hover{border-color:rgba(34,211,238,.55);color:#0891b2}.glossary-term-modal-open{overflow:hidden}

/* Bibliographies AuthWeb — vues livre et web, recherche, filtres, tris et détails. */
.authweb-resource-page{--resource-navy:#0b172a;--resource-ink:#132238;--resource-muted:#64748b;--resource-line:#d9e2ec;--resource-paper:#fff;--resource-teal:#00a889;--resource-teal-soft:#eafbf6;--resource-violet:#7148f7;--resource-orange:#e87500;min-height:100vh;padding:26px 0 72px;color:var(--resource-ink);background:#f5f8fb}.resource-shell{position:relative;z-index:1;width:min(1420px,calc(100% - 48px));margin:0 auto}.resource-topbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px}.resource-back{display:inline-flex;align-items:center;flex:0 0 auto;gap:9px;min-height:42px;padding:0 15px;border:1px solid #cfd9e5;border-radius:999px;color:#314158;background:rgba(255,255,255,.9);font-size:13px;font-weight:800;text-decoration:none;box-shadow:0 8px 24px rgba(15,23,42,.05)}.resource-back .icon,.resource-switcher .icon{width:16px;height:16px}.resource-switcher{display:flex;gap:7px;min-width:0;overflow-x:auto;padding:5px;border:1px solid #dbe4ee;border-radius:16px;background:rgba(255,255,255,.88);box-shadow:0 8px 24px rgba(15,23,42,.05);scrollbar-width:none}.resource-switcher::-webkit-scrollbar{display:none}.resource-switcher a{display:inline-flex;align-items:center;flex:0 0 auto;gap:7px;min-height:34px;padding:0 11px;border-radius:11px;color:#637087;font-size:11px;font-weight:800;line-height:1.1;text-decoration:none;transition:background .2s ease,color .2s ease,transform .2s ease}.resource-switcher a:hover{color:var(--resource-ink);background:#f1f5f9;transform:translateY(-1px)}.resource-switcher a.active{color:#fff;background:var(--resource-navy)}.resource-switcher a span{max-width:155px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resource-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:54px;overflow:hidden;padding:54px 58px;border-radius:30px;color:#fff;background:radial-gradient(circle at 82% 20%,rgba(45,212,191,.28),transparent 28%),radial-gradient(circle at 6% 100%,rgba(113,72,247,.28),transparent 34%),var(--resource-navy);box-shadow:0 28px 70px rgba(15,23,42,.18)}.resource-hero:not(:has(.resource-hero-action)){grid-template-columns:minmax(0,1fr)}.resource-hero::after{content:"";position:absolute;top:-190px;right:-80px;width:420px;height:420px;border:1px solid rgba(255,255,255,.1);border-radius:50%;box-shadow:0 0 0 42px rgba(255,255,255,.025),0 0 0 86px rgba(255,255,255,.025);pointer-events:none}.resource-hero-copy,.resource-hero-action{position:relative;z-index:1}.resource-eyebrow{margin:0 0 15px;color:#5eead4;font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.resource-hero h1{max-width:920px;margin:0;color:#fff;font-size:clamp(36px,4.5vw,66px);line-height:.98;letter-spacing:-.05em}.resource-hero-copy>p:not(.resource-eyebrow){max-width:850px;margin:22px 0 0;color:#c7d3e2;font-size:17px;line-height:1.65}.resource-hero-stats{display:flex;flex-wrap:wrap;gap:9px;margin-top:30px}.resource-hero-stats span{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:0 12px;border:1px solid rgba(255,255,255,.14);border-radius:999px;color:#dbe7f3;background:rgba(255,255,255,.07);font-size:12px;font-weight:700}.resource-hero-stats strong{color:#fff;font-size:15px}.resource-hero-stats .icon{width:16px;height:16px;color:#5eead4}.resource-hero-action{align-self:end;padding:24px;border:1px solid rgba(255,255,255,.13);border-radius:22px;background:rgba(255,255,255,.08);backdrop-filter:blur(14px)}.resource-pdf-mark{display:inline-flex;align-items:center;gap:8px;color:#5eead4;font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.resource-pdf-mark .icon{width:17px;height:17px}.resource-hero-action p{margin:12px 0 18px;color:#c7d3e2;font-size:13px;line-height:1.55}.resource-hero-action a{display:flex;align-items:center;justify-content:center;gap:9px;min-height:45px;border-radius:13px;color:var(--resource-navy);background:#5eead4;font-size:13px;font-weight:900;text-decoration:none;transition:transform .2s ease,background .2s ease}.resource-hero-action a:hover{background:#fff;transform:translateY(-2px)}.resource-hero-action a .icon{width:17px;height:17px}.resource-controls{display:grid;grid-template-columns:minmax(300px,1fr) 220px 150px;gap:12px;align-items:stretch;margin:24px 0 14px;padding:13px;border:1px solid var(--resource-line);border-radius:20px;background:rgba(255,255,255,.94);box-shadow:0 16px 38px rgba(15,23,42,.08)}.resource-search{position:relative;display:flex;align-items:center;min-width:0}.resource-search>.icon{position:absolute;left:16px;width:20px;height:20px;color:#718096;pointer-events:none}.resource-search input{width:100%;height:50px;padding:0 48px;border:1px solid #d6e0ea;border-radius:14px;outline:none;color:var(--resource-ink);background:#f8fafc;font:inherit;font-size:14px;font-weight:650;transition:border .2s ease,box-shadow .2s ease,background .2s ease}.resource-search input:focus{border-color:#5dd7c1;background:#fff;box-shadow:0 0 0 4px rgba(20,184,166,.12)}.resource-search button{position:absolute;right:9px;display:grid;width:32px;height:32px;padding:0;border:0;border-radius:9px;place-items:center;color:#718096;background:transparent;cursor:pointer}.resource-search button:hover{color:var(--resource-ink);background:#e9eef4}.resource-search button .icon{width:16px;height:16px}.resource-sort{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:5px;padding:0 9px 0 13px;border:1px solid #d6e0ea;border-radius:14px;background:#f8fafc}.resource-sort>span{display:inline-flex;align-items:center;gap:6px;color:#6a778b;font-size:11px;font-weight:900;text-transform:uppercase}.resource-sort .icon{width:15px;height:15px}.resource-sort select{min-width:0;height:48px;border:0;outline:0;color:var(--resource-ink);background:transparent;font:inherit;font-size:12px;font-weight:800;cursor:pointer}.resource-result-count{display:flex;flex-direction:column;align-items:center;justify-content:center;border-left:1px solid var(--resource-line);color:var(--resource-muted);font-size:10px;font-weight:800;line-height:1.2;text-transform:uppercase}.resource-result-count strong{color:var(--resource-teal);font-size:20px}.resource-filters{display:flex;gap:8px;overflow-x:auto;margin-bottom:24px;padding:2px 2px 8px;scrollbar-width:thin}.resource-filters button{flex:0 0 auto;min-height:38px;padding:0 13px;border:1px solid #d6e0ea;border-radius:999px;color:#5b687c;background:rgba(255,255,255,.88);font:inherit;font-size:11px;font-weight:800;cursor:pointer;transition:.2s ease}.resource-filters button:hover{color:var(--resource-ink);border-color:#8ddfcc;transform:translateY(-1px)}.resource-filters button.active{color:#fff;border-color:var(--resource-navy);background:var(--resource-navy)}.resource-filters button span{display:inline-grid;min-width:21px;height:21px;margin-left:5px;border-radius:999px;place-items:center;color:var(--resource-navy);background:#5eead4;font-size:10px}.resource-list{display:grid;gap:16px}.resource-entry{position:relative;overflow:hidden;border:1px solid var(--resource-line);border-radius:22px;background:var(--resource-paper);box-shadow:0 12px 34px rgba(15,23,42,.065);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;scroll-margin-top:24px}.resource-entry:hover{border-color:#a9dcd2;box-shadow:0 18px 42px rgba(15,23,42,.105);transform:translateY(-2px)}.resource-entry:target,.resource-entry:focus-visible{border-color:var(--resource-teal);outline:4px solid rgba(0,168,137,.13);outline-offset:3px;box-shadow:0 22px 50px rgba(0,107,91,.14)}.resource-entry[hidden]{display:none!important}.resource-entry-bibliography{padding:28px 30px 0}.resource-entry-head{display:grid;grid-template-columns:132px minmax(0,1fr) 38px;gap:22px;align-items:start}.resource-book-visual{position:relative;grid-row:1/span 2;width:132px;min-height:184px;margin:0;overflow:hidden;border:1px solid #dce5ed;border-radius:13px;background:linear-gradient(145deg,#f8fafc,#e9eff5);box-shadow:0 12px 24px rgba(15,23,42,.13)}.resource-book-visual>a{display:block;height:184px}.resource-book-visual img{display:block;width:100%;height:184px;object-fit:contain;background:#fff}.resource-book-visual.is-illustration img{object-fit:cover}.resource-book-visual figcaption{position:absolute;right:5px;bottom:5px;left:5px;overflow:hidden;padding:5px 7px;border-radius:7px;color:#fff;background:rgba(11,23,42,.82);font-size:7px;font-weight:800;line-height:1.2;text-overflow:ellipsis;white-space:nowrap;opacity:0;transform:translateY(4px);transition:opacity .2s ease,transform .2s ease;pointer-events:none}.resource-book-visual:hover figcaption,.resource-book-visual:focus-within figcaption{opacity:1;transform:translateY(0)}.resource-book-placeholder{display:grid;width:100%;height:184px;place-items:center;color:#008a73;background:linear-gradient(155deg,#eafbf6,#dce8ff)}.resource-book-placeholder .icon{width:34px;height:34px}.resource-entry-number{position:absolute;top:8px;left:8px;display:grid;width:34px;height:34px;border:2px solid #fff;border-radius:10px;place-items:center;color:#fff;background:rgba(11,23,42,.9);box-shadow:0 5px 14px rgba(15,23,42,.24);font-size:10px;font-weight:900}.resource-entry-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:9px}.resource-entry-tags span{display:inline-flex;align-items:center;min-height:25px;padding:0 8px;border-radius:8px;color:#526177;background:#eff3f7;font-size:9px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.resource-entry-tags span:first-child{color:#007d69;background:var(--resource-teal-soft)}.resource-entry h2{margin:0;color:var(--resource-ink);font-size:22px;line-height:1.2;letter-spacing:-.025em}.resource-entry-byline,.resource-actor-head p{margin:7px 0 0;color:var(--resource-muted);font-size:12px;font-weight:700;line-height:1.5}.resource-source-link{display:grid;width:38px;height:38px;border:1px solid #d8e2ec;border-radius:12px;place-items:center;color:#546277;background:#fff;transition:.2s ease}.resource-source-link:hover{color:#fff;border-color:var(--resource-teal);background:var(--resource-teal)}.resource-source-link .icon{width:16px;height:16px}.resource-entry-summary{grid-column:2/4;margin:18px 0 24px;color:#44546a;font-size:14px;line-height:1.75}.resource-entry-details{margin:0 -30px;border-top:1px solid #e3eaf1}.resource-entry-details>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:58px;padding:0 30px;color:#344258;background:#f8fafc;font-size:12px;font-weight:900;cursor:pointer;list-style:none}.resource-entry-details>summary::-webkit-details-marker{display:none}.resource-entry-details>summary .icon{width:18px;height:18px;transition:transform .2s ease}.resource-entry-details[open]>summary .icon{transform:rotate(180deg)}.resource-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:22px 30px}.resource-detail-grid section{padding:17px;border:1px solid #e0e7ef;border-radius:15px;background:#fff}.resource-detail-icon{display:grid;width:31px;height:31px;margin-bottom:12px;border-radius:10px;place-items:center}.resource-detail-icon .icon{width:16px;height:16px}.resource-detail-icon.tone-teal{color:#00876e;background:var(--resource-teal-soft)}.resource-detail-icon.tone-violet{color:var(--resource-violet);background:#f0ecff}.resource-detail-icon.tone-orange{color:var(--resource-orange);background:#fff3e3}.resource-detail-grid h3{margin:0 0 8px;font-size:12px}.resource-detail-grid p{margin:0;color:#5c6b7f;font-size:11px;line-height:1.6}.resource-entry-meta{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:0 30px 22px;color:#7b8798;font-size:10px;font-weight:800}.resource-entry-meta a{display:inline-flex;align-items:center;gap:6px;min-height:35px;padding:0 11px;border-radius:10px;color:#006e5b;background:var(--resource-teal-soft);text-decoration:none}.resource-entry-meta .icon{width:14px;height:14px}.resource-entry-learning{padding:25px 26px 0}.resource-actor-head{display:grid;grid-template-columns:53px minmax(0,1fr) 38px;gap:14px;align-items:start}.resource-actor-monogram{display:grid;width:53px;height:53px;border-radius:16px;place-items:center;color:#fff;background:linear-gradient(145deg,var(--resource-teal),#0a7d83);font-size:14px;font-weight:900;letter-spacing:-.03em}.resource-actor-head h2{font-size:20px}.resource-actor-course{margin:20px 0 24px;padding:15px 16px;border-left:3px solid var(--resource-teal);border-radius:0 12px 12px 0;background:#f3faf8}.resource-actor-course span{display:inline-flex;align-items:center;gap:7px;color:#00816b;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.resource-actor-course span .icon{width:15px;height:15px}.resource-actor-course p{margin:8px 0 0;color:#4f6075;font-size:11px;line-height:1.55}.resource-entry-learning .resource-entry-details{margin:0 -26px}.resource-entry-learning .resource-entry-details>summary{padding:0 26px}.resource-entry-learning .resource-detail-grid{grid-template-columns:1fr;padding:20px 26px}.resource-entry-learning .resource-entry-meta{padding:0 26px 20px}.resource-empty{padding:70px 20px;border:1px dashed #bac8d7;border-radius:24px;text-align:center;background:rgba(255,255,255,.82)}.resource-empty[hidden]{display:none}.resource-empty>span{display:grid;width:54px;height:54px;margin:0 auto 14px;border-radius:17px;place-items:center;color:#00876e;background:var(--resource-teal-soft)}.resource-empty h2{margin:0;font-size:24px}.resource-empty p{margin:8px 0 18px;color:var(--resource-muted)}.resource-empty button{min-height:40px;padding:0 14px;border:0;border-radius:11px;color:#fff;background:var(--resource-navy);font:inherit;font-size:12px;font-weight:900;cursor:pointer}.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}

@media(max-width:1180px){.glossary-course-hero,.glossary-course-tools{grid-template-columns:1fr}.glossary-search-results{grid-template-columns:1fr}.resource-topbar{align-items:flex-start;flex-direction:column}.resource-switcher{width:100%}.resource-hero{grid-template-columns:1fr 280px;gap:32px;padding:44px 40px}.resource-hero:not(:has(.resource-hero-action)){grid-template-columns:1fr}.resource-controls{grid-template-columns:minmax(280px,1fr) 210px}.resource-result-count{display:none}}
@media(max-width:860px){.glossary-entries{grid-template-columns:1fr}.glossary-category{max-width:100%;padding:16px}.glossary-category-head{grid-template-columns:1fr;align-items:start}.glossary-course-hero{min-height:auto}.glossary-course-hero h1{font-size:34px;line-height:1.04}.glossary-course-map{padding:14px}.glossary-course-map a{flex:1 1 auto;justify-content:center}.glossary-search-head{align-items:start;flex-direction:column}.glossary-search-box{grid-template-columns:20px minmax(0,1fr) 38px;border-radius:8px}.glossary-search-box input{font-size:16px}.glossary-suggestions{left:0;right:0}.glossary-result-card{grid-template-columns:minmax(0,1fr)}.glossary-result-card>button{width:100%;height:40px}.glossary-term-modal-overlay{align-items:end;padding:10px}.glossary-term-dialog{width:calc(100vw - 20px);max-height:calc(100vh - 20px)}.glossary-term-header{grid-template-columns:1fr;gap:14px;padding:22px 20px 16px}.glossary-term-header h2{max-width:calc(100% - 48px);font-size:clamp(32px,10vw,42px);overflow-wrap:anywhere}.glossary-term-header p:not(.course-kicker){padding:16px;font-size:16px;line-height:1.55}.glossary-term-close{width:40px;height:40px;min-height:40px;top:14px;right:14px}.glossary-term-content{gap:16px;padding:18px}.glossary-term-points,.glossary-term-examples,.glossary-term-notes,.glossary-term-risks{padding:18px}.glossary-term-related button{flex:1 1 auto}}
@media(max-width:760px){.authweb-resource-page{padding-top:14px}.resource-shell{width:min(100% - 24px,1420px)}.resource-switcher a span{max-width:125px}.resource-hero{grid-template-columns:1fr;gap:28px;padding:36px 24px 24px;border-radius:24px}.resource-hero h1{font-size:clamp(34px,12vw,48px)}.resource-hero-copy>p:not(.resource-eyebrow){font-size:15px}.resource-hero-action{padding:19px}.resource-controls{grid-template-columns:1fr}.resource-sort{min-height:48px}.resource-entry-bibliography{padding:22px 20px 0}.resource-entry-head{grid-template-columns:86px minmax(0,1fr);gap:14px}.resource-book-visual,.resource-book-visual>a,.resource-book-visual img,.resource-book-placeholder{width:86px;height:122px;min-height:122px}.resource-entry-number{top:6px;left:6px;width:29px;height:29px;border-radius:9px;font-size:9px}.resource-entry-head .resource-source-link{position:absolute;top:18px;right:18px}.resource-entry-head>div:nth-child(2){padding-right:35px}.resource-entry-summary{grid-column:1/-1;margin-bottom:20px}.resource-entry h2{font-size:19px}.resource-entry-details{margin:0 -20px}.resource-entry-details>summary{padding:0 20px}.resource-detail-grid{grid-template-columns:1fr;padding:18px 20px}.resource-entry-meta{padding:0 20px 20px}.resource-entry-learning{padding:21px 20px 0}.resource-actor-head{grid-template-columns:47px minmax(0,1fr)}.resource-actor-monogram{width:47px;height:47px}.resource-actor-head .resource-source-link{position:absolute;top:17px;right:17px}.resource-actor-head>div:nth-child(2){padding-right:34px}}
@media(prefers-reduced-motion:reduce){.resource-entry,.resource-switcher a{animation:none;transition:none}}

/* The mandatory DAWAP home control occupies AuthWeb's original back-link slot. */
.authweb-resource-page .resource-topbar{padding-left:56px}
@media(max-width:760px){.authweb-resource-page .resource-topbar{padding-left:48px}}

/* Bibliographies enrichies — repères de lecture et références sélectionnées. */
.resource-entry.is-featured{border-color:rgba(245,158,11,.46);box-shadow:0 16px 38px rgba(146,94,8,.1)}
.resource-entry.is-featured::before{content:"";position:absolute;z-index:2;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,#fbbf24,#f59e0b 58%,#d97706);pointer-events:none}
.resource-entry.is-featured:hover{border-color:rgba(217,119,6,.62);box-shadow:0 20px 46px rgba(146,94,8,.14)}
.resource-entry-tags .resource-featured-badge{gap:5px;border:1px solid rgba(217,119,6,.24);color:#92400e;background:#fff7ed;letter-spacing:.035em}
.resource-featured-badge .icon{width:13px;height:13px;flex:0 0 auto;color:#d97706}
.resource-entry-overview{grid-column:2/4;display:grid;gap:12px;margin:17px 0 24px;max-width:64ch}
.resource-entry-overview .resource-entry-summary{grid-column:auto;margin:0;color:#3d4d63;font-size:15px;line-height:1.7;font-weight:620;text-wrap:pretty;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;line-clamp:5;overflow:hidden}
.resource-entry-learning .resource-actor-head p:not(.resource-featured-reason){max-width:64ch;color:#44546a;font-size:14px;line-height:1.68;font-weight:620;text-wrap:pretty;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;line-clamp:5;overflow:hidden}
.resource-featured-reason{display:flex!important;align-items:flex-start;gap:9px;margin:0!important;padding:10px 12px;border-left:3px solid #f59e0b;border-radius:0 10px 10px 0;color:#785116!important;background:#fffbeb;font-size:11px!important;line-height:1.55!important;font-weight:700!important}
.resource-featured-reason strong{flex:0 0 auto;color:#92400e;font-size:9px;line-height:1.7;font-weight:950;letter-spacing:.05em;text-transform:uppercase}
.resource-featured-reason span{min-width:0}
@media(max-width:760px){.resource-entry-overview{grid-column:1/-1;margin:15px 0 20px}.resource-entry-overview .resource-entry-summary,.resource-entry-learning .resource-actor-head p:not(.resource-featured-reason){font-size:14px;line-height:1.65}.resource-featured-reason{display:grid!important;gap:3px}.resource-featured-reason strong{line-height:1.45}}

