/* PokePolis Engine Mobile UX 2.0 — isolated responsive accessibility layer.
   Desktop/navigation V2 untouched. Mobile-only; no global resets. */
:root { --pkp-mobile-focus: #2563eb; }
.pkp-header :is(button,a):focus-visible,
.pkp-header__search :is(button,input,a):focus-visible,
.pkp-back-to-top:focus-visible {
  outline: 3px solid var(--pkp-mobile-focus);
  outline-offset: 3px;
}
.pkp-mobile-drawer-close,.pkp-mobile-search-close,.pkp-mobile-submenu-toggle { display:none; }
@media (max-width: 921px) {
  .pkp-header__inner { gap: clamp(8px,2vw,14px); padding-inline: max(12px,env(safe-area-inset-left)) max(12px,env(safe-area-inset-right)); }
  .pkp-header__logo { min-width:0; }
  .pkp-header__logo img { max-width:min(43vw,190px); height:auto; object-fit:contain; }
  .pkp-header__actions { gap: 6px; }
  .pkp-header__search-toggle, .pkp-header__menu-toggle {
    display:flex; min-width:44px; min-height:44px; width:44px; height:44px;
    touch-action:manipulation; flex:0 0 44px;
  }
  .pkp-header__nav.pkp-mobile-enhanced {
    position:fixed; top:var(--pkp-header-h,70px); bottom:0; left:0; right:auto;
    width:min(92vw,420px); height:auto; min-height:0;
    background:#111827; z-index:9990;
    display:flex; flex-direction:column; align-items:stretch;
    padding: max(10px,env(safe-area-inset-top)) 12px max(28px,env(safe-area-inset-bottom));
    overflow-x:hidden; overflow-y:auto; overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    transform:translateX(-102%); opacity:0; visibility:hidden; pointer-events:none;
    transition:transform .2s ease,opacity .2s ease,visibility .2s ease;
    box-shadow: 12px 0 32px rgba(15,23,42,.26);
  }
  .pkp-header__nav.pkp-mobile-enhanced.is-open {
    transform:translateX(0); opacity:1; visibility:visible; pointer-events:auto;
  }
  .pkp-header__nav.pkp-mobile-enhanced.pkp-mobile-nav2 {
    background:#fff; color:#0f2747;
  }
  .pkp-mobile-drawer-close {
    display:flex; align-items:center; justify-content:center; align-self:flex-end;
    min-height:44px; min-width:128px; padding:8px 14px; margin:0 0 10px;
    border:1px solid rgba(255,255,255,.28); border-radius:12px;
    background:rgba(255,255,255,.10); color:#fff;
    font:700 14px/1.3 system-ui,-apple-system,sans-serif;
    cursor:pointer; touch-action:manipulation;
  }
  .pkp-mobile-nav2 .pkp-mobile-drawer-close { background:#f1f5f9; border-color:#d7e0eb; color:#172b49; }
  .pkp-header__nav.pkp-mobile-enhanced .pkp-header__menu { width:100%; }
  .pkp-header__nav.pkp-mobile-enhanced .pkp-header__menu>li>a,
  .pkp-header__nav.pkp-mobile-enhanced .pkp-header__menu .sub-menu a {
    min-height:44px; display:flex; align-items:center;
    white-space:normal; line-height:1.35; overflow-wrap:anywhere;
  }
  .pkp-header__nav.pkp-mobile-enhanced:not(.pkp-mobile-nav2) .pkp-header__menu li {position:relative;}
  .pkp-header__nav.pkp-mobile-enhanced:not(.pkp-mobile-nav2) .pkp-header__menu li>a { padding-right:52px; }
  .pkp-header__nav.pkp-mobile-enhanced:not(.pkp-mobile-nav2) .sub-menu {
    display:none!important; opacity:1!important; visibility:visible!important;
    position:static!important; left:auto!important; right:auto!important;
    transform:none!important; width:auto!important; box-shadow:none!important;
  }
  .pkp-header__nav.pkp-mobile-enhanced:not(.pkp-mobile-nav2) li.is-submenu-open>.sub-menu { display:block!important; }
  .pkp-header__nav.pkp-mobile-enhanced:not(.pkp-mobile-nav2) .pkp-mobile-submenu-toggle {
    position:absolute; top:1px; right:0; display:flex;
    align-items:center; justify-content:center; min-width:44px; min-height:44px;
    border:1px solid rgba(255,255,255,.13); border-radius:9px;
    background:rgba(255,255,255,.06); color:#fff;
    font:700 19px/1 system-ui; cursor:pointer; touch-action:manipulation;
  }
  .pkp-header__nav.pkp-mobile-enhanced .pkp-mobile-submenu-toggle[aria-expanded="true"] { transform:rotate(180deg); }
  .pkp-header__nav.pkp-mobile-nav2 #pkp-nav2-menu { width:100%; min-width:0; }
  .pkp-header__nav.pkp-mobile-nav2 .pkp-nav2__top-link,
  .pkp-header__nav.pkp-mobile-nav2 .pkp-nav2__toggle { min-height:48px; }
  .pkp-header__nav.pkp-mobile-nav2 .pkp-nav2__links a {min-height:44px;}
  .pkp-header__nav.pkp-mobile-enhanced :is(a,button):focus-visible { outline:3px solid #f5c542; outline-offset:2px; }
  .pkp-header__nav.pkp-mobile-nav2 :is(a,button):focus-visible { outline-color:#2563eb; }
  .pkp-header__search {
    padding: max(20px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) 20px max(12px,env(safe-area-inset-left));
    align-items:flex-start; overflow-y:auto; overscroll-behavior:contain;
  }
  .pkp-header__search-inner { width:100%; max-width:640px; padding:0; }
  .pkp-mobile-search-close {
    display:flex; min-width:112px; min-height:44px; align-items:center; justify-content:center;
    margin:0 0 22px auto; border:1px solid rgba(255,255,255,.32);
    border-radius:12px; background:rgba(255,255,255,.12); color:#fff;
    font:700 15px/1.2 system-ui,-apple-system,sans-serif; cursor:pointer;
  }
  .pkp-header__search input[type="search"] {
    min-height:54px; max-width:100%; font-size:16px; line-height:1.45;
    padding:13px 15px; border-radius:12px;
  }
  .pkp-header__search-inner::after {font-size:12px;line-height:1.5;}
  .pkp-breadcrumbs-bar {max-width:100%;}
  .pkp-breadcrumbs { flex-wrap:nowrap; overflow-x:auto; white-space:nowrap;
    overscroll-behavior-x:contain; scrollbar-width:thin; -webkit-overflow-scrolling:touch;
    padding-block:4px; }
}
@media (max-width: 767px) {
  .pkp-main, .pkp-container, .entry-content {min-width:0;}
  .entry-content {overflow-wrap:anywhere;}
  .entry-content img, .entry-content video, .entry-content iframe,
  .pkp-main img, .pkp-main video {max-width:100%;}
  .entry-content img, .pkp-main img {height:auto;}
  .entry-content pre, .entry-content .wp-block-table,
  .entry-content .table-responsive, .entry-content .pkp-table-wrap {
    max-width:100%; overflow-x:auto; overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
  }
  .entry-content > p, .entry-content > ul, .entry-content > ol {line-height:1.7;}
  .pkp-back-to-top {bottom:max(18px,env(safe-area-inset-bottom));right:max(14px,env(safe-area-inset-right));}
  .pkp-fb-popup {display:none!important;}
}
@media (prefers-reduced-motion:reduce) {
  .pkp-header__nav.pkp-mobile-enhanced,
  .pkp-mobile-submenu-toggle,
  .pkp-header__search {transition:none!important;animation:none!important;}
}
