/* =============================================================
   AI Workflow Automation, theme "aiwa"
   "The State of AI Plugins on WordPress.org" (page-state-of-ai-plugins.php).
   Editorial data-story styling. Loads after main.css and reuses its
   .wrap, .page-hero and .prose. Chart marks are painted by
   assets/js/state-of-ai-plugins.js as inline SVG; this file only carries
   the palette, layout and the non-chart UI.
   ============================================================= */

/* =============================================================
   1. TOKENS
   ============================================================= */
body.page-state-of-ai{
  --sd-ground:#0c0e0b;
  --sd-panel:#131610;
  --sd-raised:#191d15;
  --sd-line:rgba(236,233,226,.09);
  --sd-line-2:rgba(236,233,226,.15);

  --sd-bone:#ece9e2;
  --sd-sage:#a8b39a;
  --sd-dim:rgba(168,179,154,.6);

  --sd-ember:#e07a3f;
  --sd-mark:#d9733a;
  --sd-bronze:#8a6d3f;

  --sd-ramp-1:#6e3e27;
  --sd-ramp-2:#8c4c2c;
  --sd-ramp-3:#b25f33;
  --sd-ramp-4:#d9733a;
  --sd-ramp-5:#f0a26e;

  --sd-dusk:#3a98c4;
  --sd-deemph:#586150;
  --sd-zero:#4a4f45;

  --sd-paper:#f1eee6;
  --sd-paper-ink:#25291f;
  --sd-paper-muted:rgba(37,41,31,.66);
  --sd-paper-line:#d9d2c3;

  --sd-nav-clear:96px;
  --sd-measure:65ch;

  background:var(--sd-ground);
  color:var(--sd-bone);
}

/* =============================================================
   2. BASE / RESET NET
   ============================================================= */
.sd-main [hidden]{display:none}
.sd-main{display:block}
.sd-main section{position:relative}
.sd-main :focus-visible{outline:2px solid var(--sd-ember);outline-offset:3px}
.sd-cite :focus-visible{outline-color:var(--sd-paper-ink)}

.sd-main .sd-label{
  font-family:var(--ff-mono);font-size:12px;color:var(--sd-sage);
  margin-bottom:12px;letter-spacing:0;
}

/* =============================================================
   3. HERO
   ============================================================= */
.sd-hero{text-align:left}
.sd-hero .wrap{max-width:var(--maxw);margin:0 auto;padding-left:var(--gutter);padding-right:var(--gutter)}
.sd-stamp{
  font-family:var(--ff-mono);font-size:12.5px;color:var(--sd-sage);
  margin-bottom:22px;
}
.sd-hero-grid{display:block}
@media (min-width:1024px){
  .sd-hero-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:56px;align-items:start}
}
.sd-h1{
  font-family:var(--ff-display);font-weight:800;
  font-size:clamp(38px,6.2vw,76px);line-height:1.04;letter-spacing:-.03em;
  max-width:18ch;margin-bottom:22px;color:var(--sd-bone);
}
.sd-h1-line{display:block;text-wrap:balance}
.sd-dek{
  font-family:var(--ff-body);color:var(--sd-sage);font-size:clamp(16px,1.6vw,18px);
  line-height:1.6;max-width:60ch;margin-bottom:0;
}

.sd-hero-right{margin-top:40px}
@media (min-width:1024px){
  .sd-hero-right{margin-top:0}
}
.sd-waffle{
  width:100%;min-height:120px;margin-bottom:14px;
  background:var(--sd-panel);border-radius:10px;
}
.sd-waffle canvas{display:block}

.sd-census-legend{
  list-style:none;display:flex;flex-wrap:wrap;gap:10px 22px;margin:0;padding:0;
  font-family:var(--ff-mono);font-size:12.5px;color:var(--sd-sage);
}
.sd-census-legend li{display:flex;align-items:center;gap:8px}
.sd-swatch{font-size:14px;line-height:1}
.sd-swatch--older{color:var(--sd-sage);opacity:.45}
.sd-swatch--last{color:var(--sd-bronze)}
.sd-swatch--this{color:var(--sd-mark)}

/* =============================================================
   4. FINDINGS-AT-A-GLANCE (table of contents)
   ============================================================= */
