:root{--vf-serif:"Fraunces", "Fraunces Fallback", Georgia, serif;--vf-mono:"IBM Plex Mono", "IBM Plex Mono Fallback", "Courier New", monospace}.veille-edition{max-width:760px;margin:0 auto;padding:8rem 1.25rem 5rem}.veille-eyebrow{font-family:var(--vf-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--lab-amber);margin:0 0 1.1rem;font-size:.65rem;font-weight:400}.veille-ed-title{font-family:var(--vf-serif);letter-spacing:-.03em;color:var(--lab-text);margin:0 0 1.2rem;font-size:clamp(2.1rem,5vw,3.2rem);font-weight:900;line-height:1.05}.veille-ed-title em{color:var(--lab-amber);font-style:italic;font-weight:300}.veille-ed-intro{font-family:var(--vf-mono);color:var(--lab-text-mid);max-width:40rem;margin:0;font-size:.9rem;font-weight:300;line-height:1.8}.veille-ai-note{font-family:var(--vf-mono);letter-spacing:.02em;color:var(--lab-text-ghost);margin:.9rem 0 0;font-size:.72rem;line-height:1.5}.veille-edition .lab-rule{margin:1.75rem 0 0}.veille-cat{margin-top:3.5rem}.veille-cat-head{border-bottom:1px solid var(--lab-border-warm);align-items:baseline;gap:.75rem;margin-bottom:1.75rem;padding-bottom:.7rem;display:flex}.veille-cat-label{font-family:var(--vf-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--lab-amber);margin:0;font-size:.7rem;font-weight:400}.veille-cat-count{font-family:var(--vf-mono);letter-spacing:.1em;color:var(--lab-text-ghost);font-size:.62rem}.veille-list{flex-direction:column;gap:1.75rem;margin:0;padding:0;list-style:none;display:flex}.veille-item{border-left:2px solid var(--lab-border);padding-left:1.4rem;transition:border-color .4s cubic-bezier(.16,1,.3,1)}.veille-item:hover{border-left-color:var(--lab-amber)}.veille-item-title{font-family:var(--vf-serif);letter-spacing:-.02em;color:var(--lab-text);margin:0 0 .4rem;font-size:1.18rem;font-weight:700;line-height:1.3;text-decoration:none;transition:color .3s;display:block}.veille-item-title:hover{color:var(--lab-amber)}.veille-item-title:focus-visible{outline:2px solid var(--lab-amber);outline-offset:3px}.veille-item-arrow{font-family:var(--vf-mono);color:var(--lab-text-ghost);font-size:.72em;transition:color .3s,transform .3s;display:inline-block}.veille-item-title:hover .veille-item-arrow{color:var(--lab-amber);transform:translate(2px,-2px)}.veille-item-text{font-family:var(--vf-mono);color:var(--lab-text-mid);margin:0;font-size:.8rem;font-weight:300;line-height:1.75}.veille-item-meta{font-family:var(--vf-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--lab-text-ghost);align-items:center;gap:.5rem;margin:.6rem 0 0;font-size:.62rem;display:flex}.veille-item-meta .sep{color:var(--lab-border-warm)}.veille-editions{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;display:grid}.veille-ed-card{background:var(--lab-surface);border:1px solid var(--lab-border);flex-direction:column;padding:1.75rem;text-decoration:none;transition:border-color .4s cubic-bezier(.16,1,.3,1),transform .4s cubic-bezier(.16,1,.3,1);display:flex}.veille-ed-card:hover{border-color:var(--lab-border-warm);transform:translateY(-3px)}.veille-ed-card:focus-visible{outline:2px solid var(--lab-amber);outline-offset:3px}.veille-ed-card-eyebrow{font-family:var(--vf-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--lab-amber);margin-bottom:.9rem;font-size:.6rem}.veille-ed-card-date{font-family:var(--vf-serif);letter-spacing:-.02em;color:var(--lab-text);margin:0 0 .75rem;font-size:1.5rem;font-weight:700;line-height:1.15}.veille-ed-card-toc{flex-direction:column;flex:1;gap:.6rem;margin:0 0 1.4rem;padding:0;list-style:none;display:flex}.veille-ed-card-toc-item{font-family:var(--vf-mono);color:var(--lab-text-mid);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.76rem;font-weight:300;line-height:1.45;display:-webkit-box;overflow:hidden}.veille-ed-card-toc-cat{color:var(--lab-amber);text-transform:uppercase;letter-spacing:.08em;margin-right:.45rem;font-size:.6rem}.veille-ed-card-toc-more{font-family:var(--vf-mono);letter-spacing:.05em;color:var(--lab-text-ghost);font-size:.66rem}.veille-ed-card-count{font-family:var(--vf-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--lab-text-ghost);border-top:1px solid var(--lab-border);padding-top:.9rem;font-size:.62rem}@media (width<=768px){.veille-edition{padding-top:6rem}}.veille-cta{border-top:1px solid var(--lab-border-warm);flex-direction:column;align-items:flex-start;gap:1rem;margin-top:3.5rem;padding-top:2rem;display:flex}.veille-cta-text{font-family:var(--vf-mono);color:var(--lab-text-mid);max-width:38rem;margin:0;font-size:.9rem;line-height:1.7}.veille-cta-btn{background:var(--lab-amber);color:var(--lab-ground);cursor:pointer;font-family:var(--vf-mono);letter-spacing:.04em;border:none;padding:.7rem 1.4rem;font-size:.8rem;text-decoration:none;transition:opacity .3s;display:inline-block}.veille-cta-btn:hover{opacity:.88}.veille-item-img-link{margin-bottom:.9rem;display:block}.veille-item-img{aspect-ratio:16/9;object-fit:cover;border:1px solid var(--lab-border);border-radius:6px;width:100%;height:auto;display:block}.veille-item{scroll-margin-top:2rem}.veille-item:target{background:var(--lab-surface);box-shadow:0 0 0 1px var(--lab-border-warm);border-radius:8px;transition:background .6s}.veille-share{align-items:center;gap:.5rem;margin-top:.75rem;display:flex}.veille-share-label{font-family:var(--vf-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--lab-text-ghost);margin-right:.15rem;font-size:.7rem}.veille-share-btn{border:1px solid var(--lab-border);width:2rem;height:2rem;color:var(--lab-text-mid);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;padding:0;transition:color .2s,border-color .2s,background .2s;display:inline-flex}.veille-share-btn:hover,.veille-share-btn:focus-visible{color:var(--lab-amber);border-color:var(--lab-border-warm);background:var(--lab-surface)}.veille-share-copy{position:relative}.veille-share-copied{white-space:nowrap;font-family:var(--vf-mono);color:var(--lab-amber);opacity:0;pointer-events:none;font-size:.65rem;transition:opacity .2s;position:absolute;bottom:calc(100% + .35rem);left:50%;transform:translate(-50%)}.veille-share-copy.is-copied .veille-share-copied{opacity:1}@media (prefers-reduced-motion:reduce){.veille-item:target,.veille-share-btn,.veille-share-copied{transition:none}}
