:root{--blog-border:rgba(148,163,184,.14);--blog-border-hover:rgba(148,163,184,.28);--blog-card-bg:var(--deep);--blog-surface:rgba(30,41,59,.5)}[data-theme=light]{--blog-border:rgba(30,41,59,.1);--blog-border-hover:rgba(30,41,59,.22);--blog-card-bg:var(--deep);--blog-surface:rgba(226,232,240,.5)}.blog-page{max-width:1120px;margin:0 auto;padding:5rem 2rem 8rem}.blog-page-header{position:relative;margin-bottom:3.5rem;padding-bottom:3rem;border-bottom:1px solid var(--blog-border)}.blog-page-header:after{content:"";position:absolute;bottom:-1px;left:0;width:3rem;height:2px;background:var(--accent)}.blog-page-header h1{font-family:var(--font-display);font-size:clamp(2.4rem,5vw,3.8rem);font-weight:400;font-style:italic;letter-spacing:-.025em;color:var(--white);line-height:1.1;margin-bottom:.75rem}.blog-page-header p{color:var(--silver);font-size:.975rem;max-width:480px;line-height:1.65}.blog-search-wrapper{margin-bottom:2rem}.blog-search{display:flex;align-items:stretch;max-width:460px;background:var(--blog-card-bg);border:1px solid var(--blog-border);border-radius:8px;overflow:hidden;transition:border-color .2s,box-shadow .2s}.blog-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px rgba(59,130,246,.1)}.blog-search-input{flex:1 1;padding:.65rem 1rem;background:transparent;border:none;color:var(--white);font-family:var(--font-body);font-size:.9rem;min-width:0}.blog-search-input::placeholder{color:var(--steel)}.blog-search-input:focus{outline:none}.blog-search-clear{display:flex;align-items:center;padding:0 .65rem;background:transparent;border:none;border-left:1px solid var(--blog-border);color:var(--steel);font-size:.75rem;cursor:pointer;transition:color .15s;line-height:1}.blog-search-clear:hover{color:var(--white)}.blog-search-btn{padding:.65rem 1rem;background:var(--accent);border:none;color:#fff;font-family:var(--font-body);font-size:.85rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .15s}.blog-search-btn:hover{background:var(--accent-light)}.blog-search-result-info{margin-bottom:1.5rem;font-size:.875rem;color:var(--silver)}.blog-search-result-info strong{color:var(--white)}.blog-filters{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:3rem}.blog-filter-btn{padding:.3rem .85rem;border-radius:3px;border:1px solid var(--blog-border);background:transparent;color:var(--steel);font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;text-decoration:none;transition:all .15s;white-space:nowrap}.blog-filter-btn:hover{border-color:var(--accent);color:var(--accent)}.blog-filter-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.blog-badge{display:inline-flex;align-items:center;padding:.15rem .55rem;border-radius:3px;font-size:.67rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.blog-badge-ia-codage{background:rgba(59,130,246,.12);color:#60a5fa}.blog-badge-marche-saas{background:rgba(16,185,129,.12);color:#34d399}.blog-badge-article-fond{background:rgba(245,158,11,.12);color:#fbbf24}.blog-card-featured{display:grid;grid-template-columns:1fr auto;grid-gap:2.5rem;gap:2.5rem;align-items:center;padding:2.75rem 3rem;background:var(--blog-card-bg);border:1px solid var(--blog-border);border-radius:14px;text-decoration:none;color:inherit;margin-bottom:2.5rem;position:relative;overflow:hidden;transition:border-color .25s,box-shadow .25s,transform .2s}.blog-card-featured:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--accent),transparent 70%)}.blog-card-featured:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 80% 50%,rgba(59,130,246,.06) 0,transparent 65%);pointer-events:none}.blog-card-featured:hover{border-color:rgba(59,130,246,.35);box-shadow:0 12px 48px rgba(0,0,0,.3),0 0 0 1px rgba(59,130,246,.1);transform:translateY(-2px)}.blog-card-featured-body{display:flex;flex-direction:column;gap:0}.blog-card-featured-label{margin-bottom:1.1rem}.blog-card-featured h2{font-family:var(--font-display);font-size:clamp(1.5rem,2.8vw,2.2rem);font-weight:400;font-style:italic;line-height:1.22;letter-spacing:-.02em;color:var(--white);margin-bottom:1rem}.blog-card-featured-excerpt{font-size:.925rem;color:var(--silver);line-height:1.72;margin-bottom:1.4rem;max-width:54ch}.blog-card-featured-meta{display:flex;align-items:center;gap:.6rem;font-size:.775rem;color:var(--steel)}.blog-card-featured-meta .sep{opacity:.35}.blog-card-featured-aside{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;min-width:120px;height:100%;padding:.5rem 0}.blog-card-featured-number{font-size:clamp(5rem,9vw,8rem);font-weight:900;line-height:1;color:rgba(148,163,184,.06);font-family:var(--font-body);letter-spacing:-.06em;-webkit-user-select:none;-moz-user-select:none;user-select:none}.blog-card-featured-tags{display:flex;flex-direction:column;align-items:flex-end;gap:.35rem;flex-wrap:wrap}.blog-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));grid-gap:1.25rem;gap:1.25rem;margin-bottom:3.5rem}.blog-card{border:1px solid var(--blog-border);border-radius:12px;padding:1.5rem 1.5rem 1.35rem;display:flex;flex-direction:column;gap:0;text-decoration:none;color:inherit;background:var(--blog-card-bg);position:relative;overflow:hidden;transition:border-color .2s,transform .2s,box-shadow .2s;animation:blog-card-in .4s ease both;animation-delay:var(--card-delay,0ms)}@keyframes blog-card-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.blog-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--card-accent,var(--accent));transform:scaleX(0);transform-origin:left;transition:transform .25s ease}.blog-card:hover{border-color:var(--blog-border-hover);transform:translateY(-3px);box-shadow:0 10px 32px rgba(0,0,0,.22)}.blog-card:hover:before{transform:scaleX(1)}.blog-card[data-theme=ia-codage]{--card-accent:#3b82f6}.blog-card[data-theme=marche-saas]{--card-accent:#10b981}.blog-card[data-theme=article-fond]{--card-accent:#f59e0b}.blog-card-meta{display:flex;align-items:center;gap:.45rem;font-size:.74rem;color:var(--steel);margin-bottom:.7rem}.blog-card-meta .separator{opacity:.3}.blog-card h2{font-family:var(--font-display);font-size:1.05rem;font-weight:400;font-style:italic;line-height:1.38;color:var(--white);margin-bottom:.6rem}.blog-card-excerpt{font-size:.865rem;color:var(--silver);line-height:1.65;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:1rem}.blog-card-footer{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:auto;padding-top:.75rem;border-top:1px solid var(--blog-border)}.blog-tag{display:inline-flex;align-items:center;padding:.15rem .5rem;background:rgba(100,116,139,.1);border-radius:3px;font-size:.7rem;color:var(--steel);text-decoration:none;transition:background .15s,color .15s}.blog-tag:hover{background:rgba(100,116,139,.2);color:var(--silver)}.blog-empty{text-align:center;padding:6rem 2rem;color:var(--steel)}.blog-empty p{font-size:1rem}.blog-pagination{display:flex;align-items:center;justify-content:center;gap:.4rem;margin-top:1rem}.blog-pagination a,.blog-pagination span{display:flex;align-items:center;justify-content:center;min-width:2.2rem;height:2.2rem;padding:0 .7rem;border:1px solid var(--blog-border);border-radius:6px;font-size:.83rem;text-decoration:none;color:var(--silver);transition:all .15s}.blog-pagination a:hover{border-color:var(--accent);color:var(--accent)}.blog-pagination .current{background:var(--accent);border-color:var(--accent);color:#fff}.blog-pagination .disabled{opacity:.28;pointer-events:none}.blog-reading-progress{position:fixed;top:70px;left:0;height:2px;background:var(--accent);z-index:900;box-shadow:0 0 12px rgba(59,130,246,.5);transition:width .08s linear;pointer-events:none}.blog-article-page{max-width:760px;margin:0 auto;padding:4rem 2rem 8rem}.blog-breadcrumb{display:flex;align-items:center;gap:.45rem;font-size:.77rem;color:var(--steel);margin-bottom:2.75rem;letter-spacing:.02em}.blog-breadcrumb a{color:var(--steel);text-decoration:none;transition:color .15s}.blog-breadcrumb a:hover{color:var(--accent)}.blog-breadcrumb-sep{opacity:.3}.blog-breadcrumb span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:30ch}.blog-article-header{margin-bottom:3rem}.blog-article-header .blog-badge{margin-bottom:1.25rem}.blog-article-header h1{font-family:var(--font-display);font-size:clamp(1.9rem,4.5vw,3rem);font-weight:400;font-style:italic;line-height:1.2;letter-spacing:-.025em;color:var(--white);margin-bottom:1.25rem}.blog-article-excerpt{font-size:1.05rem;color:var(--silver);line-height:1.78;margin-bottom:1.75rem;padding-left:1.1rem;border-left:2px solid var(--accent)}.blog-article-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.78rem;color:var(--steel);padding:.9rem 0;border-top:1px solid var(--blog-border);border-bottom:1px solid var(--blog-border);margin-bottom:1.5rem}.blog-article-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:2.5rem}.blog-article{font-size:1.025rem;line-height:1.88;color:var(--pearl)}.blog-article h1{display:none}.blog-article h2{font-family:var(--font-display);font-size:1.5rem;font-weight:400;font-style:italic;margin:3rem 0 1rem;color:var(--white);line-height:1.28;letter-spacing:-.015em}.blog-article h3{font-size:1rem;font-weight:700;margin:2.25rem 0 .7rem;color:var(--white);text-transform:uppercase;letter-spacing:.06em;font-size:.8rem}.blog-article p{margin-bottom:1.35rem}.blog-article ol,.blog-article ul{margin:.75rem 0 1.35rem 1.5rem}.blog-article li{margin-bottom:.5rem}.blog-article strong{font-weight:600;color:var(--white)}.blog-article a{color:var(--accent-light);text-decoration:underline;text-underline-offset:3px;-webkit-text-decoration-color:rgba(96,165,250,.4);text-decoration-color:rgba(96,165,250,.4);transition:-webkit-text-decoration-color .15s;transition:text-decoration-color .15s;transition:text-decoration-color .15s,-webkit-text-decoration-color .15s}.blog-article a:hover{-webkit-text-decoration-color:var(--accent-light);text-decoration-color:var(--accent-light)}.blog-article blockquote{border-left:2px solid var(--accent);padding:.4rem 0 .4rem 1.5rem;margin:2rem 0;color:var(--silver);font-style:italic;font-size:1.05rem;line-height:1.75}.blog-article code{background:rgba(59,130,246,.07);border:1px solid rgba(59,130,246,.14);padding:.13em .42em;border-radius:4px;font-size:.875em;font-family:JetBrains Mono,Fira Code,Courier New,monospace;color:#93c5fd}.blog-article pre{background:var(--deep);border:1px solid var(--blog-border);border-radius:10px;padding:1.5rem;overflow-x:auto;margin:1.75rem 0;position:relative}.blog-article pre:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--accent),transparent 60%);border-radius:10px 10px 0 0}.blog-article pre code{background:none;border:none;padding:0;color:var(--pearl);font-size:.88rem}.blog-article hr{border:none;border-top:1px solid var(--blog-border);margin:2.5rem 0}.blog-article table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:.9rem}.blog-article th{text-align:left;padding:.6rem .9rem;border-bottom:2px solid var(--blog-border);font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--steel);font-weight:600}.blog-article td{padding:.6rem .9rem;border-bottom:1px solid var(--blog-border);color:var(--pearl)}.blog-article tr:last-child td{border-bottom:none}.blog-sources{margin-top:4rem;padding:1.75rem 2rem;background:var(--blog-card-bg);border:1px solid var(--blog-border);border-radius:12px}.blog-sources h2{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--steel);margin-bottom:1.1rem}.blog-source-list{display:flex;flex-direction:column;gap:.55rem}.blog-source{display:flex;align-items:baseline;gap:.75rem;font-size:.82rem}.blog-source-num{color:var(--accent);font-weight:700;font-size:.72rem;min-width:1.5rem;flex-shrink:0}.blog-source a{color:var(--silver);text-decoration:none;word-break:break-all}.blog-source a:hover{color:var(--accent-light);text-decoration:underline}.blog-related{margin-top:4rem;padding-top:2.5rem;border-top:1px solid var(--blog-border)}.blog-related h2{font-family:var(--font-display);font-size:1.2rem;font-weight:400;font-style:italic;color:var(--white);margin-bottom:1.4rem}.blog-related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));grid-gap:1rem;gap:1rem}.blog-cta{margin-top:4rem;padding:2.5rem;border-radius:14px;background:linear-gradient(135deg,rgba(59,130,246,.07),rgba(59,130,246,.02));border:1px solid rgba(59,130,246,.18);text-align:center;position:relative;overflow:hidden}.blog-cta:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(59,130,246,.4),transparent)}.blog-cta h3{font-family:var(--font-display);font-size:1.35rem;font-weight:400;font-style:italic;color:var(--white);margin-bottom:.5rem}.blog-cta p{color:var(--silver);font-size:.925rem;margin-bottom:1.5rem;max-width:400px;margin-left:auto;margin-right:auto;line-height:1.65}.blog-cta-actions{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}.blog-cta-btn{padding:.65rem 1.5rem;border-radius:8px;font-size:.875rem;font-weight:600;text-decoration:none;font-family:var(--font-body);transition:all .15s}.blog-cta-btn-primary{background:var(--accent);color:#fff}.blog-cta-btn-primary:hover{background:var(--accent-light);transform:translateY(-1px);box-shadow:0 4px 16px rgba(59,130,246,.35)}.blog-cta-btn-secondary{border:1px solid var(--blog-border);color:var(--silver)}.blog-cta-btn-secondary:hover{border-color:var(--accent);color:var(--accent)}@media (max-width:860px){.blog-card-featured{grid-template-columns:1fr;padding:2rem}.blog-card-featured-aside{display:none}}@media (max-width:640px){.blog-article-page,.blog-page{padding:2rem 1rem 5rem}.blog-list,.blog-related-grid{grid-template-columns:1fr}.blog-article h2{font-size:1.3rem}.blog-cta{padding:1.75rem 1.25rem}}