/* Willow Software blog visual layer
   Keeps the main Willow site shell intact and only refines /blog UI/content. */

:root {
  --blog-panel: rgba(15, 23, 42, 0.72);
  --blog-panel-strong: rgba(15, 23, 42, 0.90);
  --blog-panel-soft: rgba(30, 41, 59, 0.45);
  --blog-border: rgba(148, 163, 184, 0.16);
  --blog-border-strong: rgba(125, 211, 252, 0.24);
  --blog-sky: #7dd3fc;
  --blog-green: #4ade80;
  --blog-violet: #c4b5fd;
  --blog-amber: #fcd34d;
  --blog-text: #e2e8f0;
  --blog-muted: #94a3b8;
}

/* BLOG INDEX ------------------------------------------------------------- */
.blog-index-intro-note {
  position: relative;
  width: 100%;
  max-width: none;
  box-sizing: border-box;
  overflow: hidden;
  border: 1px solid rgba(125,211,252,.18);
  border-radius: 1rem;
  background:
    radial-gradient(circle at 0 0, rgba(56,189,248,.10), transparent 34%),
    linear-gradient(145deg, rgba(15,23,42,.72), rgba(2,6,23,.58));
  padding: .85rem .95rem;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.025);
  color: #cbd5e1;
  font-size: .82rem;
  line-height: 1.5;
}
.blog-index-intro-note::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 3px;
  background: linear-gradient(180deg, #38bdf8, #4ade80 52%, #c4b5fd);
}
.blog-index-intro-note__translations {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .6rem;
  min-width: 0;
}
.blog-index-intro-note__row {
  display: grid;
  grid-template-columns: 2.5rem minmax(0, 1fr);
  align-items: start;
  gap: .65rem;
  min-width: 0;
  border: 1px solid rgba(148,163,184,.10);
  border-radius: .75rem;
  background: rgba(15,23,42,.34);
  padding: .65rem .7rem;
}
.blog-index-intro-note__row p {
  margin: 0;
  min-width: 0;
}
.blog-index-intro-note__row strong {
  color: #f8fafc;
  font-weight: 700;
}
.blog-index-intro-note__row span:not(.blog-lang-chip) {
  color: #cbd5e1;
}
.blog-lang-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.35rem;
  min-height: 1.65rem;
  border: 1px solid rgba(125,211,252,.24);
  border-radius: 999px;
  background: rgba(14,165,233,.08);
  padding: .18rem .45rem;
  color: #bae6fd;
  font-size: .67rem;
  font-weight: 800;
  letter-spacing: .06em;
  line-height: 1;
}
@media (max-width: 680px) {
  .blog-index-intro-note {
    padding: .8rem .8rem .85rem .9rem;
  }
  .blog-index-intro-note__translations {
    grid-template-columns: 1fr;
    gap: .5rem;
  }
  .blog-index-intro-note__row {
    grid-template-columns: 2.35rem minmax(0, 1fr);
    gap: .55rem;
    padding: .6rem .65rem;
  }
}

#blog-latest-highlight {
  position: relative;
  overflow: hidden;
  border-color: rgba(56,189,248,.28) !important;
  background:
    radial-gradient(circle at 92% 0%, rgba(34,197,94,.10), transparent 33%),
    linear-gradient(145deg, rgba(15,23,42,.90), rgba(2,6,23,.76)) !important;
}
#blog-latest-highlight::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 3px;
  background: linear-gradient(#38bdf8,#4ade80);
}