.sd-toc{padding:clamp(48px,7vw,80px) 0;border-top:1px solid var(--sd-line);border-bottom:1px solid var(--sd-line)}
.sd-toc-list{
  list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:2px;
  counter-reset:none;
}
@media (min-width:1024px){
  .sd-toc-list{grid-template-columns:1fr 1fr;gap:2px 40px}
}
.sd-toc-item a{
  display:flex;gap:16px;align-items:baseline;padding:18px 4px;
  border-bottom:1px solid var(--sd-line);transition:opacity .2s;
}
.sd-toc-item:last-child a,
.sd-toc-list{border-bottom:none}
.sd-toc-item a:hover{opacity:.8}
.sd-toc-num{
  font-family:var(--ff-display);font-weight:700;font-size:20px;color:var(--sd-ember);
  flex:0 0 auto;min-width:3.6ch;
}
.sd-toc-text{color:var(--sd-bone);font-size:15px;line-height:1.45}

/* =============================================================
   5. MOBILE STICKY RAIL BAR (< 1024px)
   ============================================================= */
.sd-rail-bar{
  position:sticky;top:0;z-index:40;background:rgba(12,14,11,.92);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  border-bottom:1px solid var(--sd-line);
}
@media (min-width:1024px){
  .sd-rail-bar{display:none}
}
.sd-rail-toggle{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:14px var(--gutter);font-family:var(--ff-mono);font-size:12.5px;color:var(--sd-bone);
}
.sd-rail-toggle-chevron{
  width:9px;height:9px;border-right:1.5px solid var(--sd-sage);border-bottom:1.5px solid var(--sd-sage);
  transform:rotate(45deg);transition:transform .2s;flex:0 0 auto;
}
.sd-rail-toggle[aria-expanded="true"] .sd-rail-toggle-chevron{transform:rotate(-135deg)}
.sd-rail-menu{
  border-top:1px solid var(--sd-line);background:var(--sd-panel);
  max-height:60vh;overflow-y:auto;
}
.sd-rail-menu ul{list-style:none;margin:0;padding:8px}
.sd-rail-menu a{
  display:block;padding:11px 14px;border-radius:10px;font-family:var(--ff-mono);
  font-size:13px;color:var(--sd-sage);
}
.sd-rail-menu a:hover{background:rgba(236,233,226,.04);color:var(--sd-bone)}

/* =============================================================
   6. LAYOUT: sticky rail + chapters
   ============================================================= */
.sd-layout{
  display:grid;grid-template-columns:1fr;gap:0;
  padding-top:clamp(48px,6vw,72px);
}
@media (min-width:1024px){
  .sd-layout{grid-template-columns:220px minmax(0,760px);gap:56px;align-items:start}
}

.sd-rail{display:none}
@media (min-width:1024px){
  .sd-rail{
    display:block;position:sticky;top:var(--sd-nav-clear);
    max-height:calc(100vh - var(--sd-nav-clear) - 24px);overflow-y:auto;
  }
}
.sd-rail-list{list-style:none;margin:0 0 24px;padding:0;display:flex;flex-direction:column;gap:2px}
.sd-rail-list a{
  display:flex;align-items:baseline;gap:8px;padding:8px 10px;border-radius:10px;
  font-family:var(--ff-mono);font-size:12.5px;color:var(--sd-sage);
  transition:color .2s,background .2s;
}
.sd-rail-list a:hover{background:rgba(236,233,226,.04);color:var(--sd-bone)}
.sd-rail-list a[aria-current="true"]{color:var(--sd-ember)}
.sd-rail-glyph{flex:0 0 auto}
.sd-rail-extra{display:flex;flex-direction:column;gap:2px;padding-top:14px;border-top:1px solid var(--sd-line)}
.sd-rail-extra a{
  font-family:var(--ff-mono);font-size:12.5px;color:var(--sd-sage);padding:8px 10px;border-radius:10px;
}
.sd-rail-extra a:hover{background:rgba(236,233,226,.04);color:var(--sd-bone)}

.sd-chapters{min-width:0}

/* =============================================================
   7. CHAPTER
   ============================================================= */
