/* PokePolis Engine • Editorial Design System 3.0
 * OWNED BY THE THEME, never by a game-specific Publisher.
 * Applies equally to .pkp-editorial / .pkp-ed-* (any generation) and
 * to historical .pkpg-g2-article / .pkpg-g2-* markup (Gen II).
 * Component CSS only: topic layout/order remain editorial decisions.
 */
/* PokePolis Gen II — single, shared editorial skin (saved WP page + AI preview).
   No Elementor dependency, no inline CSS; uniquely namespaced. */
:is(.pkp-editorial,.pkpg-g2-article){
 --pkp-ed-navy:#142b50;--pkp-ed-deep:#0f2445;--pkp-ed-blue:#2e66ba;--pkp-ed-yellow:#ffda49;
 --pkp-ed-muted:#596982;--pkp-ed-edge:#dce4ef;--pkp-ed-bg:#f5f8fc;--pkp-ed-white:#fff;
 color:var(--pkp-ed-deep);width:100%;max-width:100%;min-width:0;line-height:1.7;
 font-size:clamp(15px,1.02vw,17px);overflow-wrap:break-word
}
:is(.pkp-editorial,.pkpg-g2-article) *{box-sizing:border-box}
:is(.pkp-editorial,.pkpg-g2-article) a{overflow-wrap:anywhere}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-covers,.pkpg-g2-covers){
 display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
 align-items:stretch!important;gap:clamp(9px,1.7vw,22px)!important;
 padding:clamp(11px,2vw,22px)!important;margin:16px 0 26px!important;
 border:1px solid var(--pkp-ed-edge);border-radius:20px;
 background:linear-gradient(125deg,#edf3fc,#f8fbff 55%,#fff9e5)
}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-cover,.pkpg-g2-cover){
 display:flex!important;flex-direction:column!important;align-items:center!important;
 justify-content:center!important;gap:10px;min-width:0;margin:0!important;
 padding:clamp(9px,1.8vw,23px)!important;background:var(--pkp-ed-white);
 border:1px solid #e2eaf4;border-radius:15px;text-align:center;
 box-shadow:0 5px 19px rgba(19,38,67,.045)
}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-cover,.pkpg-g2-cover) img{
 display:block!important;width:auto!important;height:clamp(100px,15vw,185px)!important;
 max-height:185px!important;max-width:100%!important;object-fit:contain!important;
 margin:0 auto!important;border-radius:3px;
 box-shadow:0 9px 21px rgba(20,32,55,.15)
}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-cover,.pkpg-g2-cover) figcaption{
 display:block!important;margin:0!important;font-weight:800;font-size:clamp(.75rem,1.2vw,.94rem);
 color:var(--pkp-ed-navy);line-height:1.35
}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-toc,.pkpg-g2-toc){
 padding:clamp(16px,2.4vw,25px)!important;margin:24px 0 32px!important;
 background:#fff!important;border:1px solid var(--pkp-ed-edge);border-top:4px solid var(--pkp-ed-yellow);
 border-radius:16px;box-shadow:0 7px 24px rgba(31,54,88,.045)
}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-toc,.pkpg-g2-toc)>strong{display:flex;align-items:center;gap:10px;font-size:1.05rem;color:var(--pkp-ed-navy);margin:0 0 13px}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-toc,.pkpg-g2-toc)>strong:before{content:'≡';font-size:1.5rem;color:var(--pkp-ed-blue)}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-toc,.pkpg-g2-toc) ol{
 display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
 gap:6px 24px;margin:0!important;padding-left:25px!important
}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-toc,.pkpg-g2-toc) li{font-size:.91rem;margin:0!important;padding:3px 0;line-height:1.5}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-toc,.pkpg-g2-toc) a{color:#244b83;text-decoration:none!important;font-weight:650}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-toc,.pkpg-g2-toc) a:hover{text-decoration:underline!important}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main){max-width:100%;min-width:0}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main)>p:first-child{
 font-size:1.07em;font-weight:550;line-height:1.8;color:#1c365f;
 padding:17px 19px;margin:0 0 25px;
 border-radius:0 13px 13px 0;background:#f0f5fe;border-left:4px solid #2d6bb5
}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) h2{
 font-weight:850!important;letter-spacing:-.025em;line-height:1.25;color:var(--pkp-ed-navy)!important;
 font-size:clamp(1.38rem,2.2vw,1.82rem)!important;
 padding:18px 0 12px;margin:32px 0 16px!important;
 border-bottom:2px solid #e5edf6;scroll-margin-top:110px
}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) h2:before{
 content:'';display:inline-block;vertical-align:middle;width:6px;height:23px;
 background:var(--pkp-ed-yellow);border-radius:6px;margin-right:13px;margin-bottom:4px
}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) h3{font-size:1.1rem;line-height:1.35;font-weight:800;color:#1e4275;margin:23px 0 9px}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) p{margin:11px 0 17px;line-height:1.78}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) ul,:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) ol{margin:13px 0 25px;padding-left:1.6em}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) li{padding:5px 3px;line-height:1.7}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) ol>li::marker{color:#2d5f9e;font-weight:900}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) strong{color:#172b4d}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) table{
 display:table!important;width:100%!important;border-collapse:separate;border-spacing:0;
 margin:18px 0 26px!important;border:1px solid var(--pkp-ed-edge);
 border-radius:12px;overflow:hidden;background:#fff;
 box-shadow:0 4px 18px rgba(20,43,80,.045)
}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) th,:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) td{
 text-align:left!important;vertical-align:top!important;padding:13px 16px!important;
 border-right:1px solid var(--pkp-ed-edge);border-bottom:1px solid var(--pkp-ed-edge);
 font-size:.92em;line-height:1.52
}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) tr>*:last-child{border-right:0}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) tr:last-child>*{border-bottom:0}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) th{color:#193968;background:#eaf1fc;font-weight:850}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) tbody tr:nth-child(even){background:#f8fbff}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-inline-link,.pkpg-g2-inline-link){color:#285dad!important;font-weight:700;text-decoration:underline!important;text-underline-offset:3px}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-related,.pkpg-g2-related){padding-top:22px;margin:35px 0 24px;border-top:2px solid #e2eaf4}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-related,.pkpg-g2-related) h2,:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-sources,.pkpg-g2-sources) h2{
 font-size:clamp(1.2rem,2vw,1.55rem);color:var(--pkp-ed-navy);margin:0 0 17px
}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-related-grid,.pkpg-g2-related-grid){display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,235px),1fr));gap:14px}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-related-card,.pkpg-g2-related-card){
 display:flex;align-items:center;gap:15px;min-width:0;padding:13px 15px;
 border:1px solid #dce5f1;border-radius:14px;background:#fff;
 text-decoration:none!important;color:var(--pkp-ed-navy)!important;
 box-shadow:0 3px 14px rgba(27,55,87,.035);transition:border-color .14s,transform .14s
}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-related-card,.pkpg-g2-related-card):hover{border-color:#83aadd;transform:translateY(-2px)}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-related-card,.pkpg-g2-related-card) img{
 width:82px!important;max-width:82px!important;height:82px!important;
 object-fit:contain;background:#f2f5fb;border-radius:10px;flex:0 0 82px
}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-related-text,.pkpg-g2-related-text){display:flex;flex-direction:column;gap:4px;min-width:0;line-height:1.35}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-related-type,.pkpg-g2-related-type){font-size:.72rem;letter-spacing:.075em;text-transform:uppercase;color:#647795;font-weight:800}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-sources,.pkpg-g2-sources){padding:21px 22px;background:#f7f9fd;border:1px solid #e0e7f1;border-radius:14px;margin:30px 0}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-sources,.pkpg-g2-sources) ul{margin:0;padding-left:24px;font-size:.86rem;color:#506485}
:is(.pkp-ed-preview-warning,.pkpg-g2-preview-warning){margin:14px 0 25px;padding:15px 20px;border:1px solid #e5b773;border-left:5px solid #b97923;background:#fff6e8;border-radius:10px;color:#69420f}
:is(.pkp-ed-preview-warning,.pkpg-g2-preview-warning) strong{display:block;font-weight:850;margin-bottom:8px}
:is(.pkp-ed-preview-warning,.pkpg-g2-preview-warning) ul{margin:0;padding-left:21px}

:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-media,.pkpg-g2-media){padding:16px 19px;margin:25px 0 33px;background:linear-gradient(125deg,#f3f7fd,#ffffff);border:1px solid #dce6f2;border-radius:15px}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-media,.pkpg-g2-media)>strong{display:block;color:var(--pkp-ed-navy);font-size:.97rem;margin-bottom:13px}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-media-grid,.pkpg-g2-media-grid){display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr));gap:10px}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-media-tile,.pkpg-g2-media-tile){display:flex;flex-direction:column;align-items:center;gap:8px;padding:13px 10px;background:#fff;border:1px solid #e2e8f1;border-radius:11px;color:var(--pkp-ed-navy)!important;text-align:center;text-decoration:none!important;font-size:.81rem;font-weight:750;line-height:1.35}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-media-tile,.pkpg-g2-media-tile):hover{border-color:#8badde}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-media-tile,.pkpg-g2-media-tile) img{width:90px!important;height:90px!important;object-fit:contain!important;border-radius:7px;background:#f7faff}

@media(max-width:700px){
 :is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-covers,.pkpg-g2-covers){gap:6px!important;padding:8px!important}
 :is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-cover,.pkpg-g2-cover){padding:9px 4px!important;border-radius:9px}
 :is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-cover,.pkpg-g2-cover) img{height:clamp(82px,24vw,130px)!important}
 :is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-toc,.pkpg-g2-toc) ol{grid-template-columns:1fr!important}
 :is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-related-grid,.pkpg-g2-related-grid){grid-template-columns:1fr}
 :is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) table{display:block!important;overflow-x:auto;max-width:100%}
 :is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) th,:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) td{min-width:130px;padding:10px!important}
}
@media(prefers-reduced-motion:reduce){:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-related-card,.pkpg-g2-related-card){transition:none}}


