.ai-publication{--ai-ink:var(--encre,#172336);--ai-muted:var(--encre-70,#49576b);--ai-accent:var(--accent,#245dcc);--ai-surface:var(--appui-voile,#f3f7fe);--ai-line:var(--trait,#dce3ec);color:var(--ai-ink);max-width:1200px;margin:0 auto;padding:52px 28px 100px;font-size:18px;line-height:1.8}.ai-publication *{box-sizing:border-box}.ai-publication a{color:var(--ai-accent);text-underline-offset:4px;text-decoration:underline}.ai-publication a:hover{text-decoration-thickness:2px}.ai-publication a:focus-visible,.ai-publication [tabindex]:focus-visible{outline:3px solid var(--ai-accent);outline-offset:5px}.ai-publication .ai-breadcrumb{flex-wrap:wrap;gap:8px;margin-bottom:40px;font-size:14px;display:flex}.ai-publication .ai-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--ai-accent);margin-bottom:16px;font-size:13px;font-weight:600}.ai-publication h1{letter-spacing:-.045em;overflow-wrap:break-word;max-width:21ch;margin:0 0 25px;font-size:clamp(36px,5vw,64px);font-weight:600;line-height:1.08}.ai-publication .ai-intro{max-width:70ch;color:var(--ai-muted);margin-bottom:24px;font-size:clamp(20px,2vw,24px);line-height:1.55}.ai-publication .ai-meta{color:var(--ai-muted);border-bottom:1px solid var(--ai-line);flex-wrap:wrap;gap:6px 20px;padding-bottom:28px;font-size:14px;display:flex}.ai-publication .ai-answer{background:var(--ai-surface);border-left:4px solid var(--ai-accent);max-width:88ch;margin:36px 0 48px;padding:26px 30px}.ai-publication .ai-answer p{color:var(--ai-ink);margin:0}.ai-publication .ai-answer strong{margin-bottom:6px;display:block}.ai-publication .ai-layout{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:60px;display:grid}.ai-publication .ai-toc{font-size:14px;line-height:1.5;position:sticky;top:110px}.ai-publication .ai-toc p{margin-bottom:14px;font-weight:600}.ai-publication .ai-toc ol{gap:13px;margin:0;padding-left:18px;display:grid}.ai-publication .ai-toc a{color:var(--ai-muted);text-decoration:none}.ai-publication .ai-toc a:hover{color:var(--ai-accent);text-decoration:underline}.ai-publication .ai-body{min-width:0;max-width:790px}.ai-publication section{margin-bottom:60px;scroll-margin-top:115px}.ai-publication h2{letter-spacing:-.025em;margin:0 0 24px;font-size:clamp(27px,3vw,36px);font-weight:600;line-height:1.2}.ai-publication h3{letter-spacing:-.015em;margin:32px 0 16px;font-size:23px;font-weight:600;line-height:1.3}.ai-publication p{color:var(--ai-ink);margin:0 0 20px}.ai-publication strong{font-weight:600}.ai-publication .ai-body ul,.ai-publication .ai-body ol{list-style:revert;margin:22px 0;padding-left:26px}.ai-publication .ai-body li{margin-bottom:10px}.ai-publication blockquote{border-left:3px solid var(--ai-accent);margin:28px 0;padding:8px 0 8px 24px;font-size:21px;font-style:italic;line-height:1.6}.ai-publication .ai-source{color:var(--ai-muted);overflow-wrap:anywhere;margin-top:-7px;font-size:13px;line-height:1.6}.ai-publication .ai-diagram{background:var(--ai-surface);border:1px solid var(--ai-line);margin:32px 0;padding:28px}.ai-publication .ai-diagram-title{margin-bottom:22px;font-size:14px;font-weight:600;line-height:1.5}.ai-publication .ai-flow{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 24px;display:grid;margin:0!important;padding:0!important;list-style:none!important}.ai-publication .ai-flow li{background:var(--fond,#fff);border:1px solid var(--ai-line);flex-direction:column;gap:8px;margin:0;padding:18px 14px;font-size:15px;line-height:1.5;display:flex;position:relative}.ai-publication .ai-flow li:not(:last-child):after{content:"→";color:var(--ai-accent);font-size:20px;position:absolute;top:50%;right:-22px}.ai-publication .ai-flow li:nth-child(3):not(:last-child):after{content:"↓";top:auto;bottom:-31px;right:50%}.ai-publication .ai-bidirectional li:not(:last-child):after{content:"↔"}.ai-publication .ai-step-number{color:var(--ai-accent);letter-spacing:.1em;font-size:12px;font-weight:600}.ai-publication .ai-loop{margin:20px 0 0;font-size:14px;line-height:1.6}.ai-publication figcaption{color:var(--ai-muted);margin-top:20px;font-size:13px;line-height:1.6}.ai-publication .ai-table-wrap{border:1px solid var(--ai-line);margin:28px 0;overflow-x:auto}.ai-publication table{border-collapse:collapse;width:100%;font-size:16px;line-height:1.6}.ai-publication caption{text-align:left;color:var(--ai-muted);border-bottom:1px solid var(--ai-line);padding:14px 18px;font-size:13px}.ai-publication th,.ai-publication td{text-align:left;vertical-align:top;border-bottom:1px solid var(--ai-line);min-width:115px;padding:16px}.ai-publication th{font-weight:600}.ai-publication thead{background:var(--ai-surface)}.ai-publication tr:last-child td,.ai-publication tr:last-child th{border-bottom:0}.ai-publication .ai-related{border-top:1px solid var(--ai-line);padding-top:32px}.ai-publication .ai-card{border:1px solid var(--ai-line);background:var(--ai-surface);max-width:900px;margin-top:40px;padding:32px;text-decoration:none;display:block}.ai-publication .ai-card h2{margin:12px 0 20px}.ai-publication .ai-card p{color:var(--ai-muted)}.ai-publication .ai-card span{font-size:14px}.ai-publication .ai-card:hover{border-color:var(--ai-accent)}@media (max-width:900px){.ai-publication .ai-layout{grid-template-columns:1fr;gap:40px}.ai-publication .ai-toc{background:var(--ai-surface);padding:24px;position:static}.ai-publication .ai-toc ol{columns:2;display:block}.ai-publication .ai-toc li{break-inside:avoid;margin-bottom:12px}.ai-publication .ai-body{max-width:none}}@media (max-width:560px){.ai-publication{padding:28px 20px 64px;font-size:17px}.ai-publication .ai-breadcrumb{margin-bottom:28px}.ai-publication .ai-answer{margin:28px 0;padding:22px}.ai-publication .ai-toc ol{columns:1}.ai-publication .ai-diagram{padding:20px}.ai-publication .ai-flow{grid-template-columns:1fr;gap:28px}.ai-publication .ai-flow li{flex-direction:row;align-items:baseline;gap:14px;padding:16px}.ai-publication .ai-flow li:not(:last-child):after,.ai-publication .ai-flow li:nth-child(3):not(:last-child):after{content:"↓";top:auto;bottom:-29px;right:50%}.ai-publication .ai-bidirectional li:not(:last-child):after{content:"↕"}.ai-publication table{font-size:14px}.ai-publication th,.ai-publication td{min-width:100px;padding:12px}.ai-publication .ai-card{padding:24px}.ai-publication section{margin-bottom:44px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}.ai-publication .ai-flow:has(li:nth-child(4)){grid-template-columns:1fr;gap:28px}.ai-publication .ai-flow:has(li:nth-child(4)) li{flex-direction:row;gap:14px}.ai-publication .ai-flow:has(li:nth-child(4)) li:not(:last-child):after{content:"↓";top:auto;bottom:-29px;right:50%}