.sd-chapter{
  padding:clamp(52px,8vw,96px) 0;border-bottom:1px solid var(--sd-line);
  scroll-margin-top:var(--sd-nav-clear);
}
.sd-chapter:last-child{border-bottom:none}
.sd-chapter-h{
  font-family:var(--ff-display);font-weight:700;
  font-size:clamp(26px,3.4vw,40px);letter-spacing:-.02em;line-height:1.12;
  text-wrap:balance;max-width:24ch;color:var(--sd-bone);margin-bottom:18px;
}
.sd-chapter-lead,
.sd-chapter-extra{
  font-family:var(--ff-body);color:var(--sd-sage);font-size:16.5px;line-height:1.7;
  max-width:var(--sd-measure);margin-bottom:1.1em;
}
.sd-chapter-extra{
  padding-top:1.1em;margin-top:1.1em;border-top:1px dashed var(--sd-line-2);
}

/* =============================================================
   8. FIGURE / CHART
   ============================================================= */
.sd-figure{
  background:var(--sd-panel);border:1px solid var(--sd-line);border-radius:18px;
  padding:20px;margin:28px 0;
}
@media (max-width:719px){
  .sd-figure{padding:14px;border-radius:14px}
}
.sd-chart{position:relative;min-height:120px}
.sd-chart-empty{
  font-family:var(--ff-mono);font-size:13px;color:var(--sd-dim);
  padding:28px 4px;text-align:center;
}
.sd-chart-title{
  font-family:var(--ff-mono);font-size:12.5px;color:var(--sd-sage);
  margin-bottom:8px;
}
.sd-legend{
  display:flex;flex-wrap:wrap;gap:8px 18px;font-family:var(--ff-mono);font-size:11.5px;color:var(--sd-sage);
  margin-bottom:14px;
}
.sd-legend:empty{display:none}
.sd-legend-item{display:inline-flex;align-items:center;gap:7px}
.sd-legend-swatch{width:11px;height:11px;border-radius:3px;flex:0 0 auto}
.sd-legend-line{width:16px;height:2px;border-radius:2px;flex:0 0 auto}

.sd-top10{margin-top:18px;padding-top:18px;border-top:1px solid var(--sd-line)}
.sd-top10-h{font-family:var(--ff-mono);font-size:12px;color:var(--sd-sage);margin-bottom:10px}
.sd-top10-list{
  list-style:none;margin:0;padding:0;columns:1;column-gap:24px;
  font-family:var(--ff-mono);font-size:12px;color:var(--sd-bone);
}
@media (min-width:560px){
  .sd-top10-list{columns:2}
}
.sd-top10-list li{
  display:flex;justify-content:space-between;gap:12px;padding:6px 0;
  border-bottom:1px solid var(--sd-line);break-inside:avoid;
}
.sd-top10-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--sd-sage)}
.sd-top10-installs{flex:0 0 auto;color:var(--sd-bone)}

/* =============================================================
   9. TAKEAWAY / CAVEAT
   ============================================================= */
.sd-takeaway{
  font-family:var(--ff-serif);font-style:italic;font-weight:400;
  font-size:clamp(20px,2.2vw,26px);line-height:1.45;color:var(--sd-bone);
  max-width:var(--sd-measure);margin:22px 0;
}
.sd-caveat{
  font-family:var(--ff-body);font-size:14px;line-height:1.6;color:var(--sd-sage);
  max-width:var(--sd-measure);margin-bottom:1.1em;
}
.sd-caveat strong{color:var(--sd-bone);font-weight:600}

/* =============================================================
   10. DETAILS / DATA TABLE
   ============================================================= */
.sd-details{margin-top:22px}
.sd-details summary{
  font-family:var(--ff-mono);font-size:12.5px;color:var(--sd-sage);cursor:pointer;
  padding:10px 0;list-style:none;display:flex;align-items:center;gap:8px;
}
.sd-details summary::-webkit-details-marker{display:none}
.sd-details summary::before{content:"+";color:var(--sd-ember);font-family:var(--ff-mono)}
.sd-details[open] summary::before{content:"\2212"}
.sd-details summary:hover{color:var(--sd-bone)}

