/* Fastener Finder + catalog + TOC + FAQ — engineeringhardware.com
   CSS-standard only, minimal decoration, no emoji glyphs in content. */
:root{
  --fff-primary:#1f3a5f;        /* steel blue */
  --fff-primary-2:#2d5689;
  --fff-accent:#c47a1a;         /* zinc-bronze accent */
  --fff-ink:#16202b;
  --fff-muted:#5d6b7a;
  --fff-line:#e1e6ec;
  --fff-bg:#f4f6f9;
  --fff-surface:#ffffff;
  --fff-radius:10px;
}
.fff-config *,.fff-page *{box-sizing:border-box}

/* ── Configurator ─────────────────────────────────────────── */
.fff-config{background:var(--fff-surface);border:1px solid var(--fff-line);border-radius:var(--fff-radius);overflow:hidden}
.fff-config-inner{padding:clamp(18px,3vw,30px)}
.fff-config-banner{background:linear-gradient(135deg,#1f3a5f 0%,#2d5689 100%);border:0;color:#fff}
.fff-config-banner .fff-config-title,.fff-config-banner .fff-config-sub{color:#fff}
.fff-config-banner .fff-form,.fff-config-banner .fff-step{color:var(--fff-ink)}
.fff-config-head{text-align:center;margin-bottom:18px}
.fff-config-title{font-size:clamp(20px,3vw,28px);font-weight:800;margin:0 0 6px;color:var(--fff-ink)}
.fff-config-sub{margin:0;color:var(--fff-muted);font-size:15px}
.fff-config-banner .fff-config-sub{color:rgba(255,255,255,.85)}

.fff-steps{list-style:none;display:flex;gap:8px;justify-content:center;padding:0;margin:0 0 22px;flex-wrap:wrap}
.fff-steps li{font-size:13px;font-weight:600;color:var(--fff-muted);padding:6px 14px;border-radius:999px;background:var(--fff-bg);border:1px solid var(--fff-line)}
.fff-steps li.is-active{background:var(--fff-primary);color:#fff;border-color:var(--fff-primary)}
.fff-config-banner .fff-steps li{background:rgba(255,255,255,.15);color:#fff;border-color:transparent}
.fff-config-banner .fff-steps li.is-active{background:#fff;color:var(--fff-primary)}

.fff-step{display:none}
.fff-step.is-active{display:block}
.fff-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.fff-grid-2{grid-template-columns:repeat(2,1fr)}
.fff-grid-3{grid-template-columns:repeat(3,1fr)}
@media(max-width:780px){.fff-grid,.fff-grid-2,.fff-grid-3{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.fff-grid,.fff-grid-2,.fff-grid-3{grid-template-columns:1fr}}
.fff-config-banner .fff-grid{background:#fff;padding:18px;border-radius:8px}

.fff-field{display:flex;flex-direction:column;gap:6px;min-width:0}
.fff-lbl{font-size:12px;font-weight:700;color:var(--fff-ink);text-transform:uppercase;letter-spacing:.3px}
.fff-input{height:42px;padding:0 12px;border:1.5px solid var(--fff-line);border-radius:8px;font-size:14px;font-family:inherit;background:#fff;color:var(--fff-ink);width:100%}
textarea.fff-input{height:auto;padding:10px 12px}
.fff-input:focus{outline:none;border-color:var(--fff-primary);box-shadow:0 0 0 3px rgba(31,58,95,.12)}
.fff-advanced{margin-top:14px;border:1px dashed var(--fff-line);border-radius:8px;padding:10px 14px}
.fff-advanced summary{cursor:pointer;font-weight:600;font-size:13px;color:var(--fff-primary)}
.fff-advanced .fff-grid-3{margin-top:12px}
/* Homepage banner only: Advanced filters text light on the blue background */
.fff-config-banner .fff-advanced summary{color:#fff}
.fff-config-banner .fff-advanced{border-color:rgba(255,255,255,.45)}

.fff-actions{display:flex;gap:12px;justify-content:center;margin-top:20px;flex-wrap:wrap}
.fff-btn{border:0;border-radius:8px;font-weight:700;font-size:15px;padding:0 24px;height:46px;cursor:pointer;font-family:inherit;transition:transform .12s,opacity .15s}
.fff-btn:hover{transform:translateY(-1px)}
.fff-btn-primary{background:var(--fff-accent);color:#fff}
.fff-btn-secondary{background:var(--fff-primary);color:#fff}
.fff-btn-ghost{background:transparent;border:1.5px solid var(--fff-line);color:var(--fff-ink)}

/* Results */
.fff-results{display:flex;flex-direction:column;gap:14px}
.fff-result-card{border:1px solid var(--fff-line);border-radius:10px;padding:16px 18px;background:#fff}
.fff-result-card.is-top{border-color:var(--fff-primary);box-shadow:0 8px 24px -12px rgba(31,58,95,.4)}
.fff-result-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}
.fff-result-model{font-size:18px;font-weight:800;margin:0;color:var(--fff-ink)}
.fff-result-model a{color:inherit;text-decoration:none}
.fff-match{text-align:right;min-width:120px}
.fff-match-pct{font-size:22px;font-weight:800;color:var(--fff-primary)}
.fff-match-bar{height:8px;border-radius:4px;background:var(--fff-bg);overflow:hidden;margin-top:4px}
.fff-match-bar>span{display:block;height:100%;background:linear-gradient(90deg,var(--fff-primary),var(--fff-primary-2))}
.fff-result-specs{list-style:none;padding:0;margin:12px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:6px 16px;font-size:13px;color:var(--fff-muted)}
@media(max-width:600px){.fff-result-specs{grid-template-columns:1fr 1fr}}
.fff-result-specs strong{color:var(--fff-ink)}
.fff-result-notes{margin:10px 0 0;font-size:12.5px;color:var(--fff-accent)}
.fff-result-actions{margin-top:14px;display:flex;gap:10px;flex-wrap:wrap}
.fff-result-actions .fff-btn{height:40px;font-size:14px}

.fff-hp{position:absolute;left:-9999px;height:0;overflow:hidden}
.fff-fieldset{border:1px solid var(--fff-line);border-radius:8px;padding:14px 16px;margin:0 0 16px}
.fff-fieldset legend{font-weight:700;padding:0 6px;color:var(--fff-primary)}
.fff-form-title{margin:0 0 14px}
.fff-form-msg{margin-top:12px;font-weight:600}
.fff-form-msg.ok{color:#15803d}.fff-form-msg.err{color:var(--fff-accent)}
.fff-selected-model{background:var(--fff-bg);border:1px solid var(--fff-line);border-radius:8px;padding:10px 14px;margin-bottom:14px;font-weight:600}

/* ── Product / archive pages ──────────────────────────────── */
.fff-page{max-width:1180px;margin:0 auto;padding:24px 20px 60px}
.fff-breadcrumb{font-size:13px;color:var(--fff-muted);margin-bottom:18px;display:flex;gap:8px;flex-wrap:wrap}
.fff-breadcrumb a{color:var(--fff-primary);text-decoration:none}
.fff-product-layout{display:grid;grid-template-columns:240px 1fr;gap:36px;align-items:start}
@media(max-width:900px){.fff-product-layout{grid-template-columns:1fr}.fff-side{display:none}}
.fff-eyebrow{text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:700;color:var(--fff-accent);margin:0 0 6px}
.fff-product-title{font-size:clamp(24px,4vw,34px);font-weight:800;margin:0 0 10px;line-height:1.2}
.fff-product-excerpt{color:var(--fff-muted);font-size:16px;margin:0 0 22px}
.fff-spec-table{width:100%;border-collapse:collapse;margin:0 0 28px;font-size:14px}
.fff-spec-table th,.fff-spec-table td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--fff-line)}
.fff-spec-table th{width:38%;color:var(--fff-muted);font-weight:600}
.fff-article-body h2{font-size:22px;margin:30px 0 12px;scroll-margin-top:90px}
.fff-article-body h3{font-size:18px;margin:22px 0 10px;scroll-margin-top:90px}
.fff-article-body p,.fff-article-body li{font-size:15.5px;line-height:1.7;color:#28323f}
.fff-article-body ul{padding-left:20px}

/* TOC */
.fff-side{position:sticky;top:90px}
.fff-toc{border-left:2px solid var(--fff-line);padding-left:16px}
.fff-toc-title{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--fff-muted);font-weight:700;margin:0 0 10px}
.fff-toc-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}
.fff-toc-list a{color:var(--fff-muted);text-decoration:none;font-size:13.5px;line-height:1.4;display:block;border-left:2px solid transparent;margin-left:-18px;padding-left:16px}
.fff-toc-list a:hover{color:var(--fff-ink)}
.fff-toc-list a.is-active{color:var(--fff-primary);border-left-color:var(--fff-primary);font-weight:600}
.fff-toc-list .lvl-3{padding-left:28px;font-size:13px}
.fff-toc-list .lvl-4{padding-left:38px;font-size:12.5px}

/* FAQ */
.fff-faq{margin-top:36px}
.fff-faq h2{font-size:22px;margin:0 0 14px}
.fff-faq-item{border:1px solid var(--fff-line);border-radius:8px;margin-bottom:10px;background:#fff}
.fff-faq-item summary{cursor:pointer;font-weight:600;padding:13px 16px;font-size:15px}
.fff-faq-a{padding:0 16px 14px;color:#28323f;font-size:14.5px;line-height:1.65}

/* Archive grids */
.fff-archive-head{margin-bottom:26px}
.fff-archive-title{font-size:clamp(26px,4vw,38px);font-weight:800;margin:0 0 10px}
.fff-archive-intro{color:var(--fff-muted);font-size:16px;max-width:760px;line-height:1.6}
.fff-type-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-bottom:40px}
.fff-type-card{display:block;border:1px solid var(--fff-line);border-radius:10px;padding:18px;text-decoration:none;background:#fff;transition:border-color .15s,box-shadow .15s}
.fff-type-card:hover{border-color:var(--fff-primary);box-shadow:0 8px 24px -14px rgba(31,58,95,.4)}
.fff-type-card-title{font-size:17px;font-weight:700;color:var(--fff-ink);margin:0 0 8px}
.fff-type-card-desc{font-size:13.5px;color:var(--fff-muted);margin:0 0 12px;line-height:1.5}
.fff-type-card-count{font-size:12px;font-weight:700;color:var(--fff-accent)}
.fff-product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.fff-product-card{border:1px solid var(--fff-line);border-radius:10px;background:#fff;transition:border-color .15s,box-shadow .15s}
.fff-product-card:hover{border-color:var(--fff-primary);box-shadow:0 8px 24px -14px rgba(31,58,95,.4)}
.fff-product-card-link{display:block;padding:18px;text-decoration:none}
.fff-product-card-model{font-size:16px;font-weight:800;color:var(--fff-ink);margin:0 0 12px}
.fff-product-card-specs{list-style:none;margin:0 0 12px;padding:0;font-size:13px;color:var(--fff-muted);display:flex;flex-direction:column;gap:4px}
.fff-product-card-specs strong{color:var(--fff-ink);font-weight:600}
.fff-product-card-cta{font-size:13px;font-weight:700;color:var(--fff-primary)}
.fff-archive-cta{margin-top:48px;padding-top:32px;border-top:1px solid var(--fff-line)}
.fff-archive-cta h2{font-size:24px;margin:0 0 8px}
.fff-archive-cta>p{color:var(--fff-muted);margin:0 0 20px;max-width:680px}

/* ── Tab navigation ───────────────────────────────────────── */
.fff-tab-nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;border-bottom:2px solid var(--fff-line);padding-bottom:0}
.fff-tab{display:inline-block;padding:10px 18px;font-size:14px;font-weight:600;color:var(--fff-muted);text-decoration:none;border-radius:6px 6px 0 0;border:1px solid transparent;border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .15s,border-color .15s,background .15s}
.fff-tab:hover{color:var(--fff-ink);background:var(--fff-bg)}
.fff-tab.is-active{color:var(--fff-primary);border-color:var(--fff-line);border-bottom-color:var(--fff-surface);background:var(--fff-surface)}
.fff-subtab-nav{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:24px}
.fff-subtab{display:inline-block;padding:6px 14px;font-size:13px;font-weight:600;color:var(--fff-muted);text-decoration:none;border:1.5px solid var(--fff-line);border-radius:999px;background:#fff;transition:color .15s,border-color .15s}
.fff-subtab:hover{border-color:var(--fff-primary);color:var(--fff-primary)}
.fff-subtab.is-active{background:var(--fff-primary);color:#fff;border-color:var(--fff-primary)}

/* ── 4-column product grid ────────────────────────────────── */
.fff-grid-4{grid-template-columns:repeat(4,1fr)}
@media(max-width:1100px){.fff-grid-4{grid-template-columns:repeat(3,1fr)}}
@media(max-width:780px){.fff-grid-4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.fff-grid-4{grid-template-columns:1fr}}
.fff-product-card--acc{border-top:3px solid var(--fff-accent)}
.fff-product-card-badge{display:inline-block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--fff-accent);background:rgba(184,115,51,.07);padding:2px 8px;border-radius:4px;margin-bottom:8px}
.fff-no-results{color:var(--fff-muted);padding:32px 0;font-size:15px}

/* ── Pagination ───────────────────────────────────────────── */
.fff-pagination{margin:36px 0 0;display:flex;justify-content:center}
.fff-pagination .nav-links{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.fff-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;padding:0 10px;border:1.5px solid var(--fff-line);border-radius:8px;font-size:14px;font-weight:600;color:var(--fff-muted);text-decoration:none;background:#fff;transition:border-color .15s,color .15s,background .15s}
.fff-pagination .page-numbers:hover{border-color:var(--fff-primary);color:var(--fff-primary)}
.fff-pagination .page-numbers.current{background:var(--fff-primary);border-color:var(--fff-primary);color:#fff}
.fff-pagination .page-numbers.dots{border-color:transparent;background:transparent;pointer-events:none}
.fff-pagination .prev,.fff-pagination .next{font-size:13px;padding:0 14px}


/* ── v3.0.1 additions: sidebar tech-library panel, accessories block,
      same-type product navigation ─────────────────────────────────────── */

/* Sidebar panel under the sticky TOC */
.fff-side-panel{margin-top:22px;padding-top:18px;border-top:1px solid var(--fff-line)}
.fff-side-panel-title{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--fff-muted);font-weight:700;margin:0 0 12px}
.fff-techlib-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.fff-techlib-list a{display:block;text-decoration:none;border:1px solid var(--fff-line);border-radius:8px;padding:10px 12px;transition:border-color .15s,box-shadow .15s,transform .12s}
.fff-techlib-list a:hover{border-color:var(--fff-primary);box-shadow:0 6px 18px -12px rgba(31,58,95,.5);transform:translateY(-1px)}
.fff-techlib-link-title{display:block;font-weight:700;font-size:13.5px;color:var(--fff-primary);line-height:1.3;margin-bottom:3px}
.fff-techlib-link-desc{display:block;font-size:12px;color:var(--fff-muted);line-height:1.4}

/* Accessories & components block */
.fff-acc-section{margin-top:40px;padding-top:30px;border-top:1px solid var(--fff-line)}
.fff-acc-section h2{font-size:22px;margin:0 0 8px}
.fff-acc-intro{color:var(--fff-muted);font-size:14.5px;margin:0 0 20px;max-width:680px;line-height:1.6}
.fff-acc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}
.fff-acc-card{display:block;border:1px solid var(--fff-line);border-radius:10px;padding:16px;text-decoration:none;background:#fff;transition:border-color .15s,box-shadow .15s,transform .12s}
.fff-acc-card:hover{border-color:var(--fff-accent);box-shadow:0 8px 22px -14px rgba(184,115,51,.5);transform:translateY(-2px)}
.fff-acc-card-title{font-size:15px;font-weight:700;color:var(--fff-ink);margin:0 0 6px}
.fff-acc-card-desc{font-size:12.5px;color:var(--fff-muted);line-height:1.45;margin:0 0 10px}
.fff-acc-card-count{font-size:11.5px;font-weight:700;color:var(--fff-accent)}

/* Same-type previous / next navigation */
.fff-stn{margin-top:36px;padding-top:26px;border-top:1px solid var(--fff-line)}
.fff-stn-title{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--fff-muted);font-weight:700;margin:0 0 14px}
.fff-stn-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:560px){.fff-stn-row{grid-template-columns:1fr}}
.fff-stn-card{display:flex;flex-direction:column;gap:4px;border:1px solid var(--fff-line);border-radius:10px;padding:16px 18px;text-decoration:none;background:#fff;transition:border-color .15s,box-shadow .15s,transform .12s}
.fff-stn-card:hover{border-color:var(--fff-primary);box-shadow:0 8px 22px -14px rgba(31,58,95,.5);transform:translateY(-2px)}
.fff-stn-next{text-align:right;align-items:flex-end}
.fff-stn-dir{font-size:12px;font-weight:700;color:var(--fff-accent);text-transform:uppercase;letter-spacing:.4px}
.fff-stn-model{font-size:16px;font-weight:800;color:var(--fff-ink)}
.fff-stn-meta{font-size:12.5px;color:var(--fff-muted)}

/* ── engineeringhardware.com fastener additions: archive subnav, product header, layout ── */
.fff-main{min-width:0}
.fff-product-head{margin-bottom:18px}
.fff-eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.6px;color:var(--fff-primary);font-weight:700;margin:0 0 6px}
.fff-product-excerpt{color:var(--fff-muted);font-size:16px;line-height:1.6;margin:6px 0 0}
.fff-subnav{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px}
.fff-subnav-link{display:inline-block;padding:7px 14px;border:1px solid var(--fff-line);border-radius:999px;text-decoration:none;color:var(--fff-ink);font-size:13.5px;font-weight:600;background:#fff;transition:border-color .15s,color .15s,background .15s}
.fff-subnav-link:hover{border-color:var(--fff-primary);color:var(--fff-primary);background:var(--fff-bg)}
.fff-techlib-panel{margin-top:0}
.fff-config-compact .fff-config-inner{padding:0}
.aes-rec-grid{margin-top:18px}
/* Hero accent handled by theme; plugin keeps neutral surfaces */

/* ── Pagination (core the_posts_pagination output) ─────────────────────── */
.fff-page .navigation.pagination,.fff-page nav.pagination,.fff-archive-page .pagination{margin:38px 0 6px}
.fff-page .nav-links{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;align-items:center}
.fff-page .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 14px;border:1px solid var(--fff-line);border-radius:9px;text-decoration:none;color:var(--fff-ink);font-weight:600;background:#fff;line-height:1;transition:border-color .15s,color .15s,background .15s}
.fff-page .page-numbers:hover{border-color:var(--fff-primary);color:var(--fff-primary)}
.fff-page .page-numbers.current{background:var(--fff-primary);color:#fff;border-color:var(--fff-primary)}
.fff-page .page-numbers.dots{border-color:transparent;background:transparent;min-width:auto;padding:0 4px}
.fff-page .page-numbers.prev,.fff-page .page-numbers.next{font-weight:700}

/* ── In-content product image ──────────────────────────────────────────── */
.fff-product-figure{margin:18px 0 24px;border:1px solid var(--fff-line);border-radius:12px;overflow:hidden;background:var(--fff-bg)}
.fff-product-figure img{display:block;width:100%;height:auto}
.fff-product-figure figcaption{padding:10px 14px;font-size:13px;color:var(--fff-muted);border-top:1px solid var(--fff-line);background:#fff}

/* ── Accessories module (rendered last) ────────────────────────────────── */
.fff-acc-section{margin-top:42px;padding-top:30px;border-top:2px solid var(--fff-line)}
.fff-acc-section h2{font-size:22px;margin:0 0 8px}
.fff-acc-intro{color:var(--fff-muted);font-size:14.5px;margin:0 0 18px;max-width:680px;line-height:1.6}
.fff-acc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.fff-acc-card{border:1px solid var(--fff-line);border-radius:10px;padding:15px 16px;background:#fff}
.fff-acc-card-title{font-size:15px;font-weight:700;color:var(--fff-ink);margin:0 0 6px}
.fff-acc-card-desc{font-size:13px;color:var(--fff-muted);line-height:1.5;margin:0}

/* ── Fastener-specific additions ──────────────────────────────────────── */
.fff-table-wrap{overflow-x:auto;margin:14px 0 22px;border:1px solid var(--fff-line);border-radius:10px}
.fff-spec-table{width:100%;border-collapse:collapse;font-size:13.5px;min-width:520px}
.fff-spec-table th,.fff-spec-table td{padding:8px 12px;text-align:left;border-bottom:1px solid var(--fff-line);white-space:nowrap}
.fff-spec-table thead th{background:var(--fff-primary);color:#fff;font-weight:600;position:sticky;top:0}
.fff-spec-table tbody tr:nth-child(even){background:var(--fff-bg)}
.fff-related-links{margin:8px 0 0;padding-left:18px;line-height:1.9}
.fff-related-links a{color:var(--fff-primary);font-weight:600;text-decoration:none}
.fff-related-links a:hover{text-decoration:underline}
.fff-result-sub{margin:4px 0 0;color:var(--fff-muted);font-size:13px}
.fff-result-price{display:inline-block;margin:6px 0;font-weight:700;color:var(--fff-accent)}
.fff-eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.6px;color:var(--fff-primary);font-weight:700;margin:0 0 6px}
.fff-product-excerpt{color:var(--fff-muted);font-size:16px;line-height:1.6;margin:6px 0 0}
.fff-subnav{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px}
.fff-subnav-link{display:inline-block;padding:7px 14px;border:1px solid var(--fff-line);border-radius:999px;text-decoration:none;color:var(--fff-ink);font-size:13.5px;font-weight:600;background:#fff}
.fff-subnav-link:hover{border-color:var(--fff-primary);color:var(--fff-primary)}
.fff-side-list{list-style:none;margin:0;padding:0}
.fff-side-list li{border-bottom:1px solid var(--fff-line)}
.fff-side-list a{display:block;padding:9px 0;text-decoration:none;color:var(--fff-ink)}
.fff-side-link-title{display:block;font-weight:600;font-size:13.5px}
.fff-side-link-meta{display:block;font-size:12px;color:var(--fff-muted)}
.fff-page .nav-links{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;align-items:center;margin:30px 0}
.fff-page .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 14px;border:1px solid var(--fff-line);border-radius:9px;text-decoration:none;color:var(--fff-ink);font-weight:600;background:#fff}
.fff-page .page-numbers.current{background:var(--fff-primary);color:#fff;border-color:var(--fff-primary)}
.fff-page .page-numbers:hover{border-color:var(--fff-primary);color:var(--fff-primary)}

/* ── Technical drawing (SVG schematic) ────────────────────────────────── */
.fff-schematic-section{margin:22px 0 26px}
.fff-sch-help{color:var(--fff-muted);font-size:14px;margin:0 0 12px}
.fff-schematic{border:1px solid var(--fff-line);border-radius:12px;background:#fff;padding:14px}
.fff-sch-svg{display:block;width:100%;max-width:560px;margin:0 auto;height:auto;background:repeating-linear-gradient(0deg,#fbfcfe,#fbfcfe 19px,#f1f4f8 20px),repeating-linear-gradient(90deg,#fbfcfe,#fbfcfe 19px,#f1f4f8 20px);border-radius:8px}
.fff-sch-controls{display:flex;justify-content:center;margin-top:12px}
.fff-sch-lbl{font-size:13.5px;font-weight:600;color:var(--fff-ink);display:flex;align-items:center;gap:8px}
.fff-sch-size{padding:7px 10px;border:1px solid var(--fff-line);border-radius:8px;font-size:14px;background:#fff;min-width:120px}
.fff-sch-caption{display:flex;flex-wrap:wrap;gap:6px 16px;justify-content:center;margin-top:12px;font-size:12.5px;color:var(--fff-muted)}
.fff-sch-caption span strong{color:var(--fff-ink)}
/* SVG primitives */
.fs-ln{fill:none;stroke:#16202b;stroke-width:1.6;stroke-linejoin:round}
.fs-cl{stroke:#9aa6b4;stroke-width:.8;stroke-dasharray:6 2 1 2}
.fs-thr{stroke:#6b7886;stroke-width:.7}
.fs-dim{stroke:var(--fff-primary);stroke-width:.9}
.fs-ext{stroke:var(--fff-primary);stroke-width:.7}
.fs-arrow{fill:var(--fff-primary);stroke:none}
.fs-dot{fill:var(--fff-primary)}
.fs-tx{fill:var(--fff-primary);font-size:11px;font-family:ui-monospace,Menlo,Consolas,monospace}
.fs-sub{fill:var(--fff-muted);font-size:10px}
.fs-title{fill:var(--fff-ink);font-size:11px;font-weight:600}
.fff-result-drawing{margin-top:12px;border-top:1px dashed var(--fff-line);padding-top:12px}
