/* MPE v6.0.65 — search automaton, footer instrument, public homepage tags.
 * Uses exactly the saved Chirality thick/thin palette via wang-site.js.
 * The symbol does not interrupt Ghost's native search click handlers.
 */
:root {--wm-dot-a:#cdb165;--wm-dot-b:#3a7864;}
/* The last unlocked search badge wins visually: its search BUTTON continues to
   invoke Ghost search, but all competing icon SVGs/wrappers/pseudo art are hidden.
   Wider-than-normal SVG (+33% from v64) stays centered in the original button. */
html.mpe-wang-badge-active button.gh-search.mpe-wang-search-active {
  position:relative!important; display:inline-flex!important; align-items:center!important;
  justify-content:center!important; flex-shrink:0!important;
  min-width:42px!important;min-height:42px!important;
  isolation:isolate!important; overflow:visible!important;
  background-image:none!important;mask-image:none!important;-webkit-mask-image:none!important;
}
html.mpe-wang-badge-active button.gh-search.mpe-wang-search-active::before,
html.mpe-wang-badge-active button.gh-search.mpe-wang-search-active::after{
  content:none!important;display:none!important;background:none!important;mask:none!important;-webkit-mask:none!important;
}
html.mpe-wang-badge-active button.gh-search.mpe-wang-search-active > :not(.mpe-wang-search-holder){
  display:none!important;visibility:hidden!important;opacity:0!important;
}
.gh-search .mpe-wang-search-holder {display:none!important;pointer-events:none;}
html.mpe-wang-badge-active button.gh-search.mpe-wang-search-active > .mpe-wang-search-holder {
  position:relative!important;z-index:20!important;display:inline-flex!important;
  width:40px!important;height:40px!important;min-width:40px!important;flex:0 0 40px!important;
  align-items:center!important;justify-content:center!important;
  visibility:visible!important;opacity:1!important;overflow:visible!important;
  background:none!important;mask:none!important;-webkit-mask:none!important;
  transform:none!important;
}
html.mpe-wang-badge-active button.gh-search.mpe-wang-search-active > .mpe-wang-search-holder svg,
html.mpe-wang-badge-active button.gh-search.mpe-wang-search-active > .mpe-wang-search-holder .mpe-wang-search-svg {
  width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;
  display:block!important;visibility:visible!important;opacity:1!important;overflow:visible!important;
  position:static!important;inset:auto!important;transform:none!important;
  fill:initial!important;stroke:initial!important;filter:none!important;
  background:none!important;mask:none!important;-webkit-mask:none!important;
  pointer-events:none!important;
}
/* Override search-icon replacements that target all SVG descendants, while
   leaving the pointer groups free to use transform for real state animation. */
html.mpe-wang-badge-active button.gh-search.mpe-wang-search-active .mpe-wang-search-holder .mpe-wang-global-pointer {
  transform-box: view-box;will-change:transform;
}
@media(max-width:690px){
  html.mpe-wang-badge-active button.gh-search.mpe-wang-search-active{min-width:36px!important;min-height:36px!important;}
  html.mpe-wang-badge-active button.gh-search.mpe-wang-search-active > .mpe-wang-search-holder {
    width:34px!important;height:34px!important;min-width:34px!important;flex-basis:34px!important;
  }
}
.mpe-wang-global-orbit {fill:none;stroke:var(--wm-dot-b);stroke-width:.95;opacity:.78;}
.mpe-wang-global-edge {fill:none;stroke-width:.57;opacity:.54;}
.mpe-wang-global-edge.is-a {stroke:var(--wm-dot-a);}
.mpe-wang-global-edge.is-b {stroke:var(--wm-dot-b);stroke-dasharray:1.2 1.2;}
.mpe-wang-global-node {fill:var(--wm-dot-b);stroke:var(--wm-dot-a);stroke-width:.55;}
.mpe-wang-global-pointer {transition:transform 2350ms cubic-bezier(.24,.64,.22,1);will-change:transform;}
.mpe-wang-global-dot {stroke:rgba(10,20,22,.78);stroke-width:.75;}
.mpe-wang-global-pointer.is-a .mpe-wang-global-dot {fill:var(--wm-dot-a);}
.mpe-wang-global-pointer.is-b .mpe-wang-global-dot {fill:var(--wm-dot-b);}
.mpe-wang-global-label {font:7px/1 monospace;fill:currentColor;pointer-events:none;}
.mpe-wang-search-holder .mpe-wang-global-label {display:none;}

.mpe-badge--wang {position:relative;isolation:isolate;cursor:pointer;}
.mpe-badge--wang svg {width:46px;height:46px;max-width:100%;pointer-events:none;}
.mpe-badge--wang .mpe-wang-badge-track {fill:none;stroke:var(--wm-dot-b);stroke-width:1.1;}
.mpe-badge--wang .mpe-wang-badge-orbit {fill:none;stroke:var(--wm-dot-a);stroke-width:1;stroke-dasharray:2.5 3.2;}
.mpe-badge--wang .mpe-wang-badge-dot-a {fill:var(--wm-dot-a);}
.mpe-badge--wang .mpe-wang-badge-dot-b {fill:var(--wm-dot-b);}
.mpe-badge--wang[aria-pressed="true"] {outline-color:var(--wm-dot-a)!important;}
.mpe-wang-footer-panel[hidden],#mpe-home-all-tags[hidden],.mpe-badge--wang[hidden]{display:none!important;}
.mpe-wang-footer-panel {
  box-sizing:border-box;width:min(1100px,calc(100% - 28px));max-width:100%;
  margin:12px auto 30px;padding:clamp(12px,3vw,26px);
  border:1px solid var(--wm-footer-border,#51635b);
  border-top:2px solid var(--wm-dot-a);
  border-radius:12px;background:var(--wm-footer-bg,#11181b);
  color:var(--wm-footer-ink,#e7e9ea);
  font-family:ui-sans-serif,system-ui,-apple-system,sans-serif;
  box-shadow:0 15px 45px rgba(0,0,0,.11);
  contain:layout style;
}
html[data-color-scheme="light"] .mpe-wang-footer-panel {
  --wm-footer-bg:#f7f6ef;--wm-footer-ink:#263431;--wm-footer-border:#bcc6c0;
}
html[data-color-scheme="dark"] .mpe-wang-footer-panel {
  --wm-footer-bg:#11191e;--wm-footer-ink:#e7ebeb;--wm-footer-border:#3b5055;
}
.mpe-wang-footer-inner{display:grid;grid-template-columns:minmax(185px,290px) minmax(0,1fr);align-items:center;gap:clamp(12px,3vw,36px);}
.mpe-wang-footer-plot{width:100%;max-width:290px;justify-self:center;min-width:0;}
.mpe-wang-footer-plot svg{display:block;width:100%;height:auto;max-height:290px;aspect-ratio:1;}
.mpe-wang-footer-plot .mpe-wang-global-edge{stroke-width:.8;opacity:.3;}
.mpe-wang-footer-plot .mpe-wang-global-orbit{stroke-width:1.7;}
.mpe-wang-footer-plot .mpe-wang-global-node{fill:var(--wm-footer-bg);stroke:var(--wm-footer-ink);stroke-width:1.3;}
.mpe-wang-footer-plot .mpe-wang-global-label{fill:var(--wm-footer-ink);font-size:7px;}
.mpe-wang-footer-plot .mpe-wang-global-pointer .mpe-wang-global-dot{stroke:var(--wm-footer-bg);stroke-width:2;}
.mpe-wang-footer-controls {min-width:0;display:flex;flex-direction:column;gap:12px;}
.mpe-wang-footer-wordline{display:flex;align-items:center;gap:12px;min-width:0;border-bottom:1px solid var(--wm-footer-border);padding-bottom:12px;}
.mpe-wang-footer-word{display:block;min-width:0;flex:1 1 auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;
 font:600 13px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.04em;color:var(--wm-footer-ink);}
.mpe-wang-footer-index{font:500 11px/1.2 ui-monospace,Consolas,monospace;white-space:nowrap;color:var(--wm-footer-ink);opacity:.7;}
.mpe-wang-footer-buttons,.mpe-wang-footer-lower{display:flex;align-items:center;gap:7px;flex-wrap:wrap;min-width:0;}
.mpe-wang-footer-lower form{display:flex;gap:7px;flex:1 1 160px;min-width:0;}
.mpe-wang-footer-panel button,.mpe-wang-footer-panel input,.mpe-wang-footer-panel select {
 box-sizing:border-box;min-height:42px;min-width:0;max-width:100%;padding:8px 11px;
 color:var(--wm-footer-ink);background:transparent;border:1px solid var(--wm-footer-border);
 border-radius:6px;font:600 14px/1.2 ui-sans-serif,system-ui,sans-serif;
 touch-action:manipulation;cursor:pointer;
}
.mpe-wang-footer-panel button[data-wang-action="a"],.mpe-wang-footer-panel button[data-wang-action="b"]{
 border-color:var(--wm-dot-a);font-size:19px;min-width:44px;
}
.mpe-wang-footer-panel input {flex:1 1 105px;text-align:left;font:500 16px/1.2 ui-monospace,Consolas,monospace;cursor:text;}
.mpe-wang-footer-panel select{max-width:85px;appearance:auto;font-size:16px;}
.mpe-wang-footer-panel button:hover,.mpe-wang-footer-panel button:focus-visible {border-color:var(--wm-dot-a);background:color-mix(in srgb,var(--wm-dot-a) 11%,transparent);}
.mpe-wang-footer-panel :focus-visible,.mpe-badge--wang:focus-visible,.mpe-home-all-tags a:focus-visible {outline:2px solid var(--wm-dot-a)!important;outline-offset:2px!important;}
@media(max-width:680px){
 .mpe-wang-footer-panel {width:calc(100% - 20px);padding:13px;border-radius:8px;}
 .mpe-wang-footer-inner {grid-template-columns:minmax(0,1fr);gap:6px;}
 .mpe-wang-footer-plot {max-width:210px;}
 .mpe-wang-footer-plot svg {max-height:210px;}
 .mpe-wang-footer-controls {gap:9px;}
 .mpe-wang-footer-buttons {gap:5px;}
 .mpe-wang-footer-panel button {padding-inline:10px;}
}
/* v65: the heading and nav are one full-width section, not two columns of
   the homepage's slider grid. All Ghost public tags are retained. Justified flex
   chips pack every row edge-to-edge, including the last; small type and padding. */
.mpe-home-tags-board{
 box-sizing:border-box!important;display:block!important;clear:both!important;
 grid-column:1/-1!important;grid-row:auto!important;flex:0 0 100%!important;
 justify-self:stretch!important;align-self:start!important;
 width:100%!important;max-width:none!important;min-width:0!important;
 margin:16px auto 12px!important;padding:0 clamp(10px,2.5vw,24px)!important;
 position:relative!important;left:auto!important;right:auto!important;
}
.mpe-home-tags-board .mpe-home-tags-title{
 display:block!important;position:static!important;float:none!important;
 margin:0 0 9px!important;padding:0!important;
 width:100%!important;max-width:none!important;
 font-size:clamp(18px,2.1vw,25px)!important;line-height:1.15!important;
 letter-spacing:normal!important;text-wrap:balance!important;
}
.mpe-home-topics-wide-child{
  grid-column:1/-1!important;min-width:0!important;width:100%!important;
  flex:1 1 100%!important;justify-self:stretch!important;
}
.mpe-home-all-tags{
 box-sizing:border-box!important;display:flex!important;flex-wrap:wrap!important;
 width:100%!important;max-width:100%!important;min-width:0!important;
 grid-column:1/-1!important;clear:both!important;
 gap:5px!important;margin:0!important;padding:8px!important;
 align-items:stretch!important;justify-content:stretch!important;
 border:1px solid color-mix(in srgb,var(--wm-dot-b) 38%,transparent);
 border-radius:10px!important;
}
.mpe-home-all-tags[hidden]{display:none!important;}
.mpe-home-all-tags a{
 box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;
 justify-content:center!important;text-align:center!important;
 flex:1 1 auto!important;min-width:min-content!important;max-width:100%!important;
 min-height:27px!important;margin:0!important;padding:4px 8px!important;
 border:1px solid var(--wm-dot-a)!important;border-radius:16px!important;
 background:color-mix(in srgb,var(--wm-dot-a) 10%,transparent)!important;
 color:inherit!important;text-decoration:none!important;
 font:600 11px/1.22 ui-sans-serif,system-ui,-apple-system,sans-serif!important;
 letter-spacing:0!important;text-transform:none!important;
 white-space:normal!important;overflow-wrap:normal!important;hyphens:none!important;
 transition:background .18s ease,border-color .18s ease;
}
.mpe-home-all-tags a:nth-child(even){
 border-color:var(--wm-dot-b)!important;
 background:color-mix(in srgb,var(--wm-dot-b) 10%,transparent)!important;
}
.mpe-home-all-tags a:hover{background:color-mix(in srgb,var(--wm-dot-a) 19%,transparent)!important;}
.mpe-home-all-tags a:nth-child(even):hover{background:color-mix(in srgb,var(--wm-dot-b) 19%,transparent)!important;}
@media(max-width:500px){
 .mpe-home-tags-board{margin-top:8px!important;padding:0 8px!important;}
 .mpe-home-tags-board .mpe-home-tags-title{font-size:20px!important;margin-bottom:7px!important;}
 .mpe-home-all-tags{gap:4px!important;padding:6px!important;}
 .mpe-home-all-tags a{font-size:10.5px!important;min-height:26px!important;padding:4px 6px!important;}
}
@media(prefers-reduced-motion:reduce){.mpe-wang-global-pointer,.mpe-home-all-tags a{transition:none!important;}
}
/* Keep a mobile cloud's final row balanced instead of expanding one orphan chip
   into an entire horizontal banner. Applies to any live Ghost tag count. */
@media(max-width:690px){
  .mpe-home-all-tags a:nth-last-child(2),
  .mpe-home-all-tags a:last-child {flex-basis:calc(50% - 3px)!important;}
}