.sd-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.sd-data-table{
  width:100%;border-collapse:collapse;font-size:13px;font-family:var(--ff-mono);
  color:var(--sd-sage);min-width:480px;
}
.sd-data-table caption{
  text-align:left;font-family:var(--ff-body);font-size:13px;color:var(--sd-dim);
  padding-bottom:10px;
}
.sd-data-table th,.sd-data-table td{
  text-align:left;padding:9px 14px;border-bottom:1px solid var(--sd-line);white-space:nowrap;
  font-variant-numeric:tabular-nums;
}
.sd-data-table thead th{
  font-size:11px;color:var(--sd-dim);text-transform:none;font-weight:500;
  border-bottom:1px solid var(--sd-line-2);
}
.sd-data-table tbody th{color:var(--sd-bone);font-weight:500;white-space:normal}
.sd-data-table tbody tr:last-child td,
.sd-data-table tbody tr:last-child th{border-bottom:none}

/* =============================================================
   11. EXPLORER
   ============================================================= */
.sd-explore{padding:clamp(56px,8vw,100px) 0;border-top:1px solid var(--sd-line-2)}
.sd-explore h2{
  font-family:var(--ff-display);font-weight:700;font-size:clamp(26px,3.4vw,36px);
  letter-spacing:-.02em;margin-bottom:10px;color:var(--sd-bone);
}
.sd-explore-help{color:var(--sd-sage);font-size:15.5px;max-width:60ch;margin-bottom:28px}

.sd-filters{
  display:grid;grid-template-columns:1fr;gap:12px;
  padding:16px;background:var(--sd-panel);border:1px solid var(--sd-line);border-radius:14px;
  margin-bottom:16px;
}
@media (min-width:720px){
  .sd-filters{grid-template-columns:repeat(3,1fr)}
}
@media (min-width:1100px){
  .sd-filters{grid-template-columns:1.4fr 1fr 1fr 1fr 1fr auto}
  .sd-filter-search{grid-column:1}
}
.sd-filter-field{display:flex;flex-direction:column;gap:6px}
.sd-filter-field label{font-family:var(--ff-mono);font-size:11px;color:var(--sd-dim)}
.sd-filter-field input[type="search"],
.sd-filter-field select{
  font-family:var(--ff-body);font-size:14.5px;color:var(--sd-bone);
  background:var(--sd-raised);border:1px solid var(--sd-line-2);border-radius:9px;
  padding:9px 12px;width:100%;
}
.sd-filter-check{flex-direction:row;align-items:center;gap:8px;justify-content:flex-start}
.sd-filter-check label{
  display:flex;align-items:center;gap:8px;font-family:var(--ff-body);font-size:14px;color:var(--sd-sage);
}
.sd-filter-check input{width:16px;height:16px;accent-color:var(--sd-ember)}

.sd-result-count{font-family:var(--ff-mono);font-size:12.5px;color:var(--sd-sage);margin-bottom:14px}

.sd-explore-table-wrap{
  overflow-x:auto;-webkit-overflow-scrolling:touch;
  border:1px solid var(--sd-line);border-radius:14px;
}
.sd-explore-table{min-width:0;width:100%;table-layout:auto;font-family:var(--ff-body);font-size:14px}
@media (max-width:1023px){
  .sd-explore-table{min-width:920px}
}
.sd-explore-table thead th{
  position:sticky;top:0;background:var(--sd-raised);z-index:1;
  padding:0;border-bottom:1px solid var(--sd-line-2);
}
.sd-explore-table thead th button{
  width:100%;display:flex;align-items:center;gap:6px;padding:12px 14px;text-align:left;
  font-family:var(--ff-mono);font-size:11px;letter-spacing:0;color:var(--sd-dim);
}
.sd-explore-table thead th button:hover{color:var(--sd-bone)}
.sd-explore-table thead th button::after{
  content:"";width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;
  opacity:0;flex:0 0 auto;
}
.sd-explore-table thead th button[aria-sort="ascending"]{color:var(--sd-ember)}
.sd-explore-table thead th button[aria-sort="ascending"]::after{
  opacity:1;border-bottom:5px solid var(--sd-ember);
}
.sd-explore-table thead th button[aria-sort="descending"]{color:var(--sd-ember)}
.sd-explore-table thead th button[aria-sort="descending"]::after{
  opacity:1;border-top:5px solid var(--sd-ember);
}
.sd-explore-table td{
  padding:12px 8px;border-bottom:1px solid var(--sd-line);color:var(--sd-sage);
  vertical-align:top;white-space:nowrap;
}
.sd-explore-table td:first-child{white-space:normal;max-width:230px}
.sd-explore-table td:nth-child(7),
.sd-explore-table td:nth-child(8){white-space:normal;max-width:120px}
@media (min-width:1280px){
  .sd-explore-table td:first-child{max-width:280px}
  .sd-explore-table td:nth-child(7),
  .sd-explore-table td:nth-child(8){max-width:140px}
}
.sd-explore-table tbody tr:last-child td{border-bottom:none}
.sd-explore-table tbody tr:hover{background:rgba(236,233,226,.02)}
.sd-explore-table .sd-plugin-name{
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;
  color:var(--sd-bone);font-weight:500;line-height:1.35;
}
.sd-explore-table a.sd-plugin-name{transition:color .2s}
.sd-explore-table a.sd-plugin-name:hover{color:var(--sd-ember)}
.sd-explore-table .sd-plugin-author{display:block;font-size:12px;color:var(--sd-dim);margin-top:2px}
.sd-explore-table .sd-num{font-variant-numeric:tabular-nums}
.sd-explore-empty td{
  text-align:center;padding:40px 14px;color:var(--sd-dim);font-family:var(--ff-mono);font-size:13px;
  white-space:normal;
}

