/* ============================================================
   SMTasker Knowledge Base — design skin
   Scoped under #smtkb-root so it never collides with the WP theme.
   ============================================================ */
/* Self-hosted fonts (latin) — no external request, renders offline & fast.
   Paths are relative to this file, so they resolve in preview and in the
   /wp-content/plugins/smtasker-kb/assets/ production location alike. */
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/plus-jakarta-sans-400.woff2) format('woff2')}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/plus-jakarta-sans-500.woff2) format('woff2')}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/plus-jakarta-sans-600.woff2) format('woff2')}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/plus-jakarta-sans-700.woff2) format('woff2')}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/space-grotesk-500.woff2) format('woff2')}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/space-grotesk-600.woff2) format('woff2')}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/space-grotesk-700.woff2) format('woff2')}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/jetbrains-mono-500.woff2) format('woff2')}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/jetbrains-mono-700.woff2) format('woff2')}

#smtkb-root{
  --ink:#141421; --body:#3f4055; --muted:#767a90; --soft:#f7f5ff; --line:#ece6ff; --line2:#e3ddf5;
  --purple:#6b36e8; --purple-d:#5a27d1; --purple-soft:#f2ecff;
  --teal:#0d9aa8; --teal-badge:#12b0bd; --coral:#e2456a; --coral-badge:#f0557a; --amber:#d6860b;
  --white:#fff; --card:#fff;
  --bg:radial-gradient(1200px 480px at 70% -160px,#efe9ff 0%,transparent 60%),linear-gradient(#faf9ff,#f5f3fc);
  --frame-bg:radial-gradient(120% 120% at 20% 0%,#efe9ff,#f7f5ff 55%,#f2f6ff);
  --frame-icon:#8b7fb8; --frame-lab:#9284c4; --frame-sub:#9a93b8;
  --diagram-bg:linear-gradient(180deg,#fbfaff,#f5f2fd);
  --tip-bg:#fdf7ea; --tip-line:#f4e4c1; --tip-text:#6b5220; --tip-strong:#4d3a12;
  --placeholder:#9a9db2; --chev:#c7c1dd; --crumb-chev:#c3bfd6;
  --disp:'Space Grotesk','Plus Jakarta Sans',sans-serif; --sans:'Plus Jakarta Sans',system-ui,sans-serif; --mono:'JetBrains Mono',monospace;
  --shadow:0 1px 2px rgba(20,20,33,.04),0 10px 30px rgba(80,50,180,.06);
  --shadow-h:0 4px 10px rgba(20,20,33,.06),0 18px 44px rgba(90,40,190,.13);
  font-family:var(--sans);color:var(--body);-webkit-font-smoothing:antialiased;line-height:1.5;
  background:var(--bg);
  color-scheme:light;
}

/* ---- dark theme: soft dark, purple glow preserved -------------------- */
#smtkb-root[data-theme="dark"]{
  --ink:#f2f0fa; --body:#c3c2d4; --muted:#8f8da5; --soft:#232030; --line:#2b2740; --line2:#363050;
  --purple:#9d75ff; --purple-d:#b18aff; --purple-soft:#2a2344;
  --teal:#3fd6e2; --coral:#ff7b9c;
  --amber:#e8a33d;
  --card:#1e1b2a;
  --bg:radial-gradient(1200px 480px at 70% -160px,#241d3a 0%,transparent 60%),linear-gradient(#15131c,#191723);
  --frame-bg:radial-gradient(120% 120% at 20% 0%,#262038,#1d1a29 55%,#1c1f2e);
  --frame-icon:#7a6fa8; --frame-lab:#8a7cbc; --frame-sub:#7d7699;
  --diagram-bg:linear-gradient(180deg,#211e2e,#1c1927);
  --tip-bg:#2a2415; --tip-line:#453a1c; --tip-text:#d9c08a; --tip-strong:#f0d9a8;
  --placeholder:#6f6d85; --chev:#4d4868; --crumb-chev:#4d4868;
  --shadow:0 1px 2px rgba(0,0,0,.35),0 10px 30px rgba(0,0,0,.30);
  --shadow-h:0 4px 10px rgba(0,0,0,.40),0 18px 44px rgba(60,30,140,.35);
  color-scheme:dark;
}
#smtkb-root *{box-sizing:border-box}
#smtkb-root a{color:var(--purple);text-decoration:none}
#smtkb-root a:hover{color:var(--purple-d)}

/* reading-progress bar */
#smtkb-root .kb-progress{position:fixed;left:0;top:0;height:4px;width:100%;background:transparent;z-index:100}
#smtkb-root .kb-progress span{display:block;height:100%;width:4%;background:linear-gradient(90deg,var(--purple),var(--teal-badge));border-radius:0 4px 4px 0}

#smtkb-root .kb-page{width:100%;max-width:1240px;margin:0 auto;padding:28px 28px 70px}

/* search */
#smtkb-root .kb-search{display:flex;align-items:center;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:15px 20px;box-shadow:var(--shadow);margin-bottom:26px}
#smtkb-root .kb-search svg{color:var(--purple);flex:none}
#smtkb-root .kb-search input{border:0;outline:0;font-family:var(--sans);font-size:16px;color:var(--ink);width:100%;background:transparent}
#smtkb-root .kb-search input::placeholder{color:var(--placeholder)}
#smtkb-root .kb-search .k{font-family:var(--mono);font-size:12px;color:var(--muted);border:1px solid var(--line2);border-radius:7px;padding:4px 8px;flex:none}

/* theme toggle */
#smtkb-root .kb-theme{display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex:none;border:1.5px solid var(--line2);border-radius:10px;background:var(--card);color:var(--muted);cursor:pointer;padding:0}
#smtkb-root .kb-theme:hover{border-color:var(--purple);color:var(--purple)}
#smtkb-root .kb-theme .sun{display:none}
#smtkb-root[data-theme="dark"] .kb-theme .sun{display:block}
#smtkb-root[data-theme="dark"] .kb-theme .moon{display:none}

/* grid — sidebar / article / TOC as one centered cluster (no dead gutter) */
#smtkb-root .kb-grid{display:grid;grid-template-columns:264px minmax(0,1fr) 208px;gap:44px;align-items:start}

/* sidebar */
#smtkb-root .kb-side{position:sticky;top:24px}
#smtkb-root .kb-card{background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}
#smtkb-root .kb-side .kb-eyebrow{font-family:var(--mono);font-weight:700;font-size:12px;letter-spacing:.14em;color:var(--purple);padding:20px 20px 12px;border-bottom:1px solid var(--line)}
#smtkb-root .kb-nav{padding:10px}
#smtkb-root .kb-nav a{display:flex;gap:11px;align-items:flex-start;padding:11px 12px;border-radius:11px;color:var(--ink);font-weight:500;font-size:14.5px;line-height:1.35;border-left:3px solid transparent}
#smtkb-root .kb-nav a .n{font-family:var(--mono);font-weight:700;font-size:12px;color:var(--muted);flex:none;width:18px;text-align:center;margin-top:1px}
#smtkb-root .kb-nav a:hover{background:var(--soft)}
#smtkb-root .kb-nav a.active{background:var(--purple-soft);border-left-color:var(--purple);color:var(--purple-d);font-weight:700}
#smtkb-root .kb-nav a.active .n{color:var(--purple)}
#smtkb-root .kb-more{display:flex;align-items:center;gap:8px;width:100%;background:none;border:0;cursor:pointer;color:var(--muted);font-family:var(--sans);font-weight:600;font-size:13.5px;padding:11px 15px;border-top:1px solid var(--line);border-radius:0 0 18px 18px}
#smtkb-root .kb-more:hover{color:var(--purple)}
#smtkb-root .kb-hidden{display:none}

/* article */
#smtkb-root .kb-article{min-width:0}
#smtkb-root .kb-toprow{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
#smtkb-root .kb-crumb{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--muted);font-weight:600}
#smtkb-root .kb-crumb a{color:var(--muted)}
#smtkb-root .kb-crumb a:hover{color:var(--purple)}
#smtkb-root .kb-crumb svg{color:var(--crumb-chev)}
#smtkb-root .kb-back{display:inline-flex;align-items:center;gap:7px;border:1.5px solid var(--line2);background:var(--card);color:var(--purple);font-family:var(--sans);font-weight:700;font-size:13.5px;padding:9px 16px;border-radius:999px;margin-bottom:20px;box-shadow:var(--shadow)}
#smtkb-root .kb-back:hover{border-color:var(--purple);background:var(--purple-soft)}
#smtkb-root .kb-article h1{font-family:var(--disp);font-weight:700;font-size:42px;line-height:1.1;letter-spacing:-.02em;color:var(--ink);margin:0 0 18px}
#smtkb-root .kb-chips{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px}
#smtkb-root .kb-chip{display:inline-flex;align-items:center;gap:8px;background:var(--card);border:1px solid var(--line);border-radius:999px;padding:8px 14px;font-size:13px;font-weight:600;color:var(--body)}
#smtkb-root .kb-chip svg{color:var(--purple);flex:none}
#smtkb-root .kb-chip.b{background:var(--purple-soft);border-color:transparent;color:var(--purple-d)}
#smtkb-root .kb-chip.b svg{color:var(--purple)}
#smtkb-root .kb-rule{border:0;border-top:1px solid var(--line);margin:24px 0 28px}

/* image frames */
#smtkb-root figure{margin:0 0 12px}
#smtkb-root .kb-imgframe{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--frame-bg);box-shadow:var(--shadow)}
#smtkb-root .kb-imgframe img{display:block;width:100%;height:auto}
#smtkb-root .kb-imgframe .ph{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;height:320px;color:var(--frame-icon)}
#smtkb-root .kb-imgframe.sm .ph{height:280px}
#smtkb-root .kb-imgframe .ph .lab{font-family:var(--mono);font-weight:700;font-size:12px;letter-spacing:.14em;color:var(--frame-lab)}
#smtkb-root .kb-imgframe .ph .sub{font-size:13px;color:var(--frame-sub);max-width:60%;text-align:center}
#smtkb-root figcaption{font-size:13.5px;font-style:italic;color:var(--muted);text-align:center;line-height:1.5;padding:0 20px;margin-bottom:30px}

#smtkb-root .kb-lead{font-size:18.5px;line-height:1.62;color:var(--body);margin:6px 0 30px}
#smtkb-root .kb-lead b,#smtkb-root .kb-article p b{color:var(--ink);font-weight:700}
#smtkb-root .kb-article>p,#smtkb-root .kb-prose p{font-size:16px;line-height:1.68;margin:0 0 22px}
#smtkb-root .kb-article h2{font-family:var(--disp);font-weight:700;font-size:26px;letter-spacing:-.01em;color:var(--ink);margin:38px 0 14px;scroll-margin-top:24px}
#smtkb-root .kb-prose h3{font-family:var(--disp);font-weight:600;font-size:19px;color:var(--ink);margin:26px 0 10px}
#smtkb-root .kb-prose ul,#smtkb-root .kb-prose ol{font-size:16px;line-height:1.68;color:var(--body);margin:0 0 22px;padding-left:22px}
#smtkb-root .kb-prose li{margin:6px 0}
#smtkb-root .kb-prose a{color:var(--purple);text-decoration:underline}
#smtkb-root .kb-prose img{max-width:100%;height:auto;border-radius:14px;border:1px solid var(--line);margin:6px 0 12px}
#smtkb-root .kb-prose blockquote{margin:0 0 22px;padding:12px 18px;border-left:4px solid var(--purple);background:var(--purple-soft);border-radius:0 10px 10px 0;color:var(--ink)}

/* in-article callouts (usable inside post content; theme-aware) */
#smtkb-root .kb-prose .kb-callout{display:flex;gap:12px;background:var(--tip-bg);border:1px solid var(--tip-line);border-left:4px solid var(--amber);border-radius:12px;padding:15px 18px;margin:0 0 22px;font-size:14.5px;line-height:1.6;color:var(--tip-text)}
#smtkb-root .kb-prose .kb-callout b,#smtkb-root .kb-prose .kb-callout strong{color:var(--tip-strong)}
#smtkb-root .kb-prose .kb-callout.note{background:var(--purple-soft);border-color:var(--line2);border-left-color:var(--purple);color:var(--body)}
#smtkb-root .kb-prose .kb-callout.note b,#smtkb-root .kb-prose .kb-callout.note strong{color:var(--ink)}
#smtkb-root .kb-prose .kb-callout.warn{background:color-mix(in srgb,var(--coral) 9%,var(--card));border-color:color-mix(in srgb,var(--coral) 26%,transparent);border-left-color:var(--coral);color:var(--body)}
#smtkb-root .kb-prose .kb-callout.warn b,#smtkb-root .kb-prose .kb-callout.warn strong{color:var(--coral)}
#smtkb-root[data-theme="dark"] .kb-prose .kb-callout.warn{color:var(--body)}
#smtkb-root .kb-prose svg{max-width:100%;height:auto}
#smtkb-root .kb-prose table{width:100%;border-collapse:separate;border-spacing:0;margin:0 0 22px;font-size:15px;border:1px solid var(--line);border-radius:14px;overflow:hidden}
#smtkb-root .kb-prose th{font-family:var(--disp);font-weight:700;font-size:14px;color:var(--ink);text-align:left;background:var(--soft);padding:12px 16px;border-bottom:1px solid var(--line)}
#smtkb-root .kb-prose td{padding:12px 16px;border-bottom:1px solid var(--line);color:var(--body);line-height:1.5}
#smtkb-root .kb-prose tr:last-child td{border-bottom:0}
#smtkb-root .kb-prose tr:nth-child(even) td{background:color-mix(in srgb,var(--soft) 45%,transparent)}
#smtkb-root .kb-video{margin:0 0 8px;border-radius:18px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);aspect-ratio:16/9;background:var(--ink)}
#smtkb-root .kb-video iframe{display:block;width:100%;height:100%;border:0}

/* platform tabs (Windows / macOS install switcher) — reusable */
#smtkb-root .kb-tabs{margin:6px 0 22px}
#smtkb-root .kb-tablist{display:inline-flex;gap:4px;padding:5px;background:var(--soft);border:1px solid var(--line);border-radius:13px;margin:0 0 20px}
#smtkb-root .kb-tab{display:inline-flex;align-items:center;gap:9px;font-family:var(--sans);font-weight:700;font-size:14.5px;color:var(--muted);background:none;border:0;border-radius:9px;padding:10px 20px;cursor:pointer}
#smtkb-root .kb-tab svg{flex:none}
#smtkb-root .kb-tab:hover{color:var(--ink)}
#smtkb-root .kb-tabs.js-on .kb-tab.active{background:var(--card);color:var(--purple-d);box-shadow:var(--shadow)}
#smtkb-root .kb-tabs.js-on .kb-tabpanel{display:none}
#smtkb-root .kb-tabs.js-on .kb-tabpanel.active{display:block}
#smtkb-root .kb-tabpanel>h3:first-child{margin-top:2px}
#smtkb-root .kb-imgframe svg{display:block;width:100%;height:auto}
#smtkb-root .kb-svghero{padding:20px 14px;margin:0 0 22px}
/* intro / summary panel (tinted block box, not a flex callout) */
#smtkb-root .kb-prose .kb-panel{background:var(--purple-soft);border:1px solid var(--line2);border-radius:14px;padding:18px 22px;margin:0 0 24px}
#smtkb-root .kb-prose .kb-panel h3{margin:0 0 8px;font-size:18px}
#smtkb-root .kb-prose .kb-panel>:last-child{margin-bottom:0}

/* native 3-phase diagram */
#smtkb-root .kb-diagram{border:1px solid var(--line);border-radius:18px;background:var(--diagram-bg);box-shadow:var(--shadow);padding:44px 30px 34px;margin-bottom:12px}
#smtkb-root .kb-rail{position:relative;display:grid;grid-template-columns:repeat(3,1fr);align-items:start}
#smtkb-root .kb-rail::before{content:"";position:absolute;left:14%;right:14%;top:48px;height:6px;border-radius:6px;background:linear-gradient(90deg,var(--purple),var(--teal-badge) 55%,var(--coral-badge));opacity:.9}
#smtkb-root .kb-node{position:relative;display:flex;flex-direction:column;align-items:center;gap:16px;z-index:1}
#smtkb-root .kb-disc{position:relative;width:96px;height:96px;border-radius:50%;background:var(--card);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 22px rgba(70,40,150,.16)}
#smtkb-root .kb-disc.p1{border:3px solid var(--purple);color:var(--purple)}
#smtkb-root .kb-disc.p2{border:3px solid var(--teal-badge);color:var(--teal)}
#smtkb-root .kb-disc.p3{border:3px solid var(--coral-badge);color:var(--coral)}
#smtkb-root .kb-disc .bdg{position:absolute;top:-8px;right:-8px;width:30px;height:30px;border-radius:50%;color:#fff;font-family:var(--mono);font-weight:700;font-size:14px;display:flex;align-items:center;justify-content:center;border:3px solid var(--card)}
#smtkb-root .kb-disc.p1 .bdg{background:var(--purple)}
#smtkb-root .kb-disc.p2 .bdg{background:var(--teal-badge)}
#smtkb-root .kb-disc.p3 .bdg{background:var(--coral-badge)}
#smtkb-root .kb-node .plabel{font-family:var(--disp);font-weight:700;font-size:19px;color:var(--ink)}

/* phase sections */
#smtkb-root .kb-phase{margin-top:30px}
#smtkb-root .kb-phasehead{display:flex;align-items:center;gap:14px;margin:34px 0 6px;padding-bottom:16px;border-bottom:2px solid var(--line)}
#smtkb-root .kb-phasehead .pn{width:44px;height:44px;border-radius:13px;color:#fff;font-family:var(--disp);font-weight:700;font-size:20px;display:flex;align-items:center;justify-content:center;flex:none}
#smtkb-root .kb-phasehead .kb-eyebrow{font-family:var(--mono);font-weight:700;font-size:11.5px;letter-spacing:.16em}
#smtkb-root .kb-phasehead h2{margin:2px 0 0}
#smtkb-root .kb-phase.p1 .pn{background:var(--purple)} #smtkb-root .kb-phase.p1 .kb-eyebrow{color:var(--purple)}
#smtkb-root .kb-phase.p2 .pn{background:var(--teal-badge)} #smtkb-root .kb-phase.p2 .kb-eyebrow{color:var(--teal)}
#smtkb-root .kb-phase.p3 .pn{background:var(--coral-badge)} #smtkb-root .kb-phase.p3 .kb-eyebrow{color:var(--coral)}
#smtkb-root .kb-phase.sup .pn{background:var(--ink)} #smtkb-root .kb-phase.sup .kb-eyebrow{color:var(--muted)}

/* step cards */
#smtkb-root .kb-steps{display:flex;flex-direction:column;gap:12px;margin-top:18px}
#smtkb-root .kb-step{display:flex;align-items:center;gap:16px;background:var(--card);border:1px solid var(--line);border-radius:15px;padding:16px 18px;box-shadow:var(--shadow);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
#smtkb-root .kb-step:hover{transform:translateY(-2px);box-shadow:var(--shadow-h)}
#smtkb-root .kb-step .sn{width:42px;height:42px;border-radius:12px;color:#fff;font-family:var(--mono);font-weight:700;font-size:17px;display:flex;align-items:center;justify-content:center;flex:none}
#smtkb-root .kb-step .tx{flex:1;min-width:0}
#smtkb-root .kb-step .st{display:block;font-family:var(--disp);font-weight:600;font-size:16.5px;color:var(--ink);margin-bottom:3px}
#smtkb-root .kb-step .sd{display:block;font-size:14px;line-height:1.5;color:var(--muted)}
#smtkb-root .kb-step .chev{color:var(--chev);flex:none;transition:transform .15s ease,color .15s ease}
#smtkb-root .kb-step:hover .chev{transform:translateX(3px)}
#smtkb-root .p1 .kb-step:hover{border-color:var(--purple)} #smtkb-root .p1 .sn{background:var(--purple)} #smtkb-root .p1 .kb-step:hover .chev{color:var(--purple)}
#smtkb-root .p2 .kb-step:hover{border-color:var(--teal-badge)} #smtkb-root .p2 .sn{background:var(--teal-badge)} #smtkb-root .p2 .kb-step:hover .chev{color:var(--teal)}
#smtkb-root .p3 .kb-step:hover{border-color:var(--coral-badge)} #smtkb-root .p3 .sn{background:var(--coral-badge)} #smtkb-root .p3 .kb-step:hover .chev{color:var(--coral)}
#smtkb-root .sup .kb-step:hover{border-color:var(--ink)} #smtkb-root .sup .sn{background:var(--ink)} #smtkb-root .sup .kb-step:hover .chev{color:var(--ink)}

/* tip callout */
#smtkb-root .kb-tip{display:flex;gap:13px;background:var(--tip-bg);border:1px solid var(--tip-line);border-left:4px solid var(--amber);border-radius:12px;padding:15px 17px;margin:14px 0 4px;font-size:14.5px;line-height:1.55;color:var(--tip-text)}
#smtkb-root .kb-tip svg{color:var(--amber);flex:none;margin-top:1px}
#smtkb-root .kb-tip b{color:var(--tip-strong)}
#smtkb-root .kb-steps .kb-tip{margin:0}

/* CTA */
#smtkb-root .kb-cta{margin-top:42px;border-radius:20px;padding:34px 36px;color:#fff;position:relative;overflow:hidden;background:linear-gradient(120deg,var(--purple),#8a4bff 55%,#5f2fd6)}
#smtkb-root .kb-cta::after{content:"";position:absolute;right:-60px;top:-60px;width:240px;height:240px;border-radius:50%;background:rgba(255,255,255,.10)}
#smtkb-root .kb-cta h3{font-family:var(--disp);font-weight:700;font-size:24px;margin:0 0 8px;position:relative}
#smtkb-root .kb-cta p{margin:0 0 20px;color:#efe8ff;font-size:15.5px;position:relative}
#smtkb-root .kb-btn{display:inline-flex;align-items:center;gap:9px;background:#fff;color:var(--purple-d);font-family:var(--sans);font-weight:700;font-size:15px;padding:13px 22px;border-radius:12px;position:relative;box-shadow:0 10px 24px rgba(0,0,0,.18)}
#smtkb-root .kb-btn:hover{color:var(--purple-d);transform:translateY(-1px)}

/* prev / next */
#smtkb-root .kb-prevnext{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:24px}
#smtkb-root .kb-pn{display:flex;align-items:center;gap:14px;background:var(--card);border:1px solid var(--line);border-radius:15px;padding:16px 18px;box-shadow:var(--shadow)}
#smtkb-root .kb-pn.disabled{opacity:.5}
#smtkb-root .kb-pn.next{justify-content:flex-end;text-align:right}
#smtkb-root .kb-pn:not(.disabled):hover{border-color:var(--purple);box-shadow:var(--shadow-h)}
#smtkb-root .kb-pn .lbl{font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.12em;color:var(--muted)}
#smtkb-root .kb-pn .ti{font-family:var(--disp);font-weight:600;font-size:15px;color:var(--ink);margin-top:3px;line-height:1.3}
#smtkb-root .kb-pn .ar{color:var(--purple);flex:none}

/* feedback */
#smtkb-root .kb-feedback{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:26px;padding:18px 22px;background:var(--card);border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow);flex-wrap:wrap}
#smtkb-root .kb-feedback .q{font-family:var(--disp);font-weight:600;font-size:15.5px;color:var(--ink)}
#smtkb-root .kb-fbtns{display:flex;gap:10px}
#smtkb-root .kb-vote{display:inline-flex;align-items:center;gap:8px;border:1.5px solid var(--line2);background:var(--card);color:var(--body);font-family:var(--sans);font-weight:600;font-size:14px;padding:9px 16px;border-radius:10px;cursor:pointer;text-decoration:none}
#smtkb-root .kb-vote:hover{border-color:var(--purple);color:var(--purple);background:var(--purple-soft)}
#smtkb-root .kb-totop{display:inline-flex;align-items:center;gap:8px;margin-left:auto;border:1.5px solid var(--line2);background:var(--card);color:var(--body);font-family:var(--sans);font-weight:600;font-size:14px;padding:9px 16px;border-radius:10px;text-decoration:none}
#smtkb-root .kb-totop:hover{border-color:var(--purple);color:var(--purple);background:var(--purple-soft)}
#smtkb-root .kb-fbthanks{display:inline-flex;align-items:center;gap:8px;font-family:var(--disp);font-weight:700;font-size:15px;color:var(--teal)}
#smtkb-root .kb-fbthanks[hidden]{display:none}
#smtkb-root .kb-fbthanks svg{color:var(--teal)}

/* TOC */
#smtkb-root .kb-toc{position:sticky;top:24px}
#smtkb-root .kb-toc .kb-eyebrow{font-family:var(--mono);font-weight:700;font-size:11px;letter-spacing:.16em;color:var(--muted);margin:0 0 14px;padding-left:14px}
#smtkb-root .kb-toc a{display:block;font-size:13.5px;line-height:1.4;color:var(--muted);font-weight:500;padding:7px 0 7px 14px;border-left:2px solid var(--line)}
#smtkb-root .kb-toc a:hover{color:var(--ink)}
#smtkb-root .kb-toc a.active{color:var(--purple-d);font-weight:700;border-left-color:var(--purple)}

/* ---- category / index grid ---- */
#smtkb-root .kb-cat-head{margin-bottom:26px}
#smtkb-root .kb-cat-head .kb-eyebrow{font-family:var(--mono);font-weight:700;font-size:12px;letter-spacing:.16em;color:var(--purple);margin-bottom:10px}
#smtkb-root .kb-cat-head h1{font-family:var(--disp);font-weight:700;font-size:38px;letter-spacing:-.02em;color:var(--ink);margin:0}
#smtkb-root .kb-hero-card{display:flex;align-items:center;gap:18px;background:linear-gradient(120deg,var(--purple),#8a4bff 60%,#5f2fd6);border-radius:18px;padding:22px 24px;color:#fff;margin-bottom:20px;box-shadow:var(--shadow-h)}
#smtkb-root .kb-hero-card .ic{width:52px;height:52px;border-radius:14px;background:rgba(255,255,255,.16);display:flex;align-items:center;justify-content:center;flex:none}
#smtkb-root .kb-hero-card .lbl{display:block;font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.14em;color:#e6dcff}
#smtkb-root .kb-hero-card .ti{display:block;font-family:var(--disp);font-weight:700;font-size:20px;margin-top:3px}
#smtkb-root .kb-hero-card .ar{margin-left:auto;flex:none}

/* index page: no TOC column */
#smtkb-root .kb-grid--wide{grid-template-columns:264px minmax(0,1fr)}

/* ---- landing: hero + category card grid ---- */
#smtkb-root .kb-landing{max-width:1040px;margin:0 auto}
#smtkb-root .kb-hero{text-align:center;padding:36px 16px 6px;max-width:720px;margin:0 auto}
#smtkb-root .kb-hero .kb-eyebrow{font-family:var(--mono);font-weight:700;font-size:12px;letter-spacing:.16em;color:var(--purple);margin-bottom:14px}
#smtkb-root .kb-hero h1{font-family:var(--disp);font-weight:700;font-size:46px;line-height:1.08;letter-spacing:-.02em;color:var(--ink);margin:0 0 12px}
#smtkb-root .kb-hero-sub{font-size:16.5px;color:var(--muted);margin:0}
#smtkb-root .kb-search--hero{max-width:620px;margin:26px auto 0;text-align:left}
#smtkb-root .kb-hub-banner{max-width:860px;margin:30px auto 0}
#smtkb-root .kb-catgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:34px auto 0}
#smtkb-root .kb-catcard{display:flex;flex-direction:column;gap:13px;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:26px 26px 22px;box-shadow:var(--shadow);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
#smtkb-root .kb-catcard:hover{transform:translateY(-3px);box-shadow:var(--shadow-h)}
#smtkb-root .kb-catcard .ic{width:46px;height:46px;border-radius:13px;display:flex;align-items:center;justify-content:center;color:#fff;flex:none}
#smtkb-root .kb-catcard .ic svg{width:21px;height:21px}
#smtkb-root .kb-catcard h3{font-family:var(--disp);font-weight:700;font-size:19px;color:var(--ink);margin:2px 0 0}
#smtkb-root .kb-catcard p{font-size:14.5px;line-height:1.58;color:var(--muted);margin:0;flex:1}
#smtkb-root .kb-catcard .ft{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:14px;margin-top:4px}
#smtkb-root .kb-catcard .ft .cnt{font-family:var(--mono);font-weight:700;font-size:11.5px;letter-spacing:.06em;color:var(--muted)}
#smtkb-root .kb-catcard .ft .go{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:13.5px;color:var(--purple)}
#smtkb-root .kb-catcard.p1 .ic{background:var(--purple)}
#smtkb-root .kb-catcard.p2 .ic{background:var(--teal-badge)}
#smtkb-root .kb-catcard.p3 .ic{background:var(--coral-badge)}
#smtkb-root .kb-catcard.sup .ic{background:var(--ink)}
#smtkb-root .kb-catcard.p1:hover{border-color:var(--purple)}
#smtkb-root .kb-catcard.p2:hover{border-color:var(--teal-badge)}
#smtkb-root .kb-catcard.p3:hover{border-color:var(--coral-badge)}
#smtkb-root .kb-catcard.sup:hover{border-color:var(--ink)}
#smtkb-root[data-theme="dark"] .kb-catcard.sup .ic{color:#141421}
@media(max-width:1080px){#smtkb-root .kb-catgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){#smtkb-root .kb-catgrid{grid-template-columns:1fr}
  #smtkb-root .kb-hero h1{font-size:34px}}

/* ---- search results ---- */
#smtkb-root .kb-hero--slim{padding-top:26px}
#smtkb-root .kb-hero--slim h1{font-size:36px}
#smtkb-root .kb-hero-sub a{font-weight:700}
#smtkb-root mark{background:var(--purple-soft);color:var(--purple-d);border-radius:4px;padding:0 2px;font-weight:600}
#smtkb-root .kb-results{max-width:780px;margin:30px auto 0;display:flex;flex-direction:column;gap:14px}
#smtkb-root .kb-result{display:block;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:20px 24px;box-shadow:var(--shadow);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
#smtkb-root .kb-result:hover{transform:translateY(-2px);box-shadow:var(--shadow-h)}
#smtkb-root .kb-result-top{display:flex;align-items:center;gap:12px;margin-bottom:9px}
#smtkb-root .kb-result .tag{display:inline-flex;font-family:var(--mono);font-size:10.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;border-radius:999px;padding:3px 10px}
#smtkb-root .kb-result .meta{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--muted);margin-left:auto}
#smtkb-root .kb-result .meta svg{color:var(--muted)}
#smtkb-root .kb-result h3{font-family:var(--disp);font-weight:600;font-size:18px;line-height:1.3;color:var(--ink);margin:0 0 7px}
#smtkb-root .kb-result p{font-size:14.5px;line-height:1.62;color:var(--body);margin:0 0 12px}
#smtkb-root .kb-result .go{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:13px;color:var(--purple)}
#smtkb-root .kb-result.p1 .tag{color:var(--purple-d);background:var(--purple-soft)}
#smtkb-root .kb-result.p2 .tag{color:var(--teal);background:rgba(18,176,189,.12)}
#smtkb-root .kb-result.p3 .tag{color:var(--coral);background:rgba(240,85,122,.12)}
#smtkb-root .kb-result.sup .tag{color:var(--muted);background:var(--soft)}
#smtkb-root .kb-result.p1:hover{border-color:var(--purple)}
#smtkb-root .kb-result.p2:hover{border-color:var(--teal-badge)}
#smtkb-root .kb-result.p3:hover{border-color:var(--coral-badge)}
#smtkb-root .kb-result.sup:hover{border-color:var(--ink)}
/* empty state */
#smtkb-root .kb-empty{max-width:560px;margin:32px auto 0;text-align:center;background:var(--card);border:1.5px dashed var(--line2);border-radius:20px;padding:36px 32px}
#smtkb-root .kb-empty .ic{width:64px;height:64px;border-radius:50%;background:var(--soft);display:flex;align-items:center;justify-content:center;margin:0 auto 16px;color:var(--muted)}
#smtkb-root .kb-empty h2{font-family:var(--disp);font-weight:700;font-size:23px;color:var(--ink);margin:0 0 9px}
#smtkb-root .kb-empty p{font-size:15px;line-height:1.6;color:var(--muted);margin:0}
#smtkb-root .kb-empty p a{font-weight:700}
#smtkb-root .kb-cta--support{max-width:560px;margin:18px auto 0;text-align:center;padding:30px 32px}
#smtkb-root .kb-cta--support h3{font-size:21px}
#smtkb-root .kb-cta--support .alt{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:15px;font-size:13.5px;color:#e6dcff;position:relative}
#smtkb-root .kb-cta--support .alt a{color:#fff;font-weight:700;text-decoration:underline}
#smtkb-root .kb-topics-label{text-align:center;font-family:var(--mono);font-weight:700;font-size:11.5px;letter-spacing:.16em;color:var(--muted);margin-top:40px}

/* popular strip (landing) */
#smtkb-root .kb-popular .kb-topics-label{margin-top:34px}
#smtkb-root .kb-poprow{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:16px}
#smtkb-root .kb-popitem{display:inline-flex;align-items:center;gap:9px;background:var(--card);border:1px solid var(--line);border-radius:999px;padding:10px 18px;font-weight:600;font-size:14px;color:var(--ink);box-shadow:var(--shadow)}
#smtkb-root .kb-popitem svg{color:var(--purple);flex:none}
#smtkb-root .kb-popitem:hover{border-color:var(--purple);color:var(--purple-d);box-shadow:var(--shadow-h)}

/* related articles ("Keep reading") */
#smtkb-root .kb-related{margin-top:8px}
#smtkb-root .kb-related .kb-topics-label{text-align:left;margin-top:30px}
#smtkb-root .kb-relgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px}
#smtkb-root .kb-relcard{display:flex;flex-direction:column;gap:8px;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px 18px;box-shadow:var(--shadow)}
#smtkb-root .kb-relcard .ti{font-family:var(--disp);font-weight:700;font-size:15px;line-height:1.35;color:var(--ink)}
#smtkb-root .kb-relcard .ds{font-size:13px;line-height:1.5;color:var(--muted)}
#smtkb-root .kb-relcard .go{display:inline-flex;align-items:center;gap:6px;margin-top:auto;font-weight:700;font-size:13px;color:var(--purple)}
#smtkb-root .kb-relcard:hover{border-color:var(--purple);box-shadow:var(--shadow-h)}
#smtkb-root .kb-relcard:hover .ti{color:var(--purple-d)}
@media(max-width:860px){#smtkb-root .kb-relgrid{grid-template-columns:1fr}}

/* landing category sections */
#smtkb-root .kb-catsec{margin-top:34px;scroll-margin-top:24px}
#smtkb-root .kb-catsec h2{display:flex;align-items:baseline;gap:10px;margin:2px 0 0}
#smtkb-root .kb-count{font-family:var(--sans);font-weight:600;font-size:13px;letter-spacing:0;color:var(--muted)}
#smtkb-root .kb-catsec .kb-more{border-top:0;background:var(--card);border:1px solid var(--line);border-radius:12px;margin-top:12px;justify-content:center;box-shadow:var(--shadow)}
#smtkb-root .kb-catsec .kb-more:hover{border-color:var(--purple)}

/* search results */
#smtkb-root .kb-step.sup:hover{border-color:var(--ink)}
#smtkb-root .kb-cattag{display:inline-block;font-family:var(--mono);font-size:10.5px;font-weight:700;letter-spacing:.08em;color:var(--muted);background:var(--soft);border:1px solid var(--line);border-radius:999px;padding:2px 9px;margin-left:8px;vertical-align:2px;text-transform:uppercase}

/* sidebar: secondary "more categories" card + counts */
#smtkb-root .kb-othercats{margin-top:16px}
#smtkb-root .kb-nav a .n{display:flex;align-items:center;justify-content:center}
#smtkb-root .kb-nav a .n svg{display:block;width:18px;height:18px}
/* category jump-list rows: title flexes, count pill pinned right on its own line */
#smtkb-root .kb-nav a.catlink{align-items:center}
#smtkb-root .kb-nav a.catlink .tt{flex:1;min-width:0}
#smtkb-root .kb-nav a.catlink .cnt{margin-left:8px;flex:none}
#smtkb-root .kb-nav .cnt{font-family:var(--mono);font-size:11px;font-weight:700;color:var(--muted);background:var(--soft);border:1px solid var(--line);border-radius:999px;padding:1px 7px;margin-left:6px}

/* responsive */
@media(max-width:1080px){
  #smtkb-root .kb-grid{grid-template-columns:240px minmax(0,1fr);gap:32px}
  #smtkb-root .kb-toc{display:none}
}
@media(max-width:820px){
  #smtkb-root .kb-grid{grid-template-columns:1fr}
  #smtkb-root .kb-side{position:static}
  #smtkb-root .kb-article h1{font-size:32px}
  #smtkb-root .kb-prevnext{grid-template-columns:1fr}
}
