:root{--bg:#fbfaf8;--surface:#fff;--border:#e6e2dc;--border-strong:#d3ccc2;--fg:#23201c;--fg-muted:#6d655c;--accent:#2f5d50;--accent-soft:#e8f0ed;--warn:#8a5a1a;--warn-soft:#fbf0dd;--radius:10px;--maxw:46rem}@media (prefers-color-scheme:dark){:root{--bg:#161513;--surface:#1e1d1a;--border:#32302b;--border-strong:#45423b;--fg:#ece8e1;--fg-muted:#a29a8f;--accent:#86c9b4;--accent-soft:#1d2b27;--warn:#e5b877;--warn-soft:#2b2317}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--fg);font-feature-settings:"kern";margin:0;font:16px/1.65 ui-sans-serif,-apple-system,Segoe UI,Roboto,Helvetica Neue,sans-serif}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 1.15rem}a{color:var(--accent);text-underline-offset:2px;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}.site-head{border-bottom:1px solid var(--border);background:var(--surface);margin-bottom:2rem}.site-head .wrap{flex-wrap:wrap;align-items:baseline;gap:.5rem 1.25rem;padding-top:.9rem;padding-bottom:.9rem;display:flex}.brand{letter-spacing:-.01em;color:var(--fg);font-size:1.02rem;font-weight:650;text-decoration:none}.brand span{color:var(--fg-muted);font-weight:400}.site-nav{flex-wrap:wrap;gap:1rem;margin-left:auto;display:flex}.site-nav a{color:var(--fg-muted);font-size:.875rem;text-decoration:none}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--accent)}.banner{color:var(--warn);background:var(--warn-soft);border-bottom:1px solid var(--border);padding:.4rem 0;font-size:.8rem}.banner .wrap{display:block}h1{letter-spacing:-.02em;margin:0 0 .5rem;font-size:1.7rem;font-weight:650;line-height:1.22}h2{letter-spacing:-.01em;margin:2.2rem 0 .7rem;font-size:1.12rem}h3{color:var(--fg-muted);text-transform:uppercase;letter-spacing:.05em;margin:1.6rem 0 .4rem;font-size:.95rem;font-weight:600}p{margin:0 0 1rem}article img{border:1px solid var(--border);border-radius:var(--radius);max-width:100%;height:auto;margin:1.1rem 0 .4rem;display:block}ul,ol{padding-left:1.3rem}li{margin-bottom:.35rem}code{background:var(--accent-soft);border-radius:4px;padding:.1em .35em;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.87em}blockquote{border-left:3px solid var(--border-strong);color:var(--fg-muted);margin:1.2rem 0;padding:.1rem 0 .1rem 1rem;font-style:italic}blockquote p:last-child{margin-bottom:0}hr{border:0;border-top:1px solid var(--border);margin:2rem 0}table{border-collapse:collapse;width:100%;margin:1rem 0;font-size:.9rem}th,td{text-align:left;border-bottom:1px solid var(--border);padding:.4rem .5rem}th{color:var(--fg-muted);font-weight:600}.meta{flex-wrap:wrap;align-items:center;gap:.4rem;margin:0 0 1.6rem;font-size:.8rem;display:flex}.badge{border:1px solid var(--border-strong);color:var(--fg-muted);letter-spacing:.02em;white-space:nowrap;border-radius:999px;padding:.13rem .5rem;font-size:.74rem;display:inline-block}.badge.validated{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.badge.draft,.badge.validation{color:var(--warn);border-color:var(--warn);background:var(--warn-soft)}.badge.private{border-style:dashed}.date{color:var(--fg-muted)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:inherit;margin-bottom:.6rem;padding:.85rem 1rem;text-decoration:none;display:block}.card:hover{border-color:var(--accent)}.card-title{letter-spacing:-.005em;margin:0 0 .3rem;font-weight:600}.card-foot{color:var(--fg-muted);flex-wrap:wrap;gap:.5rem;font-size:.78rem;display:flex}.chips{flex-wrap:wrap;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.chips a,.chips span{background:var(--accent-soft);color:var(--accent);border-radius:999px;padding:.16rem .5rem;font-size:.76rem;text-decoration:none}.chips a:hover{outline:1px solid var(--accent)}.grid{grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.grid a{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:inherit;justify-content:space-between;align-items:baseline;gap:.5rem;padding:.6rem .75rem;font-size:.9rem;text-decoration:none;display:flex}.grid a:hover{border-color:var(--accent)}.grid .n{color:var(--fg-muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.78rem}.empty{color:var(--fg-muted);font-style:italic}.cards{grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:.6rem;margin:0 0 1.2rem;padding:0;list-style:none;display:grid}.cards .card{margin-bottom:0}.cards.large{grid-template-columns:repeat(auto-fill,minmax(19rem,1fr))}.card-summary{color:var(--fg-muted);margin:0 0 .5rem;font-size:.86rem}.period{color:var(--fg-muted);margin:-.9rem 0 1.6rem;font-size:.88rem}.period strong{color:var(--fg);font-weight:600}.period .note{font-style:italic}.period+.period{margin-top:-1.15rem}.xp{border-top:1px solid var(--border);margin-top:2.2rem;padding-top:1.4rem}.xp h2{margin-top:0}.xp-period{color:var(--fg-muted);margin:-.4rem 0 1rem;font-size:.84rem}.xp-period .note{font-style:italic}.xp-items{margin-top:.6rem}.xp-items .snippet{color:var(--fg-muted);font-size:.8rem;display:block}.xp.orphan{border-top-style:dashed}.xp-contracts li:first-child{padding-top:.2rem}.parcours{margin:1.3rem 0 0;padding:0;list-style:none}.parcours-step{border-left:1px solid var(--border-strong);margin:0;padding:0 0 1.15rem 1.35rem;position:relative}.parcours-step:last-child{border-left-color:#0000;padding-bottom:0}.parcours-step:before{content:"";box-sizing:border-box;background:var(--accent);border:2px solid var(--bg);border-radius:50%;width:9px;height:9px;position:absolute;top:.4rem;left:-5px}.parcours-step.formation:before{background:var(--bg);border-color:var(--accent)}.parcours-head{flex-wrap:wrap;align-items:baseline;gap:.45rem;display:flex}.parcours-period{color:var(--fg-muted);font-variant-numeric:tabular-nums;font-size:.8rem}.parcours-title{margin:.15rem 0 0;font-weight:600}.parcours-org{color:var(--fg-muted);margin:.1rem 0 0;font-size:.84rem}.parcours-prog,.parcours-note{color:var(--fg-muted);margin:.15rem 0 0;font-size:.8rem;font-style:italic}.xp-contracts .snippet.note{font-style:italic}.gantt-filter{flex-wrap:wrap;gap:.35rem;margin:0 0 1.2rem;display:flex}.gantt-filter .chip{font:inherit;cursor:pointer;border:1px solid var(--border-strong);background:var(--surface);color:var(--fg-muted);border-radius:999px;padding:.18rem .62rem;font-size:.78rem}.gantt-filter .chip:hover{border-color:var(--accent);color:var(--accent)}.gantt-filter .chip.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:600}.gantt{--gantt-label:12rem;margin:1.4rem 0 0}.gantt-axis{align-items:flex-end;gap:.6rem;margin-bottom:.3rem;display:flex}.gantt-axis-spacer{width:var(--gantt-label);flex:none}.gantt-track{flex:1;min-width:0;position:relative}.gantt-tick{background:var(--border);width:1px;position:absolute;top:0;bottom:0}.gantt-tick-label{color:var(--fg-muted);font-variant-numeric:tabular-nums;background:var(--bg);padding:0 .25rem;font-size:.72rem;position:absolute;top:0;left:0;transform:translate(-50%)}.gantt-axis .gantt-track{height:1.1rem}.gantt-rows{margin:0;padding:0;list-style:none}.gantt-row{align-items:center;gap:.6rem;margin:0;padding:.22rem 0;display:flex}.gantt-row[hidden]{display:none}.gantt-label{width:var(--gantt-label);color:var(--fg);-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:none;font-size:.82rem;font-weight:600;line-height:1.25;text-decoration:none;display:-webkit-box;overflow:hidden}.gantt-label:hover{color:var(--accent)}.gantt-row .gantt-track{background:color-mix(in srgb, var(--fg-muted) 7%, transparent);border-radius:6px;height:1.9rem}.gantt-bar{background:var(--accent);border-radius:5px;align-items:center;min-width:1.2%;height:1.15rem;text-decoration:none;display:flex;position:absolute;top:50%;overflow:hidden;transform:translateY(-50%)}.gantt-bar:hover{outline:2px solid var(--accent);outline-offset:1px}.gantt-bar.approx{background:repeating-linear-gradient(45deg, var(--accent) 0 5px, color-mix(in srgb, var(--accent) 45%, var(--bg)) 5px 10px)}.gantt-bar.open{border-top-right-radius:0;border-bottom-right-radius:0;-webkit-mask-image:linear-gradient(90deg,#000 82%,#0000);mask-image:linear-gradient(90deg,#000 82%,#0000)}.gantt-bar-text{color:#fff;white-space:nowrap;text-overflow:ellipsis;padding:0 .4rem;font-size:.7rem;overflow:hidden}@media (prefers-color-scheme:dark){.gantt-bar-text{color:#10201c}}.gantt-outside{color:var(--fg-muted);white-space:nowrap;font-size:.72rem;position:absolute;top:50%;transform:translateY(-50%)}.gantt-outside.right{margin-left:.35rem}.gantt-outside.left{margin-right:.35rem}.gantt-legend{color:var(--fg-muted);margin:1rem 0 0;font-size:.76rem}.gantt-legend .key{background:var(--accent);vertical-align:-1px;border-radius:3px;width:1.6rem;height:.7rem;margin-right:.3rem;display:inline-block}.gantt-legend .legend-sep{margin-left:1rem}.gantt-legend .key.approx{background:repeating-linear-gradient(45deg, var(--accent) 0 3px, color-mix(in srgb, var(--accent) 45%, var(--bg)) 3px 6px)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=620px){.gantt{--gantt-label:100%}.gantt-axis{display:none}.gantt-row{border-bottom:1px solid var(--border);padding:.4rem 0 .55rem;display:block}.gantt-label{width:auto;margin-bottom:.3rem;display:-webkit-box}.gantt-bar-text{padding:0 .3rem}}.open{margin-bottom:1.9rem}.open h2{margin-top:1.6rem}.open-list{margin:.5rem 0 0;padding:0;list-style:none}.open-list li{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:.4rem;padding:.6rem .8rem}.open-list .where{color:var(--fg-muted);margin-left:.4rem;font-size:.74rem}.open-list .q{margin:.35rem 0 0;font-size:.9rem}.badge.manquant,.badge.confirmer,.badge.creuser{color:var(--warn);border-color:var(--warn);background:var(--warn-soft)}.badge.mesure{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.closed{margin-top:2.6rem}.closed .open-list li.is-closed{opacity:.78;background:0 0}.closed a.where{text-decoration:none}.closed a.where:hover{text-decoration:underline}.badge.clos{color:var(--fg-muted);border-color:var(--border-strong);background:0 0;border-style:dashed}.search-box{width:100%;font:inherit;color:var(--fg);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);margin-bottom:1rem;padding:.65rem .8rem;font-size:.95rem}.search-box:focus{outline:2px solid var(--accent);outline-offset:1px}.plain{padding:0;list-style:none}.plain li{border-bottom:1px solid var(--border);margin:0;padding:.6rem 0}.plain .snippet{color:var(--fg-muted);font-size:.82rem;display:block}mark{background:var(--accent-soft);color:var(--accent);border-radius:3px;padding:0 .1em}.site-foot{border-top:1px solid var(--border);color:var(--fg-muted);margin-top:3.5rem;padding:1.2rem 0 2.5rem;font-size:.78rem}.site-foot p{margin:0}