.sd-pager{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:18px}
.sd-pager-status{font-family:var(--ff-mono);font-size:12.5px;color:var(--sd-sage)}
.sd-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--ff-body);font-weight:600;font-size:14px;
  padding:10px 20px;border-radius:100px;white-space:nowrap;
  transition:transform .2s,background .2s,border-color .2s,color .2s;
}
.sd-btn-line{border:1px solid var(--sd-line-2);color:var(--sd-bone);background:transparent}
.sd-btn-line:hover{border-color:var(--sd-ember);color:var(--sd-ember)}
.sd-btn-line:disabled{opacity:.4;cursor:default}
.sd-btn-line:disabled:hover{border-color:var(--sd-line-2);color:var(--sd-bone)}
.sd-btn-grad{background:var(--grad-cta,var(--sd-ember));color:#fff;border:1px solid transparent}
@media (hover:hover){
  .sd-btn-grad:hover{transform:translateY(-1px)}
}
.sd-pager-prev,.sd-pager-next{
  font-family:var(--ff-mono);font-size:12.5px;color:var(--sd-sage);
  border:1px solid var(--sd-line-2);border-radius:100px;padding:9px 18px;
  transition:border-color .2s,color .2s;
}
.sd-pager-prev:disabled,.sd-pager-next:disabled{opacity:.35;cursor:default}
.sd-pager-prev:not(:disabled):hover,.sd-pager-next:not(:disabled):hover{border-color:var(--sd-ember);color:var(--sd-ember)}
.sd-export-csv{margin-left:auto}

/* =============================================================
   12. METHODOLOGY (extends .prose from main.css)
   ============================================================= */
.sd-method{padding:clamp(56px,8vw,100px) 0;border-top:1px solid var(--sd-line-2)}
.sd-method .prose{padding-top:0}

/* =============================================================
   13. CITE (paper band)
   ============================================================= */
.sd-cite{background:var(--sd-paper);color:var(--sd-paper-ink);padding:clamp(56px,8vw,96px) 0}
.sd-cite h2{
  font-family:var(--ff-display);font-weight:700;font-size:clamp(26px,3.4vw,36px);
  letter-spacing:-.02em;color:var(--sd-paper-ink);margin-bottom:18px;
}
.sd-cite-url{font-family:var(--ff-mono);font-size:13.5px;color:var(--sd-paper-ink);margin-bottom:24px;word-break:break-all}
.sd-citation-block{
  display:flex;flex-wrap:wrap;align-items:center;gap:14px;
  padding:18px 20px;background:#fff;border:1px solid var(--sd-paper-line);border-radius:14px;margin-bottom:16px;
}
.sd-citation-text{
  font-family:var(--ff-mono);font-size:13px;line-height:1.6;color:var(--sd-paper-ink);
  flex:1 1 320px;margin:0;
}
.sd-cite .sd-btn-line{border-color:var(--sd-paper-line);color:var(--sd-paper-ink)}
.sd-cite .sd-btn-line:hover{border-color:var(--sd-paper-ink)}
.sd-copy-status{font-family:var(--ff-mono);font-size:12px;color:#3f6b3f}
.sd-license{font-size:14.5px;color:var(--sd-paper-muted);margin-bottom:26px}
.sd-downloads{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:32px}
.sd-cite .sd-btn-grad{background:var(--c-ember,#e07a3f)}

.sd-embed-figure{margin:0;padding-top:24px;border-top:1px solid var(--sd-paper-line)}
.sd-embed-figure img{
  width:100%;height:auto;border-radius:14px;border:1px solid var(--sd-paper-line);display:block;margin-bottom:12px;
}
.sd-embed-figure figcaption .sd-details summary{color:var(--sd-paper-ink)}
.sd-embed-figure figcaption .sd-details summary::before{color:var(--c-ember,#e07a3f)}
.sd-embed-code{
  width:100%;font-family:var(--ff-mono);font-size:12px;color:var(--sd-paper-ink);
  background:#fff;border:1px solid var(--sd-paper-line);border-radius:10px;padding:10px 12px;
  margin:8px 0;resize:vertical;
}

/* =============================================================
   14. UPDATES
   ============================================================= */
.sd-updates{padding:clamp(48px,7vw,80px) 0 clamp(72px,10vw,120px)}
.sd-updates h2{
  font-family:var(--ff-display);font-weight:700;font-size:clamp(22px,2.8vw,30px);
  letter-spacing:-.02em;margin-bottom:24px;color:var(--sd-bone);
}
.sd-updates-list{list-style:none;margin:0 0 16px;padding:0}
.sd-updates-item{
  display:flex;flex-wrap:wrap;gap:6px 16px;align-items:baseline;
  padding:14px 0;border-bottom:1px solid var(--sd-line);
}
.sd-updates-item:last-child{border-bottom:none}
.sd-updates-label{font-family:var(--ff-display);font-weight:700;font-size:15px;color:var(--sd-bone)}
.sd-updates-meta{font-family:var(--ff-mono);font-size:12.5px;color:var(--sd-sage)}
.sd-updates-note{font-size:14px;color:var(--sd-dim);width:100%}
.sd-updates-cadence{font-family:var(--ff-mono);font-size:12px;color:var(--sd-dim)}

/* =============================================================
   15. CHART SVG (marks painted by state-of-ai-plugins.js)
   ============================================================= */
.sd-chart svg{width:100%;height:auto;display:block;overflow:visible}
.sd-chart .sd-gridline{stroke:rgba(236,233,226,.07);stroke-width:1}
.sd-chart .sd-axis-label{
  font-family:var(--ff-mono);font-size:11px;fill:var(--sd-sage);font-variant-numeric:tabular-nums;
}
.sd-chart .sd-value-label{font-family:var(--ff-mono);font-size:11.5px;fill:var(--sd-bone)}
.sd-chart .sd-zero-line{stroke:var(--sd-zero);stroke-width:1}
.sd-chart .sd-hit{fill:transparent}
.sd-chart .sd-hit:focus-visible{outline:2px solid var(--sd-ember);outline-offset:2px}
.sd-chart .sd-hit:hover ~ .sd-mark,
.sd-chart .sd-mark.is-active{filter:brightness(1.15)}

.sd-tooltip{
  position:absolute;pointer-events:none;z-index:5;
  background:var(--sd-raised);border:1px solid var(--sd-line-2);border-radius:10px;
  padding:9px 12px;font-family:var(--ff-mono);font-size:12px;color:var(--sd-sage);
  max-width:240px;opacity:0;transform:translateY(4px);transition:opacity .12s,transform .12s;
  box-shadow:0 12px 30px -12px rgba(0,0,0,.6);
}
.sd-tooltip.is-visible{opacity:1;transform:translateY(0)}
.sd-tooltip-value{display:block;font-weight:600;color:var(--sd-bone);font-size:13px;margin-bottom:2px}
.sd-tooltip-row{display:flex;justify-content:space-between;gap:10px}

/* =============================================================
   16. SEPARATOR (between chapters, mono/dot rule)
   ============================================================= */
.sd-sep{padding:0}
.sd-sep-art{
  font-family:var(--ff-mono);font-size:13px;line-height:1;text-align:center;
  color:rgba(168,179,154,.4);letter-spacing:.14em;white-space:pre;overflow:hidden;margin:0;
}
.sd-sep-art .em{color:var(--sd-ember)}

/* =============================================================
   17. MOTION
   ============================================================= */
@media (prefers-reduced-motion: reduce){
  .sd-main *{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important}
}
