:root{--bg:#fbf7f9;--panel:#fff;--panel-2:#f3ecf0;--text:#22151d;--muted:#6d5a66;--line:#e6d9e0;--accent:#d6336c;--accent-2:#f07a2e;--grad:linear-gradient(120deg, #e8336f 0%, #f0623e 55%, #f2902e 100%);--info:#2f6fd6;--astuce:#198754;--attention:#b7791f;--danger:#c92a3f;--code-bg:#f3ecf0;--radius:12px;--sidebar-w:280px;--font:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#140b11;--panel:#1d1219;--panel-2:#2a1b24;--text:#f7eef2;--muted:#bba6b1;--line:#3b2733;--accent:#ff5a8a;--info:#7aa7ff;--astuce:#4fd18b;--attention:#ffc35c;--danger:#ff7a8a;--code-bg:#2a1b24;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font:17px/1.6 var(--font);margin:0}a{color:var(--accent)}.topbar{z-index:20;background:var(--panel);border-bottom:1px solid var(--line);align-items:center;height:60px;padding:0 20px;display:flex;position:sticky;top:0}.brand{color:var(--text);align-items:center;gap:12px;font-size:18px;line-height:1.15;text-decoration:none;display:flex}.brand b{background:var(--grad);color:#0000;-webkit-background-clip:text;background-clip:text}.brand small{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:12px;display:block}.brand-mark{background:var(--grad);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:22px}.shell{grid-template-columns:var(--sidebar-w) minmax(0, 1fr);max-width:1320px;margin:0 auto;display:grid}.sidebar{border-right:1px solid var(--line);align-self:start;height:calc(100dvh - 60px);padding:18px 14px 40px;position:sticky;top:60px;overflow-y:auto}.search{width:100%;font:inherit;border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:10px;margin-bottom:14px;padding:10px 12px;font-size:15px}.nav-group{margin-bottom:16px}.nav-title{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:0 10px 6px;font-size:12px;font-weight:700}.sidebar ul{margin:0;padding:0;list-style:none}.sidebar li a{color:var(--text);border-radius:8px;padding:7px 10px;font-size:15px;line-height:1.35;text-decoration:none;display:block}.sidebar li a:hover{background:var(--panel-2)}.sidebar li a.active{background:var(--panel-2);color:var(--accent);box-shadow:inset 3px 0 0 var(--accent);font-weight:650}.nav-empty{color:var(--muted);padding:0 10px;font-size:14px}.menu-toggle{display:none}.content{min-width:0;padding:28px 40px 60px}.prose{max-width:820px}.prose h1{letter-spacing:-.01em;margin:4px 0 12px;font-size:34px;line-height:1.15}.prose h2{border-top:1px solid var(--line);margin:40px 0 10px;padding-top:10px;font-size:25px}.prose h3{margin:28px 0 8px;font-size:20px}.prose h4{margin:22px 0 6px;font-size:17px}.prose p,.prose ul,.prose ol{margin:10px 0}.prose li,.prose li>p{margin:4px 0}.prose strong{font-weight:700}.prose code{background:var(--code-bg);border-radius:6px;padding:2px 6px;font-size:.88em}.prose pre{background:var(--code-bg);border-radius:var(--radius);padding:14px 16px;font-size:14px;line-height:1.5;overflow-x:auto}.prose pre code{background:0 0;padding:0}.prose blockquote{border-left:4px solid var(--line);color:var(--muted);margin:14px 0;padding:4px 16px}.prose hr{border:0;border-top:1px solid var(--line);margin:30px 0}.lead{color:var(--muted);font-size:19px}.table-wrap{border:1px solid var(--line);border-radius:var(--radius);margin:14px 0;overflow-x:auto}.prose table{border-collapse:collapse;width:100%;font-size:15px}.prose th,.prose td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:9px 12px}.prose th{background:var(--panel-2);font-weight:700}.prose tr:last-child td{border-bottom:0}.callout{border-radius:var(--radius);border:1px solid var(--line);border-left:5px solid var(--info);background:var(--panel);margin:18px 0;padding:12px 16px}.callout-title{color:var(--info);margin-bottom:2px;display:block}.callout>div>p:first-child{margin-top:0}.callout>div>p:last-child{margin-bottom:0}.callout-astuce{border-left-color:var(--astuce)}.callout-astuce .callout-title{color:var(--astuce)}.callout-attention{border-left-color:var(--attention)}.callout-attention .callout-title{color:var(--attention)}.callout-danger{border-left-color:var(--danger)}.callout-danger .callout-title{color:var(--danger)}.capture{margin:20px 0}.capture img{border-radius:var(--radius);border:1px solid var(--line);width:100%;height:auto;display:block;box-shadow:0 8px 24px #1e0a141f}.capture.etroite{max-width:380px}.capture figcaption{color:var(--muted);margin-top:8px;font-size:14px}.cards{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin:18px 0;display:grid}.card{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);color:var(--text);padding:16px;text-decoration:none;display:block}.card:hover{border-color:var(--accent)}.card b{color:var(--accent);margin-bottom:4px;display:block}.card span{color:var(--muted);font-size:15px}.prevnext{justify-content:space-between;gap:14px;max-width:820px;margin-top:50px;display:flex}.prevnext a{border:1px solid var(--line);border-radius:var(--radius);max-width:48%;color:var(--text);background:var(--panel);flex:1;padding:12px 16px;text-decoration:none}.prevnext a:hover{border-color:var(--accent)}.prevnext .next{text-align:right}.prevnext small{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:12px;display:block}.footer{max-width:820px;color:var(--muted);margin-top:30px;font-size:13px}@media (max-width:900px){.shell{grid-template-columns:minmax(0,1fr)}.menu-toggle{z-index:15;text-align:left;width:100%;font:inherit;background:var(--panel-2);color:var(--text);border:0;border-bottom:1px solid var(--line);padding:12px 16px;font-weight:650;display:block;position:sticky;top:60px}.sidebar{border-right:0;border-bottom:1px solid var(--line);height:auto;display:none;position:static}.sidebar.open{display:block}.content{padding:20px 16px 50px}.prose h1{font-size:28px}.prose h2{font-size:22px}.prevnext{flex-direction:column}.prevnext a{max-width:none}}@media print{.topbar,.sidebar,.menu-toggle,.prevnext,.footer{display:none!important}.shell{display:block}.content{padding:0}body{color:#000;background:#fff;font-size:12pt}.prose{max-width:none}.prose h2{break-after:avoid}.capture{display:none}.callout{break-inside:avoid}a{color:#000;text-decoration:none}}