/* One centered layout shared by public pages and authenticated AI previews.
   The rest of PokePolis keeps its existing width and is not changed. */
.pkp-container.pkp-page-wrap:has(:is(.pkp-editorial,.pkpg-g2-article)){
 width:100%!important;max-width:1280px!important;padding-inline:clamp(16px,2.1vw,28px)!important;
 margin-inline:auto!important;box-sizing:border-box!important
}
.pkp-page:has(:is(.pkp-editorial,.pkpg-g2-article)),
.pkp-page:has(:is(.pkp-editorial,.pkpg-g2-article)) > .entry-content{
 width:100%!important;max-width:100%!important;min-width:0!important;
 margin-inline:auto!important;box-sizing:border-box!important
}
.pkp-page:has(:is(.pkp-editorial,.pkpg-g2-article)) > .entry-content > :is(.pkp-editorial,.pkpg-g2-article){
 width:100%!important;min-width:0!important;max-width:none!important;margin-inline:auto!important
}
:is(.pkp-editorial,.pkpg-g2-article){
 --pkp-ed-content-width:100%;
 font-family:var(--pkp-font-body,Inter,Arial,sans-serif);
}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main),
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-toc,.pkpg-g2-toc),
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-covers,.pkpg-g2-covers),
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-related,.pkpg-g2-related),
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-media,.pkpg-g2-media){
 width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;
 margin-inline:0!important
}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) > :is(p,ul,ol,table,section,div,figure){max-width:100%;}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) table{box-sizing:border-box;}
@media(max-width:700px){
 .pkp-container.pkp-page-wrap:has(:is(.pkp-editorial,.pkpg-g2-article)){padding-inline:16px!important;}
}
/* Safe responsive layout: tables may scroll without pushing article off-screen. */
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main){overflow-wrap:break-word;}
:is(.pkp-editorial,.pkpg-g2-article) img{max-width:100%;height:auto;}
/* ===========================================================================
   POKEPOLIS EDITORIAL COMPONENT CONTRACT 3.1 — CRYSTAL VISUAL STANDARD
   Source of design tokens / legacy trainer components: theme assets/css/site.css
   Styling authority for Publisher editorials (all generations): THIS FILE.
   Legacy Gen II selectors remain aliases. No Elementor or trainer HTML changes.
   =========================================================================== */
