/* Panmakapmue — premium editorial reader. Scoped to #article only.
   Works with all 672 legacy articles, without modifying their images/URLs. */
#article.pm-article{
  --pa-ink:#2f203b;
  --pa-violet:#673c83;
  --pa-muted:#756981;
  --pa-border:#eae5ee;
  --pa-pale:#f9f7fb;
  padding:30px 0 42px;
  overflow:visible;
  scroll-margin-top:86px;
}
#article.pm-article .pm-article__shell{
  max-width:1230px;
  padding:0;
  overflow:visible;
  border:1px solid #e8e0ec;
  border-radius:30px;
  background:#fff;
  box-shadow:0 18px 55px rgba(40,19,59,.10), 0 3px 10px rgba(40,19,59,.03);
  isolation:isolate;
}
#article.pm-article .pm-article__shell::before{content:none}
#article.pm-article .articleIntro{
  position:relative;
  display:grid;
  grid-template-columns:74px minmax(0,1fr);
  align-items:center;
  justify-items:stretch;
  gap:20px;
  margin:0;
  padding:25px clamp(22px,3vw,36px);
  text-align:left;
  border:0;
  border-radius:29px 29px 0 0;
  background:linear-gradient(118deg,#251630 0%,#362048 55%,#4e2c68 100%);
  box-shadow:none;
  overflow:hidden;
}
#article.pm-article .articleIntro::after{
  content:"";position:absolute;inset:-150px -10% auto auto;
  width:360px;height:360px;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,rgba(199,133,246,.17),transparent 67%);
}
#article.pm-article .articleIntro > *{position:relative;z-index:1;min-width:0}
#article.pm-article .articleIntro img{
  width:72px;height:64px;object-fit:contain;
  margin:0;padding:8px;border-radius:16px;
  background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.17);
  filter:none;
}
#article.pm-article .articleIntro .tag{
  display:inline-flex;align-items:center;
  min-height:25px;padding:3px 11px;border-radius:999px;
  color:#e7c9fa;background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:none;font-size:.76rem;font-weight:800;letter-spacing:.015em;
}
#article.pm-article .articleIntro h2{
  margin:5px 0 0!important;padding:0;
  font-size:clamp(1.35rem,2.6vw,2.1rem);
  line-height:1.42;letter-spacing:-.015em;
  color:#fff;font-weight:850;text-wrap:pretty;
}
#article.pm-article .pm-article__layout{
  display:grid;
  grid-template-columns:minmax(0,278px) minmax(0,1fr);
  align-items:start;
  min-width:0;
}
/* Desktop chapter index (native details, open by default). */
#article.pm-article .pm-article__toc{
  position:sticky;top:88px;align-self:start;
  max-height:calc(100dvh - 103px);overflow-y:auto;overflow-x:hidden;
  background:linear-gradient(180deg,#fbf9fc 0%,#fff 92%);
  border-right:1px solid var(--pa-border);
  padding:22px 15px 26px;
  scrollbar-color:#d4c8dc transparent;
  scrollbar-width:thin;
  min-width:0;
}
#article.pm-article .pm-article__toc > summary{display:none}
#article.pm-article .pm-article__toc-caption{
  color:#9c6cb1;letter-spacing:.16em;font-size:.69rem;
  font-weight:1000;padding:0 10px;margin:0 0 12px;
}
#article.pm-article .pm-article__toc-list{
  margin:0;padding:0;list-style:none;
  display:grid;gap:3px;
}
#article.pm-article .pm-article__toc-list li{list-style:none;margin:0;padding:0}
#article.pm-article .pm-article__toc-list a{
  display:grid;grid-template-columns:26px minmax(0,1fr);gap:8px;
  align-items:start;
  color:#60556b;background:transparent;
  text-decoration:none;
  border-radius:11px;border:1px solid transparent;
  padding:10px 9px;
  transition:background .18s ease,color .18s ease,border-color .18s ease;
}
#article.pm-article .pm-article__toc-list a:hover,
#article.pm-article .pm-article__toc-list a:focus-visible{
  background:#f0eafa;color:#4c2465;border-color:#e5d8ed;
}
#article.pm-article .pm-article__toc-list a[aria-current="location"]{
  background:#eee6f5;color:#512a6e;border-color:#e2d4eb;
  font-weight:850;
}
#article.pm-article .pm-article__toc-number{
  font-size:.73rem;line-height:1.9;font-weight:950;color:#a08baf;
  font-variant-numeric:tabular-nums;
}
#article.pm-article a[aria-current="location"] .pm-article__toc-number{color:#754c90}
#article.pm-article .pm-article__toc-title{
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;
  overflow:hidden;font-size:.84rem;line-height:1.52;font-weight:720;
  overflow-wrap:anywhere;
}
#article.pm-article .pm-article__toc-contact{
  display:flex;justify-content:space-between;gap:6px;
  margin:20px 5px 0;padding:12px 14px;
  color:#fff;text-decoration:none;border-radius:12px;
  font-size:.82rem;font-weight:850;
  background:linear-gradient(100deg,#643d7f,#8249a2);
  box-shadow:0 6px 14px rgba(95,51,127,.16);
}
#article.pm-article .pm-article__toc-contact:hover{background:#4b2d68;color:#fff}
/* Reading canvas */
#article.pm-article .pm-article__content{
  margin:0;max-width:none;padding:24px clamp(16px,2.5vw,32px) 25px;
  color:var(--pa-ink);font-size:.98rem;line-height:1.8;
  min-width:0;
}
#article.pm-article .pm-article__reader-head{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  flex-wrap:wrap;
  margin:0 0 14px;padding:0 1px 14px;
  border-bottom:1px solid var(--pa-border);
}
#article.pm-article .pm-article__reader-label{
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;
  color:#73627e;font-size:.82rem;font-weight:850;
}
#article.pm-article .pm-article__reader-dot{
  display:inline-block;width:8px;height:8px;border-radius:50%;
  background:#9362af;box-shadow:0 0 0 3px #f2e9f7;
}
#article.pm-article .pm-article__reader-sep{color:#bca9c9;font-weight:600}
#article.pm-article .pm-article__reader-controls{display:none;align-items:center;gap:6px}
#article.pm-article.pm-article--enhanced .pm-article__reader-controls{display:flex}
#article.pm-article .pm-article__reader-controls button{
  border:1px solid #e6ddea;border-radius:9px;background:#fff;
  padding:7px 11px;color:#624477;cursor:pointer;
  font:inherit;font-weight:850;font-size:.76rem;
}
#article.pm-article .pm-article__reader-controls button:hover{
  background:#f5f0f8;border-color:#d8c6e4;
}
#article.pm-article .pm-article__chapter{
  margin:0 0 9px;
  border:1px solid var(--pa-border);border-radius:15px;
  background:#fff;overflow:hidden;
  box-shadow:0 2px 8px rgba(51,27,70,.025);
  scroll-margin-top:100px;
}
#article.pm-article .pm-article__chapter[open]{
  border-color:#decfe8;box-shadow:0 6px 20px rgba(51,27,70,.05);
}
#article.pm-article .pm-article__chapter > summary{
  display:grid;grid-template-columns:34px minmax(0,1fr) 26px;
  gap:12px;align-items:center;
  padding:14px 17px;
  cursor:pointer;list-style:none;
  color:#35243f;background:#fff;
}
#article.pm-article .pm-article__chapter > summary::-webkit-details-marker{display:none}
#article.pm-article .pm-article__chapter > summary::marker{content:""}
#article.pm-article .pm-article__chapter > summary::before{
  content:attr(data-pm-number);
  display:grid;place-items:center;
  width:34px;height:34px;border-radius:10px;
  font-size:.77rem;font-weight:1000;
  color:#76568b;background:#f2ecf6;
  font-variant-numeric:tabular-nums;
}
#article.pm-article .pm-article__chapter > summary::after{
  content:"+";
  display:grid;place-items:center;
  width:26px;height:26px;
  border:1px solid #e7dfeb;border-radius:8px;
  color:#805f96;font-size:1.14rem;font-weight:550;line-height:1;
}
#article.pm-article .pm-article__chapter[open] > summary{
  background:linear-gradient(100deg,#fcf9fe,#fff 80%);
  border-bottom:1px solid #f0e9f3;
}
#article.pm-article .pm-article__chapter[open] > summary::before{
  color:#fff;background:#744690;
}
#article.pm-article .pm-article__chapter[open] > summary::after{
  content:"−";color:#fff;background:#744690;border-color:#744690;
}
#article.pm-article .pm-article__chapter > summary:hover{background:#fbf8fe}
#article.pm-article .articleContent .pm-article__chapter > summary h2{
  display:block;margin:0!important;padding:0!important;
  border:0;border-radius:0;background:transparent;
  box-shadow:none;color:#31213e;
  font-size:clamp(.97rem,1.5vw,1.11rem);line-height:1.53;
  font-weight:860;letter-spacing:0;text-wrap:pretty;
}
#article.pm-article .articleContent .pm-article__chapter > summary h2::before{content:none!important;display:none!important}
#article.pm-article .pm-article__chapter-body{
  padding:17px clamp(16px,2.6vw,27px) 22px 63px;
  background:#fff;
  color:#4a3f52;
  overflow-wrap:anywhere;
}
#article.pm-article .articleContent .pm-article__chapter-body p{
  margin:0 0 13px;padding:0;
  background:none;border:0;border-radius:0;box-shadow:none;
  color:#504757;font-size:clamp(.91rem,1.2vw,1rem);
  line-height:1.88;font-weight:540;letter-spacing:0;
}
#article.pm-article .articleContent .pm-article__chapter-body p:last-child{margin-bottom:0}
#article.pm-article .articleContent .pm-article__chapter-body strong{
  color:#6f427f;font-weight:850;
}
#article.pm-article .articleContent .pm-article__chapter-body h3{
  display:block;margin:22px 0 8px;padding:0 0 0 12px;
  font-size:1.04rem;font-weight:880;line-height:1.5;
  background:none;border:0;border-left:3px solid #a979bf;
  border-radius:0;box-shadow:none;color:#392348;
}
#article.pm-article .articleContent .pm-article__chapter-body h4{
  display:block;margin:17px 0 6px;padding:0;
  font-size:.96rem;font-weight:870;line-height:1.55;
  border:0;border-radius:0;background:none;color:#664278;
  white-space:normal;box-shadow:none;
}
#article.pm-article .articleContent .pm-article__chapter-body h3:first-child,
#article.pm-article .articleContent .pm-article__chapter-body h4:first-child{margin-top:0}
#article.pm-article .pm-article__closing{
  display:flex;align-items:center;justify-content:space-between;
  gap:10px;flex-wrap:wrap;
  padding:16px 2px 0;margin-top:10px;
  font-size:.82rem;color:#786b81;font-weight:730;
}
#article.pm-article .pm-article__closing a{
  text-decoration:none;color:#6b4383;font-weight:900;
  border-bottom:1px solid #d5bce3;padding-bottom:3px;
}
#article.pm-article .pm-article__closing a:hover{color:#3f2257}
#article.pm-article .pm-article__toc a:focus-visible,
#article.pm-article .pm-article__chapter > summary:focus-visible,
#article.pm-article .pm-article__reader-controls button:focus-visible,
#article.pm-article .pm-article__closing a:focus-visible{
  outline:3px solid #ac77cd;outline-offset:3px;
}
@media(max-width:950px){
  #article.pm-article .pm-article__layout{grid-template-columns:minmax(0,1fr)}
  #article.pm-article .pm-article__toc{
    position:static;max-height:none;overflow:visible;
    padding:0;background:#fff;border-right:0;
    border-bottom:1px solid var(--pa-border);
  }
  #article.pm-article .pm-article__toc > summary{
    display:flex;align-items:center;justify-content:space-between;gap:14px;
    padding:17px 22px;cursor:pointer;list-style:none;
    color:#4e345e;font-weight:900;font-size:.91rem;
  }
  #article.pm-article .pm-article__toc > summary::-webkit-details-marker{display:none}
  #article.pm-article .pm-article__toc > summary::marker{content:""}
  #article.pm-article .pm-article__toc-count{
    color:#9368a6;font-size:.79rem;font-weight:830;
  }
  #article.pm-article .pm-article__toc[open] > summary{background:#fbf7fd}
  #article.pm-article .pm-article__toc-inner{
    padding:0 16px 17px;
  }
  #article.pm-article .pm-article__toc-list{
    max-height:320px;overflow-y:auto;
    border:1px solid #f0eaf3;border-radius:12px;
    padding:4px;
  }
  #article.pm-article .pm-article__toc-caption{margin:8px 0}
  #article.pm-article .pm-article__toc-contact{margin:12px 0 0}
  #article.pm-article .pm-article__content{padding:21px clamp(18px,3vw,28px) 24px}
}
@media(min-width:951px){
  #article.pm-article .pm-article__toc > .pm-article__toc-inner{display:block!important}
}
@media(max-width:600px){
  #article.pm-article{padding:20px 0 28px;overflow:clip}
  #article.pm-article .pm-article__shell{border-radius:22px}
  #article.pm-article .articleIntro{
    border-radius:21px 21px 0 0;
    grid-template-columns:52px minmax(0,1fr);gap:12px;
    padding:19px 16px;
  }
  #article.pm-article .articleIntro img{
    width:52px;height:52px;padding:5px;border-radius:11px;
  }
  #article.pm-article .articleIntro h2{
    font-size:clamp(1.13rem,4.5vw,1.45rem);
    line-height:1.45;
  }
  #article.pm-article .articleIntro .tag{font-size:.69rem;padding:3px 8px}
  #article.pm-article .pm-article__toc > summary{padding:14px 17px}
  #article.pm-article .pm-article__content{padding:15px 11px 18px}
  #article.pm-article .pm-article__reader-head{padding:0 5px 12px;gap:10px}
  #article.pm-article .pm-article__reader-label{font-size:.76rem}
  #article.pm-article .pm-article__reader-controls button{padding:7px 10px;font-size:.71rem}
  #article.pm-article .pm-article__chapter{border-radius:12px;margin-bottom:8px}
  #article.pm-article .pm-article__chapter > summary{
    grid-template-columns:29px minmax(0,1fr) 24px;
    gap:10px;padding:13px 11px;
  }
  #article.pm-article .pm-article__chapter > summary::before{
    width:29px;height:29px;border-radius:8px;font-size:.7rem;
  }
  #article.pm-article .pm-article__chapter > summary::after{width:24px;height:24px}
  #article.pm-article .articleContent .pm-article__chapter > summary h2{font-size:.95rem;line-height:1.5}
  #article.pm-article .pm-article__chapter-body{padding:13px 15px 18px}
  #article.pm-article .articleContent .pm-article__chapter-body p{font-size:.92rem;line-height:1.8;margin-bottom:11px}
  #article.pm-article .articleContent .pm-article__chapter-body h3{font-size:1rem;margin:17px 0 6px}
  #article.pm-article .pm-article__closing{padding:12px 6px 0;font-size:.76rem}
}
@media(prefers-reduced-motion:reduce){
  #article.pm-article *{scroll-behavior:auto!important;transition:none!important}
}