.blog-index-card {
  position: relative;
  overflow: hidden;
  border-color: var(--blog-border) !important;
  background: linear-gradient(145deg, rgba(15,23,42,.78), rgba(2,6,23,.68)) !important;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.blog-index-card:hover {
  transform: translateY(-2px);
  border-color: rgba(125,211,252,.30) !important;
  box-shadow: 0 18px 40px rgba(2,6,23,.32);
}
.blog-index-card__top {
  display: grid;
  gap: .85rem;
  padding: 1rem 1.25rem .85rem;
}
@media (min-width: 720px) {
  .blog-index-card__top {
    grid-template-columns: 3.15rem minmax(0,1fr) auto;
    align-items: start;
    padding: 1.1rem 1.35rem .9rem;
  }
}
.blog-index-card__icon {
  display: none;
  align-self: start;
  margin-top: 1.05rem;
  width: 3.15rem;
  height: 3.15rem;
  border: 1px solid rgba(125,211,252,.20);
  border-radius: .95rem;
  background: radial-gradient(circle at 30% 20%, rgba(56,189,248,.16), rgba(15,23,42,.64));
  color: var(--blog-sky);
  place-items: center;
  box-shadow: inset 0 1px rgba(255,255,255,.04);
}
.blog-index-card__icon svg { width: 1.55rem; height: 1.55rem; }
@media (min-width: 720px) { .blog-index-card__icon { display: grid; } }
.blog-index-card__title {
  margin: .12rem 0 0;
  color: #f8fafc;
  font-size: clamp(1.05rem, .98rem + .25vw, 1.3rem);
  line-height: 1.28;
  font-weight: 750;
  letter-spacing: -.012em;
}
.blog-index-card__meta {
  color: var(--blog-muted);
  font-size: .72rem;
  line-height: 1.45;
}
@media (min-width: 720px) { .blog-index-card__meta { text-align: right; min-width: 8.5rem; } }
.blog-index-card__body { padding: 0 1.25rem 1.15rem; }
@media (min-width: 720px) { .blog-index-card__body { padding-left: 5.35rem; padding-right: 1.35rem; } }
.blog-index-card__summary { max-width: 60rem; color: #cbd5e1; font-size: .88rem; line-height: 1.65; }
.blog-index-card__tags { display:flex; flex-wrap:wrap; gap:.4rem; margin-top:.8rem; }
.blog-index-card__tag {
  display:inline-flex; align-items:center; min-height:1.65rem;
  border:1px solid rgba(148,163,184,.14); border-radius:999px;
  background:rgba(15,23,42,.60); padding:.2rem .55rem;
  color:#a5b4fc; font-size:.66rem; font-weight:700;
}
.blog-index-card__actions { margin-top:.85rem; }
.blog-index-card__read {
  display:inline-flex; align-items:center; gap:.38rem;
  border:1px solid rgba(56,189,248,.35); border-radius:.7rem;
  background:rgba(14,165,233,.08); padding:.48rem .72rem;
  color:#dff6ff; font-size:.78rem; font-weight:800; text-decoration:none;
}
.blog-index-card__read:hover { background:rgba(14,165,233,.16); color:#fff; }
.blog-index-card__read svg { width:.9rem; height:.9rem; }


#blog-latest-link {
  white-space: nowrap;
  flex-shrink: 0;
}

/* ARTICLE BASE ----------------------------------------------------------- */
.blog-article-shell { --blog-reading-width: 76rem; }
.blog-article-shell > div[lang] { max-width: var(--blog-reading-width); margin-inline:auto; }
.blog-article-shell article {
  border-color: var(--blog-border) !important;
  background: linear-gradient(180deg, rgba(15,23,42,.76), rgba(2,6,23,.74)) !important;
  box-shadow: 0 22px 58px rgba(2,6,23,.28) !important;
}
.blog-article-shell article > div:first-of-type {
  background: rgba(15,23,42,.52) !important;
}
.blog-article-shell article h1 {
  font-size: clamp(1.35rem, 1.16rem + .75vw, 1.9rem) !important;
  line-height: 1.22 !important;
  letter-spacing: -.018em;
}
.blog-article-shell article h2,
.blog-article-shell article .blog-section-heading {
  position: relative;
  margin-top: 2.15rem;
  padding-top: .15rem;
  color: #f8fafc !important;
  font-size: clamp(1.12rem, 1.02rem + .45vw, 1.48rem) !important;
  line-height: 1.3 !important;
  letter-spacing: -.012em;
}
.blog-article-shell article h2::before,
.blog-article-shell article .blog-section-heading::before {
  content:"";
  display:inline-block;
  width:.36rem;
  height:1.02em;
  margin-right:.55rem;
  border-radius:999px;
  background:linear-gradient(180deg,#38bdf8,#4ade80);
  vertical-align:-.08em;
}
.blog-article-shell article h3 { font-size: 1rem !important; line-height:1.35 !important; }
.blog-article-shell .blog-post-body { line-height: 1.72; }
.blog-article-shell .blog-post-body > * + * { margin-top: 1.15rem; }
.blog-article-shell .blog-post-body p { max-width: 76ch; }
.blog-article-shell .blog-post-body ul,
.blog-article-shell .blog-post-body ol { line-height:1.68; }
.blog-article-shell .blog-post-body li + li { margin-top:.38rem; }
.blog-article-shell .blog-post-body a:not(.btn):not([class*="button"]):not([class*="sm25-"]) {
  text-underline-offset: .16em;
  text-decoration-thickness: .08em;
}

/* Shared article section treatment: one coherent visual language across every post. */
.blog-article-shell article .blog-section-with-icon {
  display:flex !important;
  align-items:center !important;
  gap:.72rem !important;
  min-width:0;
  margin-top:0 !important;
  margin-bottom:.8rem !important;
  padding:0 !important;
  color:#f8fafc !important;
  line-height:1.3 !important;
}
.blog-article-shell article .blog-section-with-icon::before {
  display:none !important;
  content:none !important;
}
.blog-section-label {
  min-width:0;
  flex:1 1 auto;
  color:inherit;
  line-height:inherit;
}
.blog-section-icon {
  display:grid;
  place-items:center;
  width:2.38rem;
  height:2.38rem;
  flex:0 0 2.38rem;
  border:1px solid rgba(125,211,252,.20);
  border-radius:.8rem;
  background:linear-gradient(145deg,rgba(14,165,233,.10),rgba(15,23,42,.64));
  color:#7dd3fc;
  box-shadow:inset 0 1px rgba(255,255,255,.035);
}
.blog-section-icon svg { width:1.2rem; height:1.2rem; }
.blog-section-icon--salix,
.blog-section-icon--globe { color:#7dd3fc; background:rgba(14,165,233,.09); }
.blog-section-icon--report { color:#93c5fd; background:rgba(37,99,235,.10); }
.blog-section-icon--book { color:#4ade80; background:rgba(34,197,94,.09); }
.blog-section-icon--users { color:#c4b5fd; background:rgba(139,92,246,.10); }
.blog-section-icon--support { color:#f0abfc; background:rgba(168,85,247,.09); }
.blog-section-icon--shield { color:#fcd34d; background:rgba(245,158,11,.09); }
.blog-section-icon--bell { color:#fca5a5; background:rgba(239,68,68,.08); }
.blog-section-icon--device { color:#67e8f9; background:rgba(6,182,212,.08); }
.blog-section-icon--code { color:#a5b4fc; background:rgba(99,102,241,.09); }
.blog-section-icon--ai { color:#e9d5ff; background:rgba(168,85,247,.10); }
.blog-section-icon--rocket { color:#fdba74; background:rgba(249,115,22,.09); }
.blog-section-icon--article { color:#cbd5e1; background:rgba(148,163,184,.07); }

/* Standalone older sections become restrained editorial panels, not landing-page blocks. */
.blog-editorial-section {
  position:relative;
  display:flow-root;
  margin:1.35rem 0 0;
  border:1px solid rgba(148,163,184,.14);
  border-radius:1rem;
  background:linear-gradient(155deg,rgba(15,23,42,.42),rgba(2,6,23,.26));
  padding:1rem 1.05rem;
  box-shadow:inset 0 1px rgba(255,255,255,.02);
}
.blog-editorial-section > *:first-child { margin-top:0 !important; }
.blog-editorial-section > *:last-child { margin-bottom:0 !important; }
.blog-editorial-section > p { color:#cbd5e1; line-height:1.7; }
.blog-editorial-section > p + p { margin-top:.8rem !important; }
.blog-editorial-section > ul,
.blog-editorial-section > ol { margin-top:.75rem !important; margin-bottom:.15rem !important; }
.blog-editorial-section figure { max-width:100%; }

@media(max-width:520px){
  .blog-section-icon{width:2.08rem;height:2.08rem;flex-basis:2.08rem;border-radius:.68rem}
  .blog-section-icon svg{width:1.04rem;height:1.04rem}
  .blog-editorial-section{padding:.9rem .9rem}
}

/* Existing post cards: calmer and more consistent rather than boxed-to-death. */
.blog-article-shell .blog-update-grid { gap: 1rem !important; }
.blog-article-shell .blog-update-card {
  border-color: var(--blog-border) !important;
  background: rgba(15,23,42,.48) !important;
  box-shadow: none !important;
}
.blog-article-shell .blog-update-card:hover { border-color: rgba(125,211,252,.24) !important; }
.blog-article-shell .blog-update-card > .blog-section-with-icon { min-height:2.45rem; }
.blog-article-shell .blog-update-card > .blog-section-with-icon + p { margin-top:.15rem !important; }
.blog-article-shell .blog-glance {
  border-color: rgba(125,211,252,.18) !important;
  background: linear-gradient(145deg, rgba(15,23,42,.68), rgba(2,6,23,.56)) !important;
  box-shadow: none !important;
}
.blog-article-shell .blog-glance__item {
  border-color: rgba(148,163,184,.12) !important;
  background: rgba(2,6,23,.34) !important;
}

/* Editorial media: never crop or zoom screenshots. */
.blog-media-frame {
  width: min(100%, 62rem);
  margin: 1.35rem auto;
  border: 1px solid rgba(148,163,184,.18);
  border-radius: 1rem;
  background: rgba(2,6,23,.55);
  padding: .55rem;
  box-shadow: 0 14px 32px rgba(2,6,23,.22);
}
.blog-media-large {
  display:block !important;
  width:auto !important;
  max-width:100% !important;
  height:auto !important;
  max-height:34rem !important;
  margin-inline:auto !important;
  object-fit:contain !important;
  object-position:center !important;
  border-radius:.7rem !important;
  cursor:zoom-in;
}
@media (max-width: 640px) { .blog-media-large { max-height:24rem !important; } }

/* Shared lightbox */
.blog-lightbox {
  position:fixed; inset:0; z-index:100000;
  display:none; align-items:center; justify-content:center;
  background:rgba(2,6,23,.94); padding:1.25rem;
  backdrop-filter:blur(8px);
}
.blog-lightbox.is-open { display:flex; }
.blog-lightbox__dialog { position:relative; width:min(96vw,88rem); max-height:92vh; display:grid; place-items:center; }
.blog-lightbox__image { display:block; max-width:100%; max-height:88vh; width:auto; height:auto; object-fit:contain; border-radius:.9rem; box-shadow:0 28px 90px rgba(0,0,0,.55); }
.blog-lightbox__close {
  position:absolute; top:-.65rem; right:-.65rem;
  display:grid; place-items:center; width:2.45rem; height:2.45rem;
  border:1px solid rgba(148,163,184,.28); border-radius:999px;
  background:#0f172a; color:#f8fafc; font-size:1.3rem; line-height:1;
  cursor:pointer; box-shadow:0 10px 28px rgba(0,0,0,.35);
}

/* 25 AUGUST 2026 FEATURE POST ------------------------------------------ */
.sm25-content { --sm25-blue:#2563eb; --sm25-green:#16a34a; --sm25-purple:#7c3aed; --sm25-orange:#ea580c; }
.sm25-status-panel {
  position:relative; overflow:hidden;
  border:1px solid rgba(56,189,248,.22); border-radius:1.15rem;
  background:
    radial-gradient(circle at 94% 0%, rgba(34,197,94,.10), transparent 32%),
    linear-gradient(145deg, rgba(15,23,42,.72), rgba(2,6,23,.58));
  padding:1.15rem;
}
.sm25-status-panel::before { content:""; position:absolute; inset:0 auto 0 0; width:3px; background:linear-gradient(#38bdf8,#4ade80); }
.sm25-status-panel { width:100%; grid-column:1 / -1; }
.sm25-status-panel p { max-width:none !important; }
.sm25-status-badge { display:inline-flex; align-items:center; gap:.45rem; color:#bbf7d0; font-size:.72rem; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.sm25-status-badge::before { content:""; width:.48rem; height:.48rem; border-radius:999px; background:#4ade80; box-shadow:0 0 12px rgba(74,222,128,.5); }
.sm25-actions { display:flex; flex-wrap:wrap; gap:.55rem; margin-top:1rem; }
.sm25-action { display:inline-flex; align-items:center; gap:.4rem; min-height:2.35rem; border:1px solid rgba(56,189,248,.30); border-radius:.72rem; background:rgba(14,165,233,.07); padding:.5rem .72rem; color:#e0f2fe!important; font-size:.77rem; font-weight:800; text-decoration:none!important; }
.sm25-action:hover { background:rgba(14,165,233,.14); color:#fff!important; }
.sm25-action svg { width:.92rem; height:.92rem; }

.sm25-section-title { display:flex; align-items:center; gap:.7rem; margin:2.15rem 0 1rem; }
.sm25-section-title::before, .sm25-section-title h2::before { display:none!important; content:none!important; }
.sm25-section-title__icon { display:grid; place-items:center; width:2.35rem; height:2.35rem; flex:0 0 auto; border:1px solid rgba(125,211,252,.20); border-radius:.78rem; background:rgba(14,165,233,.08); color:#7dd3fc; }
.sm25-section-title__icon svg { width:1.18rem; height:1.18rem; }
.sm25-section-title h2 { margin:0!important; padding:0!important; font-size:1.2rem!important; }

.sm25-feature-grid { display:grid; grid-template-columns:1fr; gap:.75rem; }
@media(min-width:680px){ .sm25-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));} }
@media(min-width:1040px){ .sm25-feature-grid{grid-template-columns:repeat(4,minmax(0,1fr));} }
.sm25-feature {
  min-width:0; border:1px solid var(--blog-border); border-radius:1rem;
  background:linear-gradient(160deg,rgba(15,23,42,.60),rgba(2,6,23,.44));
  padding:.9rem;
}
.sm25-feature__head { display:flex; align-items:center; gap:.68rem; min-height:3rem; }
.sm25-feature__icon { display:grid; place-items:center; width:2.65rem; height:2.65rem; flex:0 0 2.65rem; border-radius:.88rem; }
.sm25-feature__icon svg { width:1.42rem; height:1.42rem; }
.sm25-feature:nth-child(1) .sm25-feature__icon { background:rgba(14,165,233,.11); color:#38bdf8; }
.sm25-feature:nth-child(2) .sm25-feature__icon { background:rgba(34,197,94,.10); color:#4ade80; }
.sm25-feature:nth-child(3) .sm25-feature__icon { background:rgba(168,85,247,.11); color:#c4b5fd; }
.sm25-feature:nth-child(4) .sm25-feature__icon { background:rgba(59,130,246,.11); color:#93c5fd; }
.sm25-feature h3 { margin:0!important; color:#f8fafc!important; font-size:.9rem!important; line-height:1.28!important; }
.sm25-feature p { margin:.7rem 0 0!important; color:#cbd5e1; font-size:.79rem; line-height:1.55; }

.sm25-flow { display:grid; grid-template-columns:1fr; gap:.65rem; }
.sm25-step { position:relative; min-width:0; border:1px solid var(--blog-border); border-radius:1rem; background:rgba(15,23,42,.48); padding:.9rem .9rem .9rem 3.4rem; }
.sm25-step__number { position:absolute; left:.9rem; top:.9rem; display:grid; place-items:center; width:1.85rem; height:1.85rem; border-radius:999px; color:white; font-size:.72rem; font-weight:900; }
.sm25-step:nth-child(1) .sm25-step__number{background:var(--sm25-green)}
.sm25-step:nth-child(2) .sm25-step__number{background:#0284c7}
.sm25-step:nth-child(3) .sm25-step__number{background:var(--sm25-purple)}
.sm25-step:nth-child(4) .sm25-step__number{background:var(--sm25-orange)}
.sm25-step h3{margin:0!important;color:#f8fafc!important;font-size:.9rem!important}
.sm25-step p{margin:.38rem 0 0!important;color:#cbd5e1;font-size:.78rem;line-height:1.5}
@media(min-width:900px){
  .sm25-flow{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.45rem;align-items:stretch}
  .sm25-step{padding:1rem .85rem 1rem 3.25rem;min-height:7.3rem}
  .sm25-step:not(:last-child)::after{
    content:""; position:absolute; top:50%; right:-1.04rem; width:.68rem; height:.68rem;
    border-top:2px solid rgba(148,163,184,.58); border-right:2px solid rgba(148,163,184,.58);
    transform:translateY(-50%) rotate(45deg);
  }
  .sm25-step:not(:last-child)::before{
    content:""; position:absolute; top:50%; right:-.96rem; width:.9rem; height:2px;
    background:rgba(148,163,184,.40); transform:translateY(-50%);
  }
}

.sm25-two { display:grid; grid-template-columns:1fr; gap:.8rem; }
@media(min-width:860px){ .sm25-two{grid-template-columns:repeat(2,minmax(0,1fr));} }
.sm25-callout { border:1px solid var(--blog-border); border-radius:1rem; background:rgba(15,23,42,.46); padding:1rem; }
.sm25-callout--green { border-color:rgba(34,197,94,.20); background:linear-gradient(145deg,rgba(20,83,45,.14),rgba(15,23,42,.48)); }
.sm25-callout--blue { border-color:rgba(56,189,248,.20); background:linear-gradient(145deg,rgba(3,105,161,.12),rgba(15,23,42,.48)); }
.sm25-callout--purple { border-color:rgba(168,85,247,.20); background:linear-gradient(145deg,rgba(88,28,135,.11),rgba(15,23,42,.48)); }
.sm25-callout--amber { border-color:rgba(245,158,11,.20); background:linear-gradient(145deg,rgba(120,53,15,.11),rgba(15,23,42,.48)); }
.sm25-callout__head { display:flex; align-items:center; gap:.65rem; }
.sm25-callout__icon { display:grid; place-items:center; width:2.25rem; height:2.25rem; flex:0 0 auto; border-radius:.8rem; background:rgba(255,255,255,.04); color:#7dd3fc; }
.sm25-callout__icon svg{width:1.15rem;height:1.15rem}
.sm25-callout h3{margin:0!important;color:#f8fafc!important;font-size:.96rem!important}
.sm25-callout p{margin:.62rem 0 0!important;color:#cbd5e1;font-size:.82rem;line-height:1.58}
/* Full-width editorial callouts should use the full panel width, not the general prose measure. */
/* Designed article sections use the full content width. The global 76ch prose cap
   remains for ordinary article prose, but not for top-level copy in sm25 layouts. */
.sm25-content > p,
.sm25-content > .sm25-callout > p {
  max-width:none !important;
  width:100%;
}
.sm25-callout ul{margin:.7rem 0 0;padding-left:1.15rem;color:#cbd5e1;font-size:.8rem;line-height:1.58}

.sm25-app-grid { display:grid; grid-template-columns:1fr; gap:.75rem; }
@media(min-width:780px){.sm25-app-grid{grid-template-columns:repeat(3,minmax(0,1fr));}}
.sm25-app-card{border:1px solid var(--blog-border);border-radius:1rem;background:rgba(15,23,42,.48);padding:.9rem}
.sm25-app-card__head{display:flex;align-items:center;gap:.65rem}
.sm25-app-card__icon{display:grid;place-items:center;width:2.35rem;height:2.35rem;border-radius:.8rem;background:rgba(14,165,233,.08);color:#7dd3fc;flex:0 0 auto}
.sm25-app-card__icon svg{width:1.2rem;height:1.2rem}
.sm25-app-card h3{margin:0!important;color:#f8fafc!important;font-size:.9rem!important}
.sm25-app-card__status{display:inline-flex;margin-top:.65rem;border:1px solid rgba(34,197,94,.20);border-radius:999px;background:rgba(34,197,94,.07);padding:.25rem .5rem;color:#bbf7d0;font-size:.67rem;font-weight:800}
.sm25-app-card p{margin:.58rem 0 0!important;color:#cbd5e1;font-size:.79rem;line-height:1.55}

.sm25-closing { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:.7rem; border:1px solid rgba(34,197,94,.22); border-radius:1rem; background:linear-gradient(110deg,rgba(20,83,45,.16),rgba(3,105,161,.11)); padding:.9rem 1rem; }
.sm25-closing strong{color:#f8fafc;font-size:.82rem}.sm25-closing span{color:#a7f3d0;font-size:.75rem}

@media (prefers-reduced-motion: reduce) {
  .blog-index-card, .blog-index-card__read, .sm25-action { transition:none!important; }
}

/* Unified semantic accents for legacy and current article sections. */
.blog-unified-card,
.blog-editorial-section {
  --blog-section-accent:#38bdf8;
}
.blog-unified-card[data-blog-icon-type="report"], .blog-editorial-section[data-blog-icon-type="report"] { --blog-section-accent:#60a5fa; }
.blog-unified-card[data-blog-icon-type="book"], .blog-editorial-section[data-blog-icon-type="book"] { --blog-section-accent:#4ade80; }
.blog-unified-card[data-blog-icon-type="users"], .blog-editorial-section[data-blog-icon-type="users"] { --blog-section-accent:#c4b5fd; }
.blog-unified-card[data-blog-icon-type="support"], .blog-editorial-section[data-blog-icon-type="support"] { --blog-section-accent:#e879f9; }
.blog-unified-card[data-blog-icon-type="shield"], .blog-editorial-section[data-blog-icon-type="shield"] { --blog-section-accent:#facc15; }
.blog-unified-card[data-blog-icon-type="bell"], .blog-editorial-section[data-blog-icon-type="bell"] { --blog-section-accent:#fb7185; }
.blog-unified-card[data-blog-icon-type="device"], .blog-editorial-section[data-blog-icon-type="device"] { --blog-section-accent:#22d3ee; }
.blog-unified-card[data-blog-icon-type="code"], .blog-editorial-section[data-blog-icon-type="code"] { --blog-section-accent:#a5b4fc; }
.blog-unified-card[data-blog-icon-type="ai"], .blog-editorial-section[data-blog-icon-type="ai"] { --blog-section-accent:#d8b4fe; }
.blog-unified-card[data-blog-icon-type="rocket"], .blog-editorial-section[data-blog-icon-type="rocket"] { --blog-section-accent:#fb923c; }
.blog-unified-card[data-blog-icon-type="salix"], .blog-editorial-section[data-blog-icon-type="salix"] { --blog-section-accent:#38bdf8; }
.blog-unified-card::after,
.blog-editorial-section::after {
  content:"";
  position:absolute;
  left:0;
  top:.8rem;
  bottom:.8rem;
  width:2px;
  border-radius:999px;
  background:var(--blog-section-accent);
  opacity:.65;
}
.blog-unified-card { position:relative; }

/* Keep icon/title geometry consistent on the feature post as well. */
.sm25-feature__head,
.sm25-callout__head,
.sm25-app-card__head,
.sm25-section-title {
  min-width:0;
}
.sm25-feature__icon,
.sm25-callout__icon,
.sm25-app-card__icon,
.sm25-section-title__icon {
  flex-shrink:0;
}
.sm25-feature h3,
.sm25-callout h3,
.sm25-app-card h3,
.sm25-section-title h2 {
  min-width:0;
}


/* 3 SEPTEMBER 2026 - 2013 AJAX CODE ARCHAEOLOGY ----------------------- */
.ws13-content{--ws13-old:#f59e0b;--ws13-new:#22c55e;--ws13-danger:#fb7185}
.ws13-hero{background:radial-gradient(circle at 92% 8%,rgba(139,92,246,.13),transparent 34%),radial-gradient(circle at 15% 100%,rgba(14,165,233,.10),transparent 34%),linear-gradient(145deg,rgba(15,23,42,.76),rgba(2,6,23,.62))}
.ws13-hero-grid{display:grid;grid-template-columns:1fr;gap:1rem;align-items:center}
@media(min-width:900px){.ws13-hero-grid{grid-template-columns:minmax(0,.92fr) minmax(23rem,1.08fr)}}
.ws13-time-machine{display:flex;align-items:center;justify-content:center;gap:.55rem;min-width:0;padding:1rem;border:1px solid rgba(148,163,184,.16);border-radius:1rem;background:rgba(2,6,23,.55);box-shadow:inset 0 1px rgba(255,255,255,.03)}
.ws13-year,.ws13-blocked{display:grid;place-items:center;min-width:6.25rem;padding:.72rem .8rem;border:1px solid rgba(245,158,11,.28);border-radius:.85rem;background:rgba(245,158,11,.08);text-align:center}.ws13-year span,.ws13-blocked span{color:#f8fafc;font-size:1.15rem;font-weight:900}.ws13-year small,.ws13-blocked small{margin-top:.16rem;color:#fcd34d;font-size:.62rem;font-weight:800;letter-spacing:.08em}.ws13-year--new{border-color:rgba(34,197,94,.28);background:rgba(34,197,94,.08)}.ws13-year--new small{color:#86efac}.ws13-blocked{min-width:5rem;border-color:rgba(244,63,94,.33);background:rgba(244,63,94,.09)}.ws13-blocked span{color:#fda4af}.ws13-blocked small{color:#fecdd3}.ws13-time-arrow{display:grid;place-items:center;width:1.6rem;color:#64748b}.ws13-time-arrow svg{width:1.25rem;height:1.25rem}@media(max-width:620px){.ws13-time-machine{gap:.3rem;padding:.7rem}.ws13-year,.ws13-blocked{min-width:0;flex:1;padding:.62rem .4rem}.ws13-year span,.ws13-blocked span{font-size:.92rem}.ws13-year small,.ws13-blocked small{font-size:.52rem}.ws13-time-arrow{width:.9rem}}
.ws13-quote{display:flex;gap:.8rem;align-items:flex-start;margin:1rem 0 0!important;padding:.85rem 1rem!important;border:1px solid rgba(168,85,247,.20)!important;border-left:3px solid #a855f7!important;border-radius:.9rem;background:rgba(88,28,135,.10)!important;color:#e9d5ff!important}.ws13-quote p{margin:0!important}.ws13-quote__icon{display:grid;place-items:center;flex:0 0 auto;width:2rem;height:2rem;color:#c4b5fd}.ws13-quote__icon svg{width:1.25rem;height:1.25rem}
.ws13-icon--danger{color:#fda4af!important;border-color:rgba(244,63,94,.28)!important;background:rgba(244,63,94,.08)!important}.ws13-icon--safe{color:#86efac!important;border-color:rgba(34,197,94,.28)!important;background:rgba(34,197,94,.08)!important}
.ws13-code-grid{display:grid;grid-template-columns:1fr;gap:1rem;margin:1rem 0}@media(min-width:1080px){.ws13-code-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}
.ws13-code-card{min-width:0;overflow:hidden;border:1px solid rgba(245,158,11,.23);border-radius:1rem;background:#020617;box-shadow:0 18px 42px rgba(2,6,23,.26)}.ws13-code-card--new{border-color:rgba(34,197,94,.22)}
.ws13-code-bar{display:flex;align-items:center;gap:.4rem;min-height:2.65rem;padding:.55rem .75rem;border-bottom:1px solid rgba(148,163,184,.14);background:linear-gradient(180deg,rgba(30,41,59,.92),rgba(15,23,42,.92));color:#cbd5e1}.ws13-code-bar strong{min-width:0;overflow:hidden;margin-left:.28rem;color:#f8fafc;font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.ws13-code-bar em{margin-left:auto;color:#64748b;font-size:.62rem;font-style:normal;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.ws13-dot{width:.55rem;height:.55rem;border-radius:999px}.ws13-dot--red{background:#fb7185}.ws13-dot--amber{background:#fbbf24}.ws13-dot--green{background:#4ade80}
.ws13-code-card pre,.ws13-test pre{margin:0!important;border:0!important;border-radius:0!important;background:#020617!important;padding:1rem!important;font-size:.72rem!important;line-height:1.56!important;overflow:auto;max-height:34rem}.ws13-code-card code,.ws13-test code{font-family:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace!important}
.ws13-chain{display:grid;grid-template-columns:1fr;gap:.6rem;margin:1rem 0}.ws13-chain section{position:relative;border:1px solid rgba(148,163,184,.18);border-radius:1rem;background:linear-gradient(145deg,rgba(15,23,42,.80),rgba(2,6,23,.66));padding:1rem}.ws13-chain section>span{display:inline-flex;margin-bottom:.6rem;border:1px solid rgba(56,189,248,.23);border-radius:999px;background:rgba(14,165,233,.08);padding:.22rem .48rem;color:#7dd3fc;font-family:monospace;font-size:.68rem;font-weight:800}.ws13-chain h3{margin:0!important;color:#f8fafc!important;font-size:.9rem!important}.ws13-chain p{margin:.45rem 0 0!important;color:#cbd5e1;font-size:.78rem;line-height:1.55}.ws13-chain-danger{border-color:rgba(244,63,94,.24)!important;background:linear-gradient(145deg,rgba(127,29,29,.12),rgba(15,23,42,.68))!important}.ws13-chain-danger>span{border-color:rgba(244,63,94,.25)!important;background:rgba(244,63,94,.09)!important;color:#fda4af!important}.ws13-chain-arrow{display:none;place-items:center;color:#64748b}.ws13-chain-arrow svg{width:1.3rem;height:1.3rem}@media(min-width:900px){.ws13-chain{grid-template-columns:minmax(0,1fr) 2rem minmax(0,1fr) 2rem minmax(0,1fr);align-items:stretch}.ws13-chain-arrow{display:grid}}
.ws13-comment-callout{display:flex;gap:1rem;align-items:flex-start;margin:1.2rem 0;padding:1rem;border:1px solid rgba(245,158,11,.26);border-radius:1rem;background:linear-gradient(145deg,rgba(120,53,15,.13),rgba(15,23,42,.56))}.ws13-comment-callout__icon{display:grid;place-items:center;flex:0 0 auto;width:2.6rem;height:2.6rem;border-radius:.85rem;background:rgba(245,158,11,.09);color:#fbbf24}.ws13-comment-callout__icon svg{width:1.35rem;height:1.35rem}.ws13-comment-callout h3{margin:0!important;color:#f8fafc!important;font-size:.95rem!important}.ws13-comment-callout p{margin:.45rem 0 .7rem!important;color:#cbd5e1;font-size:.82rem;line-height:1.58}.ws13-comment-callout code{display:block;overflow:auto;border:1px solid rgba(245,158,11,.18);border-radius:.7rem;background:#020617;padding:.65rem .75rem;color:#fde68a;font-size:.72rem;white-space:nowrap}
.ws13-versus{display:grid;grid-template-columns:1fr;gap:.75rem;align-items:stretch;margin:1rem 0}.ws13-versus section{border:1px solid rgba(148,163,184,.18);border-radius:1rem;padding:1rem}.ws13-versus-old{background:linear-gradient(145deg,rgba(120,53,15,.13),rgba(15,23,42,.55))}.ws13-versus-new{background:linear-gradient(145deg,rgba(20,83,45,.13),rgba(15,23,42,.55))}.ws13-versus strong{display:inline-flex;border-radius:999px;padding:.25rem .55rem;font-size:.7rem;font-weight:900}.ws13-versus-old strong{background:rgba(245,158,11,.10);color:#fcd34d}.ws13-versus-new strong{background:rgba(34,197,94,.10);color:#86efac}.ws13-versus p{margin:.65rem 0 0!important;color:#cbd5e1;font-size:.82rem;line-height:1.58}.ws13-versus-vs{display:grid;place-items:center;color:#64748b;font-size:.7rem;font-weight:900}@media(min-width:800px){.ws13-versus{grid-template-columns:minmax(0,1fr) 2.6rem minmax(0,1fr)}}
.ws13-test{display:flex;gap:1rem;align-items:flex-start;margin:1.25rem 0;padding:1rem;border:1px solid rgba(34,197,94,.22);border-radius:1rem;background:linear-gradient(145deg,rgba(20,83,45,.13),rgba(15,23,42,.55))}.ws13-test__icon{display:grid;place-items:center;flex:0 0 auto;width:2.6rem;height:2.6rem;border-radius:.85rem;background:rgba(34,197,94,.09);color:#86efac}.ws13-test__icon svg{width:1.35rem;height:1.35rem}.ws13-test h3{margin:0!important;color:#f8fafc!important;font-size:.95rem!important}.ws13-test p{margin:.45rem 0 .75rem!important;color:#cbd5e1;font-size:.82rem}.ws13-test pre{max-height:none!important;border:1px solid rgba(34,197,94,.16)!important;border-radius:.7rem!important;padding:.7rem!important}
.ws13-download{display:grid;grid-template-columns:auto 1fr;gap:.9rem;align-items:center;margin:1.4rem 0;padding:1.1rem;border:1px solid rgba(56,189,248,.27);border-radius:1.1rem;background:radial-gradient(circle at 100% 0%,rgba(139,92,246,.12),transparent 34%),linear-gradient(145deg,rgba(3,105,161,.13),rgba(15,23,42,.58));box-shadow:0 18px 44px rgba(2,6,23,.22)}.ws13-download__icon{display:grid;place-items:center;width:3rem;height:3rem;border:1px solid rgba(56,189,248,.26);border-radius:.95rem;background:rgba(14,165,233,.09);color:#7dd3fc}.ws13-download__icon svg{width:1.45rem;height:1.45rem}.ws13-download h2{margin:0!important;color:#f8fafc!important;font-size:1rem!important}.ws13-download p{margin:.35rem 0 0!important;color:#cbd5e1;font-size:.8rem}.ws13-download__button{grid-column:1/-1;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:2.7rem;border:1px solid rgba(56,189,248,.40);border-radius:.8rem;background:linear-gradient(135deg,rgba(14,165,233,.22),rgba(37,99,235,.18));padding:.65rem .85rem;color:#e0f2fe!important;font-size:.78rem;font-weight:850;text-decoration:none!important}.ws13-download__button:hover{background:linear-gradient(135deg,rgba(14,165,233,.31),rgba(37,99,235,.26));color:#fff!important}.ws13-download__button svg{width:1rem;height:1rem}@media(min-width:800px){.ws13-download{grid-template-columns:auto minmax(0,1fr) auto}.ws13-download__button{grid-column:auto}}
.ws13-closing{margin-top:1.35rem;border-top:1px solid rgba(148,163,184,.14);padding-top:1.1rem}.ws13-closing p{margin:.65rem 0!important}.ws13-closing strong{color:#f8fafc}

/* BLOG_PRODUCT_LANGUAGE_AVAILABILITY_20260910
   Product links stay visible in translated articles but are deliberately disabled
   while the applications are English-only. */
.sm25-action--disabled {
  opacity: .46;
  filter: saturate(.38);
  cursor: not-allowed;
  pointer-events: none;
  border-color: rgba(100,116,139,.34) !important;
  background: rgba(51,65,85,.18) !important;
  color: #94a3b8 !important;
  box-shadow: none !important;
}
.sm25-action--disabled small {
  display: inline-flex;
  align-items: center;
  margin-left: .15rem;
  padding-left: .5rem;
  border-left: 1px solid rgba(148,163,184,.28);
  color: #94a3b8;
  font-size: .66rem;
  font-weight: 700;
  line-height: 1.25;
  white-space: normal;
}
.sm25-availability-note {
  max-width: none !important;
  margin: .75rem 0 .85rem !important;
  padding: .68rem .75rem;
  border: 1px solid rgba(56,189,248,.20);
  border-radius: .72rem;
  background: rgba(14,165,233,.06);
  color: #cbd5e1 !important;
  font-size: .78rem;
  line-height: 1.5;
}
.sm25-availability-note--restricted {
  border-color: rgba(251,191,36,.24);
  background: rgba(245,158,11,.06);
}
@media (max-width: 640px) {
  .sm25-action--disabled { width: 100%; justify-content: flex-start; flex-wrap: wrap; }
  .sm25-action--disabled small { width: 100%; margin-left: 1.3rem; padding-left: 0; border-left: 0; }
}