:is(.pkp-editorial,.pkpg-g2-article){
  --pkp-ed-navy:var(--pkp-ink,#1a1a2e);
  --pkp-ed-deep:var(--pkp-ink,#1a1a2e);
  --pkp-ed-blue:var(--pkp-water,#3b8fd4);
  --pkp-ed-yellow:var(--pkp-yellow,#ffcb05);
  --pkp-ed-muted:var(--pkp-ink-muted,#7b7b9a);
  --pkp-ed-edge:var(--pkp-line,#e2e2ee);
  --pkp-ed-bg:var(--pkp-paper-dim,#f8f8fc);
  --pkp-ed-white:var(--pkp-paper,#fff);
  font-family:var(--pkp-font-body,'Inter',sans-serif);
  color:var(--pkp-ink,#1a1a2e);
  font-size:16px;
  line-height:1.72;
}
/* TRAINER-WIDTH CONTRACT 3.1.2: match Crystal trainer layout from site.css.
   Use one centered 1200px canvas for all editorial generations; 24px
   internal gutters as in .pkp-container. Mobile keeps its 16px override. */
.pkp-container.pkp-page-wrap:has(:is(.pkp-editorial,.pkpg-g2-article)){
  width:100%!important;
  max-width:1200px!important;
  margin-inline:auto!important;
  padding-inline:24px!important;
}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main),
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-toc,.pkpg-g2-toc),
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-covers,.pkpg-g2-covers),
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-media,.pkpg-g2-media),
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-related,.pkpg-g2-related),
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-sources,.pkpg-g2-sources){
  width:100%!important;max-width:100%!important;min-width:0!important;
  margin-inline:0!important;box-sizing:border-box;
}
/* Crystal uses soft paper, a yellow accent and the real PokePolis fonts. */
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) h2{
  display:block;
  color:var(--pkp-ink,#1a1a2e)!important;
  font-family:var(--pkp-font-head,'Nunito',sans-serif)!important;
  font-size:clamp(21px,2.1vw,29px)!important;
  font-weight:900!important;letter-spacing:-.01em;
  background:var(--pkp-paper-dim,#f8f8fc)!important;
  border:0!important;border-left:4px solid var(--pkp-yellow,#ffcb05)!important;
  border-radius:0 var(--pkp-radius-md,8px) var(--pkp-radius-md,8px) 0!important;
  padding:11px 17px!important;margin:30px 0 18px!important;
}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) h2:before{display:none!important;content:none!important}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) h3{
  font-family:var(--pkp-font-head,'Nunito',sans-serif);font-weight:800;
  color:var(--pkp-ink,#1a1a2e);font-size:clamp(17px,1.6vw,21px);
}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main)>p:first-child{
  background:var(--pkp-paper-dim,#f8f8fc);
  border-left:4px solid var(--pkp-yellow,#ffcb05);
  border-radius:0 var(--pkp-radius-md,8px) var(--pkp-radius-md,8px) 0;
  color:var(--pkp-ink-soft,#3d3d5c);font-weight:600;
}
/* The visual equivalent of Crystal .pp-table (never alter existing .pp-table). */
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) :is(table,.pkp-ed-table){
  border:0!important;border-collapse:separate!important;border-spacing:0!important;
  border-radius:var(--pkp-radius-md,8px)!important;
  box-shadow:var(--pkp-shadow-sm,0 1px 3px rgba(26,26,46,.08))!important;
  background:var(--pkp-paper,#fff)!important;
  margin:20px 0 25px!important;overflow:hidden;max-width:100%;
}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) :is(table,.pkp-ed-table) thead,
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) :is(table,.pkp-ed-table) thead tr{
  background:var(--pkp-ink,#1a1a2e)!important;color:#fff!important;
}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) :is(table,.pkp-ed-table) thead th{
  background:transparent!important;color:var(--pkp-yellow,#ffcb05)!important;
  font-size:12px;text-transform:uppercase;letter-spacing:.04em;
  font-weight:800;border-right:0!important;border-bottom:0!important;
  padding:13px 15px!important;
}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) :is(table,.pkp-ed-table) td{
  color:var(--pkp-ink-soft,#3d3d5c);border-right:0!important;
  border-bottom:1px solid var(--pkp-line,#e2e2ee)!important;padding:12px 15px!important;
}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) :is(table,.pkp-ed-table) tr:last-child td{border-bottom:0!important}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) :is(table,.pkp-ed-table) tbody tr:hover{background:var(--pkp-paper-dim,#f8f8fc)!important}
/* Crystal .pp-notes-grid / pp-notes-card contract. */
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-notes-grid,.pkp-ed-advice-grid){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0 26px}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-note-card,.pkp-ed-advice-card){
  display:flex;flex-direction:column;gap:8px;min-width:0;
  border:1px solid var(--pkp-line,#e2e2ee);border-radius:var(--pkp-radius-md,8px);
  padding:16px;background:var(--pkp-paper-dim,#f8f8fc)
}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-note-card--danger,.pkp-ed-advice-card--danger){background:var(--pkp-red-tint,#fff0f0);border-color:#fca5a5}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-note-card--counter,.pkp-ed-advice-card--counter){background:#f0fdf4;border-color:#86efac}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-note-label,.pkp-ed-advice-label){font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--pkp-ink-muted,#7b7b9a)}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-tip,.pkp-ed-callout){
  display:block;padding:12px 16px;margin:18px 0;
  border-left:3px solid var(--pkp-yellow,#ffcb05);
  border-radius:0 var(--pkp-radius-md,8px) var(--pkp-radius-md,8px) 0;
  background:var(--pkp-yellow-tint,#fffbe6);color:var(--pkp-ink-soft,#3d3d5c);font-size:.92rem
}
:is(.pkp-editorial,.pkpg-g2-article) .pkp-ed-tip--danger{border-left-color:var(--pkp-red,#c00);background:var(--pkp-red-tint,#fff0f0)}
:is(.pkp-editorial,.pkpg-g2-article) .pkp-ed-level-tip{
  padding:10px 14px;margin:16px 0;background:#f0fdf4;border-left:3px solid #16a34a;
  border-radius:0 var(--pkp-radius-md,8px) var(--pkp-radius-md,8px) 0;
}
:is(.pkp-editorial,.pkpg-g2-article) .pkp-ed-diff-list{display:grid;gap:7px;list-style:none;padding:0!important;margin:17px 0}
:is(.pkp-editorial,.pkpg-g2-article) .pkp-ed-diff-item{
  padding:10px 14px;border-left:3px solid var(--pkp-line-strong,#bbbbd0);
  border-radius:0 var(--pkp-radius-md,8px) var(--pkp-radius-md,8px) 0;
  background:var(--pkp-paper-dim,#f8f8fc);color:var(--pkp-ink-soft,#3d3d5c)
}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-badge,.pkp-ed-type-badge){
  display:inline-flex;align-items:center;gap:5px;border-radius:999px;
  padding:3px 9px;font-size:11px;line-height:1.5;font-weight:800;
  background:var(--pkp-ink,#1a1a2e);color:#fff;vertical-align:middle;
}
:is(.pkp-editorial,.pkpg-g2-article) .pkp-ed-badge--yellow{background:var(--pkp-yellow,#ffcb05);color:var(--pkp-ink,#1a1a2e)}
/* Crystal internal-link groups, now available to every Publisher generation. */
:is(.pkp-editorial,.pkpg-g2-article) .pkp-ed-links-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px;margin:18px 0 26px}
:is(.pkp-editorial,.pkpg-g2-article) .pkp-ed-links-group{padding:14px;background:var(--pkp-paper-dim,#f8f8fc);border:1px solid var(--pkp-line,#e2e2ee);border-radius:var(--pkp-radius-md,8px)}
:is(.pkp-editorial,.pkpg-g2-article) .pkp-ed-links-label{display:block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:var(--pkp-ink-muted,#7b7b9a);margin-bottom:10px}
:is(.pkp-editorial,.pkpg-g2-article) .pkp-ed-links-group ul{list-style:none!important;padding:0!important;margin:0!important}
:is(.pkp-editorial,.pkpg-g2-article) .pkp-ed-links-group li{padding:4px 0}
:is(.pkp-editorial,.pkpg-g2-article) .pkp-ed-links-group a{font-weight:600;color:var(--pkp-water,#3b8fd4);text-decoration:none}
:is(.pkp-editorial,.pkpg-g2-article) .pkp-ed-links-group a:hover{text-decoration:underline}
/* Neutral component names for game hubs, trainer cards, walkthroughs and locations. */
:is(.pkp-editorial,.pkpg-g2-article) .pkp-ed-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:12px;margin:16px 0 24px}
:is(.pkp-editorial,.pkpg-g2-article) .pkp-ed-fact{padding:16px;background:var(--pkp-paper-dim,#f8f8fc);border:1px solid var(--pkp-line,#e2e2ee);border-radius:var(--pkp-radius-md,8px)}
:is(.pkp-editorial,.pkpg-g2-article) .pkp-ed-fact-label{display:block;color:var(--pkp-ink-muted,#7b7b9a);font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:800}
:is(.pkp-editorial,.pkpg-g2-article) .pkp-ed-fact-value{display:block;font:900 clamp(19px,2vw,26px)/1.25 var(--pkp-font-head,'Nunito',sans-serif);color:var(--pkp-ink,#1a1a2e);margin-top:5px}
:is(.pkp-editorial,.pkpg-g2-article) .pkp-ed-trainer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:15px;margin:16px 0 25px}
:is(.pkp-editorial,.pkpg-g2-article) .pkp-ed-trainer-card{
  display:grid;grid-template-columns:78px minmax(0,1fr);gap:13px;
  padding:14px;background:#fff;border:1px solid var(--pkp-line,#e2e2ee);
  border-radius:var(--pkp-radius-md,8px);box-shadow:var(--pkp-shadow-sm,0 1px 3px rgba(26,26,46,.08));
  color:var(--pkp-ink,#1a1a2e);text-decoration:none;align-items:center;min-width:0
}
:is(.pkp-editorial,.pkpg-g2-article) .pkp-ed-trainer-card img{display:block;width:78px;height:78px;object-fit:contain;border-radius:6px;background:var(--pkp-paper-dim,#f8f8fc)}
:is(.pkp-editorial,.pkpg-g2-article) .pkp-ed-trainer-card strong{color:var(--pkp-ink,#1a1a2e);font-weight:800}
:is(.pkp-editorial,.pkpg-g2-article) .pkp-ed-steps{counter-reset:pkped-steps;list-style:none!important;padding:0!important;display:grid;gap:10px;margin:16px 0 25px}
:is(.pkp-editorial,.pkpg-g2-article) .pkp-ed-steps>li{
  counter-increment:pkped-steps;display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;
  padding:12px;background:var(--pkp-paper-dim,#f8f8fc);border-radius:var(--pkp-radius-md,8px)
}
:is(.pkp-editorial,.pkpg-g2-article) .pkp-ed-steps>li:before{content:counter(pkped-steps);display:grid;place-items:center;background:var(--pkp-yellow,#ffcb05);border-radius:50%;color:var(--pkp-ink,#1a1a2e);width:30px;height:30px;font-weight:900}
/* Existing G2 parts inherit the Crystal surface/shadows without changing source HTML. */
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-toc,.pkpg-g2-toc){
  background:var(--pkp-paper,#fff)!important;border-color:var(--pkp-line,#e2e2ee)!important;
  border-top-color:var(--pkp-yellow,#ffcb05)!important;
  border-radius:var(--pkp-radius-lg,16px);box-shadow:var(--pkp-shadow-sm,0 1px 3px rgba(26,26,46,.08));
}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-covers,.pkpg-g2-covers){
  background:var(--pkp-paper-dim,#f8f8fc)!important;
  border-color:var(--pkp-line,#e2e2ee)!important;
}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-cover,.pkpg-g2-cover),
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-related-card,.pkpg-g2-related-card),
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-media-tile,.pkpg-g2-media-tile){
  border-color:var(--pkp-line,#e2e2ee);border-radius:var(--pkp-radius-md,8px);
  box-shadow:var(--pkp-shadow-sm,0 1px 3px rgba(26,26,46,.08));
}
:is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-related-card,.pkpg-g2-related-card):hover{border-color:var(--pkp-water,#3b8fd4)}
:is(.pkp-editorial,.pkpg-g2-article) a:not([class]){color:var(--pkp-water,#3b8fd4)}
@media(max-width:700px){
  :is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-notes-grid,.pkp-ed-advice-grid){grid-template-columns:1fr}
  .pkp-container.pkp-page-wrap:has(:is(.pkp-editorial,.pkpg-g2-article)){width:100%!important;padding-inline:16px!important}
  :is(.pkp-editorial,.pkpg-g2-article) :is(.pkp-ed-main,.pkpg-g2-main) :is(table,.pkp-ed-table){display:block!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch}
}
