/* ================================================================
   PipoNews Theme CSS — v1.1
   Fixes: focus-visible, skip link, reading progress, sticky header
   shrink, aspect-ratio on images, print styles, dark mode partial,
   better mobile nav focus trap, loading skeletons, scroll reveal
================================================================ */

@import url('https://fonts.googleapis.com/css2?family=Merriweather:wght@400;700;900&family=Source+Sans+3:ital,wght@0,300;0,400;0,600;0,700;1,400&family=Oswald:wght@400;500;600;700&display=swap');

/* ── Variables ───────────────────────────────────────── */
:root {
  --red:      #cc1f1f; --red-d:#a51717; --red-l:#fff5f5;
  --navy:     #0d1b2a; --navy2:#1a2d40;
  --charcoal: #2c3e50; --g-dark:#4a5568; --g-mid:#718096;
  --g-light:  #e2e8f0; --g-ultra:#f7f8fa; --white:#ffffff;
  --gold:     #d4a017; --green:#276749;
  --fd:       'Oswald',sans-serif;
  --fs:       'Merriweather',serif;
  --fb:       'Source Sans 3','Segoe UI',sans-serif;
  --sh-sm:    0 1px 4px rgba(0,0,0,.08);
  --sh-md:    0 4px 14px rgba(0,0,0,.12);
  --sh-lg:    0 8px 32px rgba(0,0,0,.18);
  --r:        4px; --t:all .2s ease;
  --header-h: 72px;
}

/* ── Reset ───────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;scroll-behavior:smooth}
body{font-family:var(--fb);background:var(--g-ultra);color:var(--charcoal);overflow-x:hidden;line-height:1.6}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
ul{list-style:none}
button{cursor:pointer;font-family:inherit;border:none}
input,textarea,select{font-family:inherit}
::-webkit-scrollbar{width:5px}
::-webkit-scrollbar-track{background:var(--g-light)}
::-webkit-scrollbar-thumb{background:var(--red);border-radius:3px}

/* ── v1.1: Skip to content link (accessibility) ─────── */
.pn-skip-link {
  position:absolute; top:-100px; left:20px; z-index:9999;
  background:var(--red); color:var(--white); padding:10px 18px;
  border-radius:0 0 var(--r) var(--r); font-weight:700;
  font-size:14px; transition:top .2s ease; font-family:var(--fb);
}
.pn-skip-link:focus { top:0; color:var(--white); }

/* ── v1.1: Focus-visible styles (keyboard nav) ───────── */
:focus { outline:none; }
:focus-visible {
  outline:3px solid var(--red);
  outline-offset:2px;
  border-radius:2px;
}
a:focus-visible,button:focus-visible { outline:3px solid var(--red); outline-offset:2px; border-radius:2px; }

/* ── v1.1: Reading progress bar ─────────────────────── */
#pn-read-progress {
  position:fixed; top:0; left:0; z-index:9998;
  height:3px; background:var(--red);
  width:0%; transition:width .1s linear;
  pointer-events:none;
}

/* ── Animations ──────────────────────────────────────── */
@keyframes fadeUp  {from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes slideIn {from{opacity:0;transform:translateX(-14px)}to{opacity:1;transform:translateX(0)}}
@keyframes ticker  {0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
@keyframes spin    {to{transform:rotate(360deg)}}
@keyframes float   {0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes shimmer {0%{background-position:-400px 0}100%{background-position:400px 0}}

/* ── Skeleton loader ─────────────────────────────────── */
.pn-skeleton {
  background:linear-gradient(90deg,var(--g-light) 25%,#eef0f3 50%,var(--g-light) 75%);
  background-size:400px 100%; animation:shimmer 1.4s infinite;
  border-radius:var(--r);
}

/* ── Layout ──────────────────────────────────────────── */
.pn-wrap{max-width:1280px;margin:0 auto;padding:0 20px}
.pn-sec{padding:28px 0}
.pn-row{display:flex;gap:28px;align-items:flex-start}
.pn-main{flex:1;min-width:0}
.pn-aside{width:320px;flex-shrink:0}

/* Category color utils */
.bg-politica{background:#e53e3e!important}.bg-policia{background:#2d3748!important}
.bg-esportes{background:#2b6cb0!important}.bg-cotidiano{background:#276749!important}
.bg-tecnologia{background:#553c9a!important}.bg-saude{background:#2c7a7b!important}
.bg-mundo{background:#c05621!important}.bg-brasil{background:#276749!important}
.bg-economia{background:#b7791f!important}.bg-cultura{background:#97266d!important}

/* ══════════════════════════════════════════
   TOP BAR
══════════════════════════════════════════ */
#pn-topbar{background:var(--navy);color:#999;font-size:12px;padding:6px 0;border-bottom:1px solid rgba(255,255,255,.05)}
.pn-topbar-inner{display:flex;justify-content:space-between;align-items:center}
.pn-tb-right{display:flex;align-items:center;gap:14px}
.pn-tb-socials{display:flex;gap:10px}
.pn-tb-socials a{color:#777;transition:var(--t);display:flex;align-items:center;padding:4px}
.pn-tb-socials a:hover{color:var(--red)}
.pn-editor-link{color:var(--gold)!important;font-weight:700;font-size:11px;letter-spacing:.5px;display:flex;align-items:center;gap:4px;padding:3px 10px;border:1px solid rgba(212,160,23,.3);border-radius:12px;transition:var(--t)}
.pn-editor-link:hover,.pn-editor-link:focus-visible{background:rgba(212,160,23,.15);color:#f0c040!important}
.pn-tb-sep{width:1px;height:14px;background:rgba(255,255,255,.1)}

/* ══════════════════════════════════════════
   HEADER — v1.1: shrinks on scroll
══════════════════════════════════════════ */
#pn-header{
  background:var(--white);
  border-bottom:3px solid var(--red);
  position:sticky;top:0;z-index:900;
  box-shadow:var(--sh-md);
  transition:height .25s ease, box-shadow .25s ease;
}
.pn-header-inner{
  display:flex;align-items:center;height:var(--header-h);gap:20px;
  transition:height .25s ease;
}
/* Scrolled state — applied by JS */
#pn-header.scrolled { box-shadow:0 2px 20px rgba(0,0,0,.15); }
#pn-header.scrolled .pn-header-inner { height:56px; }
#pn-header.scrolled .pn-logo-name { font-size:26px; }

.pn-logo{display:flex;flex-direction:column;text-decoration:none;flex-shrink:0}
.pn-logo-name{font-family:var(--fd);font-size:32px;font-weight:700;color:var(--red);letter-spacing:-1px;line-height:1;text-transform:uppercase;transition:font-size .25s ease}
.pn-logo-name span{color:var(--navy)}
.pn-logo-sub{font-size:9px;color:var(--g-mid);letter-spacing:3px;text-transform:uppercase;font-weight:600}
.pn-search{flex:1;max-width:380px;position:relative}
.pn-search input{width:100%;padding:10px 40px 10px 16px;border:1.5px solid var(--g-light);border-radius:24px;font-size:14px;background:var(--g-ultra);outline:none;transition:var(--t)}
.pn-search input:focus{border-color:var(--red);background:var(--white);box-shadow:0 0 0 3px rgba(204,31,31,.08)}
.pn-search-btn{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--g-mid);transition:var(--t);display:flex;align-items:center;padding:4px}
.pn-search-btn:hover{color:var(--red)}
.pn-push-btn{display:flex;align-items:center;gap:6px;background:var(--red);color:var(--white);padding:9px 18px;border-radius:24px;font-size:13px;font-weight:600;transition:var(--t);white-space:nowrap;border:none}
.pn-push-btn:hover{background:var(--red-d);transform:translateY(-1px);box-shadow:0 4px 14px rgba(204,31,31,.3)}
.pn-mob-btn{display:none;background:none;border:none;color:var(--navy);flex-direction:column;gap:5px;padding:4px}
.pn-mob-btn span{display:block;width:22px;height:2px;background:var(--navy);border-radius:2px;transition:var(--t)}
/* Animated hamburger → X */
.pn-mob-btn.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.pn-mob-btn.open span:nth-child(2){opacity:0;transform:scaleX(0)}
.pn-mob-btn.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ══════════════════════════════════════════
   NAV
══════════════════════════════════════════ */
#pn-nav{background:var(--navy)}
.pn-nav-inner{display:flex;overflow-x:auto;scrollbar-width:none}
.pn-nav-inner::-webkit-scrollbar{display:none}
.pn-nav-a{font-family:var(--fd);font-size:13px;font-weight:500;color:rgba(255,255,255,.7);padding:12px 15px;white-space:nowrap;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid transparent;transition:var(--t);display:block}
.pn-nav-a:hover,.pn-nav-a.active,.pn-nav-a:focus-visible{color:var(--white);border-bottom-color:var(--red);background:rgba(255,255,255,.05)}

/* ── v1.1: Mobile nav with focus trap ───────────────── */
#pn-mob-nav{
  display:none;position:fixed;inset:0;background:var(--navy);
  z-index:9999;flex-direction:column;padding:24px;overflow-y:auto;
}
#pn-mob-nav.open{display:flex;animation:fadeUp .25s ease}
.pn-mob-close{
  align-self:flex-end;background:none;border:none;color:white;
  font-size:28px;margin-bottom:20px;line-height:1;padding:8px;
}
.pn-mob-a{
  color:rgba(255,255,255,.8);padding:14px 0;
  border-bottom:1px solid rgba(255,255,255,.08);
  font-family:var(--fd);font-size:17px;font-weight:500;
  text-transform:uppercase;letter-spacing:.5px;display:block;
}
.pn-mob-a:focus-visible{outline:2px solid var(--gold);outline-offset:2px}

/* ══════════════════════════════════════════
   TICKER
══════════════════════════════════════════ */
#pn-ticker{background:var(--red);overflow:hidden}
.pn-ticker-inner{display:flex;align-items:center;height:36px}
.pn-ticker-lbl{background:var(--navy);color:var(--white);font-family:var(--fd);font-size:11px;font-weight:700;padding:0 16px;height:100%;display:flex;align-items:center;white-space:nowrap;letter-spacing:1px;text-transform:uppercase;flex-shrink:0}
.pn-ticker-track{overflow:hidden;flex:1;height:100%;display:flex;align-items:center}
.pn-ticker-inner-track{display:flex;white-space:nowrap;animation:ticker 60s linear infinite}
.pn-ticker-inner-track:hover{animation-play-state:paused}
.pn-ticker-item{color:var(--white);font-size:13px;font-weight:600;padding:0 40px;display:inline-block}
.pn-ticker-item::before{content:"●";margin-right:8px;opacity:.6;font-size:8px}

/* ══════════════════════════════════════════
   SECTION TITLE
══════════════════════════════════════════ */
.pn-sec-title{display:flex;align-items:center;justify-content:space-between;padding-bottom:10px;border-bottom:3px solid var(--red);margin-bottom:20px}
.pn-sec-title-text{font-family:var(--fd);font-size:17px;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.5px;display:flex;align-items:center;gap:10px}
.pn-sec-bar{width:4px;height:20px;background:var(--red);border-radius:2px}
.pn-see-more{font-size:12px;color:var(--red);font-weight:600;display:flex;align-items:center;gap:3px;transition:var(--t)}
.pn-see-more:hover{gap:6px}

/* ══════════════════════════════════════════
   CARDS — v1.1: aspect-ratio prevents CLS
══════════════════════════════════════════ */
.pn-card{background:var(--white);border-radius:var(--r);overflow:hidden;box-shadow:var(--sh-sm);transition:var(--t);display:block;text-decoration:none}
.pn-card:hover{box-shadow:var(--sh-md);transform:translateY(-2px)}
.pn-card-img{position:relative;overflow:hidden;background:var(--g-light)}
.pn-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease;display:block}
.pn-card:hover .pn-card-img img{transform:scale(1.04)}
.pn-card-cat{position:absolute;top:10px;left:10px;font-family:var(--fd);font-size:11px;font-weight:600;padding:3px 10px;border-radius:2px;color:var(--white);text-transform:uppercase;letter-spacing:.5px;background:var(--red)}
.pn-card-body{padding:16px}
.pn-card-title{font-family:var(--fs);font-weight:700;color:var(--navy);line-height:1.4;margin-bottom:8px;transition:var(--t)}
.pn-card:hover .pn-card-title,.pn-card:focus-visible .pn-card-title{color:var(--red)}
.pn-card-sum{font-size:14px;color:var(--g-dark);line-height:1.6;margin-bottom:10px}
.pn-card-meta{display:flex;flex-wrap:wrap;gap:8px;font-size:12px;color:var(--g-mid)}

/* Aspect ratios (prevent CLS) */
.pn-card-feat .pn-card-img { aspect-ratio:16/9; height:auto; min-height:220px; max-height:360px; }
.pn-card-md .pn-card-img   { aspect-ratio:16/9; height:auto; }
.pn-card-sm .pn-card-img   { aspect-ratio:4/3;  height:auto; }
.pn-card-feat .pn-card-title{font-size:22px}
.pn-card-md .pn-card-title  {font-size:16px}
.pn-card-sm .pn-card-title  {font-size:14px}
.pn-card-sm .pn-card-sum    {display:none}

/* v1.1: Reading time badge */
.pn-read-time{font-size:11px;color:var(--g-mid);display:flex;align-items:center;gap:3px}

/* Featured grid */
.pn-feat-grid{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;gap:16px;margin-bottom:28px}
.pn-feat-main{grid-row:span 2}
.pn-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.pn-grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}

/* ══════════════════════════════════════════
   LIST CARD
══════════════════════════════════════════ */
.pn-list-wrap{background:var(--white);border-radius:var(--r);padding:0 16px;box-shadow:var(--sh-sm);margin-bottom:28px}
.pn-lcard{display:flex;gap:14px;padding:14px 0;border-bottom:1px solid var(--g-light);text-decoration:none;transition:var(--t)}
.pn-lcard:last-child{border-bottom:none}
.pn-lcard:hover .pn-lcard-title,.pn-lcard:focus-visible .pn-lcard-title{color:var(--red)}
.pn-lcard-img{width:90px;flex-shrink:0;background:var(--g-light);border-radius:var(--r);overflow:hidden;aspect-ratio:4/3}
.pn-lcard-img img{width:100%;height:100%;object-fit:cover}
.pn-lcard-cat{font-family:var(--fd);font-size:10px;font-weight:700;color:var(--red);text-transform:uppercase;letter-spacing:.5px;margin-bottom:3px;display:block}
.pn-lcard-title{font-family:var(--fs);font-size:14px;font-weight:700;color:var(--navy);line-height:1.4;margin-bottom:3px;transition:var(--t);display:block}
.pn-lcard-meta{font-size:11px;color:var(--g-mid)}

/* ══════════════════════════════════════════
   SIDEBAR
══════════════════════════════════════════ */
.pn-widget{background:var(--white);border-radius:var(--r);box-shadow:var(--sh-sm);overflow:hidden;margin-bottom:24px}
.pn-widget-title{background:var(--navy);color:var(--white);font-family:var(--fd);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:1px;padding:11px 16px}
.pn-widget-body{padding:14px 16px}
.pn-trend{display:flex;align-items:flex-start;gap:12px;padding:10px 0;border-bottom:1px solid var(--g-light);text-decoration:none}
.pn-trend:last-child{border-bottom:none}
.pn-trend-n{font-family:var(--fd);font-size:28px;font-weight:700;color:var(--g-light);line-height:1;min-width:32px;transition:var(--t)}
.pn-trend:hover .pn-trend-n{color:var(--red)}
.pn-trend-t{font-size:13px;font-weight:600;color:var(--navy);line-height:1.4;transition:var(--t)}
.pn-trend:hover .pn-trend-t,.pn-trend:focus-visible .pn-trend-t{color:var(--red)}
.pn-trend-c{font-size:11px;color:var(--g-mid);margin-top:2px}
.pn-push-box{background:linear-gradient(135deg,var(--navy) 0%,#1a3a5c 100%);border-radius:var(--r);padding:22px;text-align:center;color:var(--white);margin-bottom:24px}
.pn-push-icon{font-size:34px;margin-bottom:12px;animation:float 3s ease-in-out infinite;display:block}
.pn-push-box h4{font-family:var(--fd);font-size:16px;font-weight:600;margin-bottom:8px}
.pn-push-box p{font-size:13px;opacity:.8;margin-bottom:16px;line-height:1.5}
.pn-push-box-btn{background:var(--red);color:var(--white);padding:10px 22px;border-radius:24px;font-size:13px;font-weight:600;transition:var(--t);width:100%;border:none;cursor:pointer}
.pn-push-box-btn:hover{background:var(--red-d)}
.pn-cat-row{display:flex;align-items:center;padding:9px 0;border-bottom:1px solid var(--g-light);text-decoration:none;transition:var(--t)}
.pn-cat-row:last-child{border-bottom:none}
.pn-cat-row:hover .pn-cat-name{color:var(--red);padding-left:4px}
.pn-cat-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.pn-cat-name{font-size:14px;color:var(--charcoal);flex:1;margin-left:10px;transition:var(--t)}
.pn-cat-cnt{font-size:11px;color:var(--g-mid);background:var(--g-ultra);padding:2px 8px;border-radius:10px;font-weight:600}
.pn-ad{background:linear-gradient(135deg,var(--g-ultra),#e8ecf0);border:1px dashed var(--g-light);border-radius:var(--r);display:flex;align-items:center;justify-content:center;min-height:120px;margin-bottom:24px}
.pn-ad span{font-size:11px;color:var(--g-mid);font-weight:600;text-transform:uppercase;letter-spacing:1px}

/* ══════════════════════════════════════════
   SINGLE POST
══════════════════════════════════════════ */
.pn-hero{position:relative;overflow:hidden}
.pn-hero img{width:100%;aspect-ratio:21/9;object-fit:cover;display:block}
.pn-hero-ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.88) 0%,rgba(0,0,0,.2) 55%,transparent 100%)}
.pn-hero-body{position:absolute;bottom:0;left:0;right:0;padding:40px}
.pn-hero-cat{display:inline-block;background:var(--red);color:var(--white);font-family:var(--fd);font-size:12px;font-weight:600;padding:4px 12px;border-radius:2px;text-transform:uppercase;letter-spacing:.5px;margin-bottom:14px;text-decoration:none}
.pn-hero-title{font-family:var(--fs);font-size:34px;font-weight:900;color:var(--white);line-height:1.25;margin-bottom:14px;text-shadow:0 2px 8px rgba(0,0,0,.4)}
.pn-hero-meta{display:flex;flex-wrap:wrap;gap:14px;color:rgba(255,255,255,.8);font-size:13px;align-items:center}

.pn-single-wrap{padding:32px 0}
.pn-single-layout{display:grid;grid-template-columns:1fr 320px;gap:32px}
.pn-article{background:var(--white);border-radius:var(--r);padding:36px;box-shadow:var(--sh-sm)}
.pn-lead{font-family:var(--fs);font-size:18px;color:var(--charcoal);line-height:1.7;border-left:4px solid var(--red);padding-left:20px;margin-bottom:28px}
.pn-content h2{font-family:var(--fs);font-size:22px;font-weight:700;color:var(--navy);margin:28px 0 12px}
.pn-content h3{font-family:var(--fs);font-size:18px;font-weight:700;color:var(--navy);margin:22px 0 10px}
.pn-content p{font-size:16px;line-height:1.85;color:var(--charcoal);margin-bottom:18px}
.pn-content ul,.pn-content ol{padding-left:24px;margin-bottom:18px}
.pn-content li{font-size:16px;line-height:1.8;color:var(--charcoal);margin-bottom:6px}
.pn-content ul li{list-style:disc}.pn-content ol li{list-style:decimal}
.pn-content blockquote{border-left:4px solid var(--red);padding:16px 20px;background:var(--g-ultra);margin:24px 0;border-radius:0 var(--r) var(--r) 0}
.pn-content blockquote p{font-size:17px;font-style:italic;margin-bottom:0;color:var(--charcoal)}
.pn-content a{color:var(--red);text-decoration:underline}
.pn-content img{border-radius:var(--r);margin:20px 0;width:100%;aspect-ratio:16/9;object-fit:cover}
.pn-content figure{margin:20px 0}
.pn-content figcaption{font-size:12px;color:var(--g-mid);text-align:center;margin-top:6px}

/* v1.1: Updated post date display */
.pn-updated-note{font-size:12px;color:var(--g-mid);margin-bottom:16px;font-style:italic}

.pn-share{display:flex;align-items:center;gap:10px;padding:20px 0;border-top:1px solid var(--g-light);border-bottom:1px solid var(--g-light);margin:28px 0;flex-wrap:wrap}
.pn-share-lbl{font-weight:700;font-size:13px;color:var(--charcoal)}
.pn-share-btn{display:flex;align-items:center;gap:7px;padding:8px 16px;border-radius:4px;font-size:13px;font-weight:600;color:var(--white);transition:var(--t);cursor:pointer;border:none}
.pn-share-btn:hover{opacity:.87;transform:translateY(-1px)}
.pn-s-wa{background:#25d366}.pn-s-fb{background:#1877f2}.pn-s-tw{background:#1da1f2}.pn-s-cp{background:var(--g-dark)}
.pn-tags{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}
.pn-tag{background:var(--g-ultra);border:1px solid var(--g-light);color:var(--charcoal);font-size:12px;padding:4px 12px;border-radius:20px;transition:var(--t);text-decoration:none}
.pn-tag:hover{border-color:var(--red);color:var(--red)}
.pn-author{display:flex;gap:18px;padding:22px;background:var(--g-ultra);border-radius:var(--r);border:1px solid var(--g-light);margin:28px 0;align-items:flex-start}
.pn-author-av{width:70px;height:70px;border-radius:50%;object-fit:cover;flex-shrink:0;border:3px solid var(--white);box-shadow:var(--sh-sm)}
.pn-author-av-ph{width:70px;height:70px;border-radius:50%;flex-shrink:0;background:var(--red);display:flex;align-items:center;justify-content:center;color:var(--white);font-family:var(--fd);font-size:22px;font-weight:700;border:3px solid var(--white);box-shadow:var(--sh-sm)}
.pn-author-name{font-family:var(--fd);font-size:16px;font-weight:600;color:var(--navy);margin-bottom:3px}
.pn-author-role{font-size:11px;color:var(--g-mid);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}
.pn-author-bio{font-size:14px;color:var(--g-dark);line-height:1.6}
.pn-related{margin-top:32px}
.pn-related-title{font-family:var(--fd);font-size:16px;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.5px;padding-bottom:10px;border-bottom:3px solid var(--red);margin-bottom:18px}
.pn-breadcrumb{font-size:12px;color:var(--g-mid);margin-bottom:20px}
.pn-breadcrumb a{color:var(--red)}.pn-breadcrumb a:hover{text-decoration:underline}

/* ══════════════════════════════════════════
   ARCHIVE
══════════════════════════════════════════ */
.pn-arch-hero{background:var(--navy);padding:40px 0;margin-bottom:28px}
.pn-arch-hero-sub{font-size:11px;color:rgba(255,255,255,.5);text-transform:uppercase;letter-spacing:2px;margin-bottom:8px;font-family:var(--fd)}
.pn-arch-hero h1{font-family:var(--fd);font-size:34px;font-weight:700;color:var(--white)}
.pn-arch-bar{width:60px;height:4px;background:var(--red);border-radius:2px;margin-top:12px}
.pn-arch-count{font-size:13px;color:rgba(255,255,255,.5);margin-top:8px}
.pn-pag{display:flex;align-items:center;justify-content:center;gap:6px;padding:32px 0}
.pn-pg{min-width:38px;height:38px;border-radius:var(--r);border:1.5px solid var(--g-light);background:var(--white);font-size:14px;font-weight:600;color:var(--charcoal);display:flex;align-items:center;justify-content:center;transition:var(--t);text-decoration:none;padding:0 12px}
.pn-pg:hover,.pn-pg.cur{border-color:var(--red);background:var(--red);color:var(--white)}
.pn-pg:focus-visible{outline:3px solid var(--red);outline-offset:2px}
.pn-pg.dots{pointer-events:none;opacity:.5}

/* ══════════════════════════════════════════
   SEARCH / 404
══════════════════════════════════════════ */
.pn-search-hero{background:linear-gradient(135deg,var(--navy),var(--navy2));padding:48px 0;text-align:center;margin-bottom:32px}
.pn-search-hero h1{font-family:var(--fd);font-size:26px;font-weight:700;color:var(--white);margin-bottom:20px}
.pn-search-big{display:flex;max-width:560px;margin:0 auto;gap:8px}
.pn-search-big input{flex:1;padding:13px 18px;border:none;border-radius:var(--r);font-size:15px;outline:none}
.pn-search-big input:focus{box-shadow:0 0 0 3px rgba(204,31,31,.3)}
.pn-search-big button{background:var(--red);color:var(--white);padding:13px 22px;border-radius:var(--r);font-size:14px;font-weight:700;font-family:var(--fd);transition:var(--t);border:none;cursor:pointer}
.pn-search-big button:hover{background:var(--red-d)}
.pn-404{text-align:center;padding:80px 20px}
.pn-404-n{font-family:var(--fd);font-size:140px;font-weight:700;color:var(--red);line-height:1;opacity:.12}
.pn-404 h1{font-family:var(--fd);font-size:30px;font-weight:700;color:var(--navy);margin-bottom:10px}
.pn-404 p{font-size:16px;color:var(--g-mid);margin-bottom:28px}
.pn-btn-home{display:inline-flex;align-items:center;gap:7px;background:var(--red);color:var(--white);padding:12px 28px;border-radius:var(--r);font-size:15px;font-weight:700;font-family:var(--fd);transition:var(--t)}
.pn-btn-home:hover{background:var(--red-d);transform:translateY(-2px);color:var(--white)}

/* ══════════════════════════════════════════
   FOOTER
══════════════════════════════════════════ */
#pn-footer{background:var(--navy);color:rgba(255,255,255,.65);margin-top:40px}
.pn-ft-top{padding:48px 0 32px;display:grid;grid-template-columns:1.8fr 1fr 1fr 1fr;gap:44px}
.pn-ft-logo{font-family:var(--fd);font-size:28px;font-weight:700;color:var(--white);letter-spacing:-0.5px;margin-bottom:12px}
.pn-ft-logo span{color:var(--red)}
.pn-ft-desc{font-size:13px;line-height:1.7;opacity:.7;margin-bottom:18px}
.pn-ft-socials{display:flex;gap:10px}
.pn-ft-sc{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--white);font-size:14px;transition:var(--t)}
.pn-ft-sc:hover{transform:translateY(-3px);box-shadow:0 4px 10px rgba(0,0,0,.3);color:var(--white)}
.pn-ft-sc:focus-visible{outline:2px solid var(--gold)}
.sc-fb{background:#1877f2}.sc-tw{background:#1da1f2}.sc-ig{background:#e1306c}.sc-yt{background:#ff0000}.sc-wa{background:#25d366}
.pn-ft-col-title{font-family:var(--fd);font-size:13px;font-weight:600;color:var(--white);text-transform:uppercase;letter-spacing:1px;margin-bottom:14px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.1)}
.pn-ft-a{display:block;font-size:13px;color:rgba(255,255,255,.55);padding:4px 0;transition:var(--t)}
.pn-ft-a:hover{color:var(--red);padding-left:4px}
.pn-ft-bottom{border-top:1px solid rgba(255,255,255,.08);padding:16px 0;display:flex;justify-content:space-between;align-items:center;font-size:12px;flex-wrap:wrap;gap:10px}
.pn-ft-links{display:flex;gap:18px}
.pn-ft-links a{color:rgba(255,255,255,.45);transition:var(--t)}.pn-ft-links a:hover{color:var(--red)}

/* ══════════════════════════════════════════
   COMMENTS
══════════════════════════════════════════ */
.pn-comments-wrap{background:var(--white);border-radius:var(--r);padding:28px;box-shadow:var(--sh-sm);margin-top:24px}
.pn-comments-wrap .comments-title{font-family:var(--fd);font-size:18px;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.5px;margin-bottom:22px}
.pn-comments-wrap .comment{padding:16px 0;border-bottom:1px solid var(--g-light)}
.pn-comments-wrap .comment:last-child{border-bottom:none}
.pn-comments-wrap .comment-author img{border-radius:50%}
.pn-comments-wrap .comment-meta{font-size:12px;color:var(--g-mid);margin-bottom:8px}
.pn-comments-wrap .comment-body p{font-size:14px;color:var(--charcoal);line-height:1.6}
.pn-comments-wrap .comment-form label{display:block;font-size:13px;font-weight:600;margin-bottom:5px;color:var(--charcoal)}
.pn-comments-wrap .comment-form input,.pn-comments-wrap .comment-form textarea{width:100%;border:1.5px solid var(--g-light);border-radius:6px;padding:10px 14px;font-size:14px;margin-bottom:14px;outline:none;transition:var(--t)}
.pn-comments-wrap .comment-form input:focus,.pn-comments-wrap .comment-form textarea:focus{border-color:var(--red);box-shadow:0 0 0 3px rgba(204,31,31,.08)}
.pn-comments-wrap .comment-form textarea{min-height:110px;resize:vertical}
.pn-comments-wrap #submit{background:var(--red);color:var(--white);border:none;padding:11px 26px;border-radius:var(--r);font-size:14px;font-weight:700;font-family:var(--fd);letter-spacing:.5px;transition:var(--t);cursor:pointer}
.pn-comments-wrap #submit:hover{background:var(--red-d)}

/* ══════════════════════════════════════════
   EDITOR LOGIN PAGE
══════════════════════════════════════════ */
.pn-login-page{min-height:100vh;background:linear-gradient(135deg,var(--navy) 0%,#1a3a5c 55%,var(--navy) 100%);display:flex;align-items:center;justify-content:center;padding:20px;position:relative;overflow:hidden}
.pn-login-bg{position:absolute;inset:0;opacity:.04;background-image:radial-gradient(circle,white 1px,transparent 1px);background-size:28px 28px;pointer-events:none}
.pn-login-deco{position:absolute;border-radius:50%;pointer-events:none}
.pn-login-card{background:var(--white);border-radius:12px;width:100%;max-width:420px;box-shadow:0 24px 64px rgba(0,0,0,.45);overflow:hidden;position:relative;z-index:1;animation:fadeUp .5s ease}
.pn-login-hd{background:var(--navy);padding:32px;text-align:center;position:relative}
.pn-login-hd::after{content:'';position:absolute;bottom:-12px;left:50%;transform:translateX(-50%);border-left:12px solid transparent;border-right:12px solid transparent;border-top:12px solid var(--navy)}
.pn-login-logo{font-family:var(--fd);font-size:36px;font-weight:700;color:var(--white);letter-spacing:-1px}
.pn-login-logo span{color:var(--red)}
.pn-login-logo-sub{font-size:9px;color:rgba(255,255,255,.4);letter-spacing:3px;text-transform:uppercase;margin-top:4px}
.pn-login-badge{display:inline-flex;align-items:center;gap:5px;background:rgba(204,31,31,.2);color:#ff9999;font-size:11px;font-weight:600;padding:4px 14px;border-radius:20px;margin-top:10px;border:1px solid rgba(204,31,31,.3)}
.pn-login-body{padding:42px 32px 30px}
.pn-login-title{font-family:var(--fd);font-size:22px;font-weight:600;color:var(--navy);margin-bottom:4px}
.pn-login-sub{font-size:14px;color:var(--g-mid);margin-bottom:26px}
.pn-fgroup{margin-bottom:18px}
.pn-flabel{display:block;font-size:13px;font-weight:600;color:var(--charcoal);margin-bottom:6px}
.pn-fwrap{position:relative}
.pn-ficon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--g-mid);pointer-events:none;line-height:1}
.pn-finput{width:100%;padding:12px 14px 12px 42px;border:1.5px solid var(--g-light);border-radius:8px;font-size:14px;background:var(--g-ultra);outline:none;transition:var(--t);color:var(--charcoal)}
.pn-finput:focus{border-color:var(--red);background:var(--white);box-shadow:0 0 0 3px rgba(204,31,31,.08)}
.pn-finput.err{border-color:#e53e3e;box-shadow:0 0 0 3px rgba(229,62,62,.08)}
.pn-pass-eye{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--g-mid);transition:var(--t);line-height:1;cursor:pointer;padding:4px}
.pn-pass-eye:hover{color:var(--navy)}
.pn-ferr{font-size:12px;color:#c53030;margin-top:4px}
.pn-remember{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--g-dark);margin-bottom:22px;cursor:pointer}
.pn-remember input{accent-color:var(--red);width:15px;height:15px}
.pn-alert{display:flex;align-items:center;gap:8px;border-radius:8px;padding:12px 16px;font-size:13px;margin-bottom:18px;animation:fadeUp .2s ease}
.pn-alert-err{background:#fff5f5;border:1px solid #feb2b2;color:#c53030}
.pn-alert-ok{background:#f0fff4;border:1px solid #9ae6b4;color:#276749}
.pn-login-btn{width:100%;background:var(--red);color:var(--white);border:none;padding:14px;border-radius:8px;font-size:15px;font-weight:700;font-family:var(--fd);letter-spacing:.5px;transition:var(--t);display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer}
.pn-login-btn:hover{background:var(--red-d);transform:translateY(-1px);box-shadow:0 8px 24px rgba(204,31,31,.3)}
.pn-login-btn:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}
.pn-login-back{display:block;text-align:center;margin-top:16px;font-size:13px;color:var(--g-mid);transition:var(--t);text-decoration:none}
.pn-login-back:hover{color:var(--navy)}
.pn-login-footer-note{text-align:center;margin-top:12px;font-size:12px;color:var(--g-mid)}
.pn-login-footer-note a{color:var(--red);font-weight:600}

/* v1.1: Lockout banner */
.pn-lockout-bar{background:#7f1d1d;color:#fecaca;padding:10px 16px;border-radius:8px;font-size:13px;margin-bottom:16px;display:flex;align-items:center;gap:8px}

/* ══════════════════════════════════════════
   FRONT-END EDITOR
══════════════════════════════════════════ */
.pn-editor-page{background:#f0f2f5;min-height:100vh}
.pn-ed-top{background:var(--white);border-bottom:1px solid var(--g-light);padding:0 24px;height:60px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:200;box-shadow:var(--sh-sm)}
.pn-ed-top-logo{font-family:var(--fd);font-size:20px;font-weight:700;color:var(--navy)}
.pn-ed-top-logo span{color:var(--red)}
.pn-ed-top-right{display:flex;align-items:center;gap:12px}
.pn-ed-view-btn{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--g-dark);padding:7px 14px;border-radius:6px;border:1.5px solid var(--g-light);transition:var(--t);text-decoration:none;background:var(--white)}
.pn-ed-view-btn:hover{border-color:var(--red);color:var(--red)}
.pn-ed-logout{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--white);background:var(--g-dark);padding:7px 14px;border-radius:6px;border:none;transition:var(--t);cursor:pointer}
.pn-ed-logout:hover{background:var(--red);color:var(--white)}
.pn-ed-av{width:34px;height:34px;border-radius:50%;background:var(--red);display:flex;align-items:center;justify-content:center;color:var(--white);font-family:var(--fd);font-weight:700;font-size:13px;flex-shrink:0}
.pn-ed-body{max-width:1140px;margin:0 auto;padding:28px 20px;display:grid;grid-template-columns:1fr 300px;gap:22px;align-items:start}
.pn-ed-main{display:flex;flex-direction:column;gap:16px}
.pn-ed-box{background:var(--white);border-radius:10px;box-shadow:var(--sh-sm);padding:22px}
.pn-ed-box-title{font-family:var(--fd);font-size:13px;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.5px;margin-bottom:14px;display:flex;align-items:center;gap:7px}
.pn-ed-input{width:100%;border:1.5px solid var(--g-light);border-radius:8px;padding:12px 14px;font-family:var(--fb);font-size:14px;color:var(--charcoal);outline:none;transition:var(--t);background:var(--white)}
.pn-ed-input:focus{border-color:var(--red);box-shadow:0 0 0 3px rgba(204,31,31,.06)}
.pn-ed-title{font-family:var(--fs);font-size:20px;font-weight:700;min-height:66px;resize:none;line-height:1.4}
.pn-ed-textarea{min-height:280px;resize:vertical;line-height:1.75}
.pn-ed-toolbar{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid var(--g-light)}
.pn-tb-btn{background:var(--white);border:1.5px solid var(--g-light);border-radius:6px;padding:5px 10px;font-size:12px;font-weight:700;cursor:pointer;transition:var(--t);color:var(--charcoal);min-width:32px;text-align:center}
.pn-tb-btn:hover{border-color:var(--red);color:var(--red);background:var(--red-l)}
.pn-ed-side{display:flex;flex-direction:column;gap:16px}
.pn-ed-side-box{background:var(--white);border-radius:10px;box-shadow:var(--sh-sm);padding:18px}
.pn-ed-side-title{font-family:var(--fd);font-size:12px;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;border-bottom:1px solid var(--g-light);padding-bottom:8px}
.pn-ed-select{width:100%;border:1.5px solid var(--g-light);border-radius:8px;padding:10px 12px;font-family:var(--fb);font-size:14px;color:var(--charcoal);outline:none;transition:var(--t);background:var(--white);cursor:pointer}
.pn-ed-select:focus{border-color:var(--red)}
.pn-img-drop{border:2px dashed var(--g-light);border-radius:8px;padding:22px;text-align:center;cursor:pointer;transition:var(--t)}
.pn-img-drop:hover{border-color:var(--red);background:var(--red-l)}
.pn-img-txt{font-size:13px;color:var(--g-mid);margin-top:8px}
.pn-img-txt strong{color:var(--red)}
.pn-img-prev{border-radius:8px;overflow:hidden;margin-bottom:10px;aspect-ratio:16/9;background:var(--g-light)}
.pn-img-prev img{width:100%;height:100%;object-fit:cover;display:block}
.pn-img-chg-btn{width:100%;background:var(--white);border:1.5px solid var(--g-light);border-radius:8px;padding:8px;font-size:12px;font-weight:600;color:var(--g-dark);cursor:pointer;font-family:var(--fb);transition:var(--t)}
.pn-img-chg-btn:hover{border-color:var(--red);color:var(--red)}
.pn-seo-score-bar{height:6px;background:var(--g-light);border-radius:3px;overflow:hidden;margin:6px 0 14px}
.pn-seo-fill{height:100%;border-radius:3px;transition:width .5s ease}
.pn-tag-area{display:flex;gap:6px;flex-wrap:wrap;border:1.5px solid var(--g-light);border-radius:8px;padding:8px;min-height:46px}
.pn-tag-area:focus-within{border-color:var(--red)}
.pn-tag-pill{display:flex;align-items:center;gap:4px;background:var(--g-ultra);border:1px solid var(--g-light);border-radius:20px;padding:3px 10px;font-size:12px;color:var(--charcoal)}
.pn-tag-rm{cursor:pointer;color:var(--g-mid);font-size:15px;line-height:1;background:none;border:none}
.pn-tag-rm:hover{color:var(--red)}
.pn-tag-input-field{border:none;background:none;outline:none;font-size:13px;font-family:var(--fb);color:var(--charcoal);min-width:70px}
.pn-pub-btn{width:100%;background:var(--red);color:var(--white);border:none;padding:14px;border-radius:8px;font-size:15px;font-weight:700;font-family:var(--fd);letter-spacing:.5px;transition:var(--t);display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer}
.pn-pub-btn:hover:not(:disabled){background:var(--red-d);transform:translateY(-1px);box-shadow:0 6px 20px rgba(204,31,31,.3)}
.pn-pub-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}
.pn-draft-btn{width:100%;background:var(--white);border:1.5px solid var(--g-light);color:var(--charcoal);padding:10px;border-radius:8px;font-size:14px;font-weight:600;font-family:var(--fb);transition:var(--t);margin-top:8px;cursor:pointer}
.pn-draft-btn:hover{border-color:var(--navy);color:var(--navy)}
.pn-hint{font-size:11px;color:var(--g-mid);margin-top:5px}
.pn-ed-tabs{display:flex;gap:1px;background:var(--g-light);border-radius:8px;padding:3px;margin-bottom:16px}
.pn-ed-tab{flex:1;text-align:center;padding:8px;border-radius:6px;font-size:13px;font-weight:600;color:var(--g-mid);cursor:pointer;transition:var(--t);border:none;background:none}
.pn-ed-tab.on{background:var(--white);color:var(--navy);box-shadow:var(--sh-sm)}

/* ══════════════════════════════════════════
   SPINNER
══════════════════════════════════════════ */
.pn-spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.4);border-top-color:white;border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}

/* ══════════════════════════════════════════
   TOAST — v1.1: dismissible
══════════════════════════════════════════ */
#pn-toast{position:fixed;bottom:28px;right:28px;z-index:9999;background:var(--navy);color:var(--white);padding:14px 20px;border-radius:10px;font-size:14px;box-shadow:var(--sh-lg);display:flex;align-items:center;gap:10px;animation:fadeUp .3s ease;max-width:360px;transition:opacity .4s ease}
#pn-toast.t-ok{border-left:4px solid var(--green)}
#pn-toast.t-err{border-left:4px solid var(--red)}
#pn-toast.t-info{border-left:4px solid #3182ce}
#pn-toast.hidden{display:none}
.pn-toast-close{background:none;border:none;color:rgba(255,255,255,.5);cursor:pointer;font-size:18px;line-height:1;padding:0 0 0 8px;margin-left:auto}
.pn-toast-close:hover{color:white}

/* ══════════════════════════════════════════
   v1.1: PRINT STYLES
══════════════════════════════════════════ */
@media print {
  #pn-topbar,#pn-nav,#pn-ticker,#pn-footer,
  .pn-aside,.pn-share,.pn-push-box,.pn-related,
  #pn-read-progress,#pn-back-top,#pn-toast,
  .pn-comments-wrap .comment-form { display:none !important; }
  body { background:white; font-size:12pt; }
  .pn-hero img { aspect-ratio:auto; max-height:300px; }
  .pn-article { box-shadow:none; padding:0; }
  .pn-hero-body { position:static; color:black; padding:16px 0; }
  .pn-hero-title { color:black; font-size:24pt; text-shadow:none; }
  .pn-content a::after { content:" (" attr(href) ")"; font-size:10pt; color:#666; }
  .pn-breadcrumb,.pn-author { border:1px solid #ddd; }
}

/* ══════════════════════════════════════════
   RESPONSIVE
══════════════════════════════════════════ */
@media(max-width:1024px){.pn-aside{width:280px}}
@media(max-width:900px){
  .pn-feat-grid{grid-template-columns:1fr}.pn-feat-main{grid-row:span 1}
  .pn-grid3{grid-template-columns:repeat(2,1fr)}
  .pn-single-layout{grid-template-columns:1fr}
  .pn-ft-top{grid-template-columns:1fr 1fr;gap:28px}
  .pn-ed-body{grid-template-columns:1fr}
  .pn-hero-title{font-size:24px}.pn-hero-body{padding:20px}
  .pn-row{flex-direction:column}.pn-aside{width:100%}
}
@media(max-width:640px){
  .pn-grid3{grid-template-columns:1fr}.pn-grid2{grid-template-columns:1fr}
  .pn-ft-top{grid-template-columns:1fr}
  .pn-search{display:none}.pn-push-btn{display:none}
  .pn-mob-btn{display:flex}
  .pn-hero img{aspect-ratio:4/3}
  .pn-hero-title{font-size:19px}
  .pn-ft-bottom{flex-direction:column;text-align:center}
  .pn-login-body{padding:36px 22px 24px}
  .pn-ed-body{padding:16px}
}
@media(min-width:900px){.pn-aside-sticky{position:sticky;top:90px}}

/* ══════════════════════════════════════════
   v1.1: Scroll-reveal utility (JS adds class)
══════════════════════════════════════════ */
.pn-reveal{opacity:0;transform:translateY(16px);transition:opacity .5s ease,transform .5s ease}
.pn-reveal.revealed{opacity:1;transform:translateY(0)}
@media(prefers-reduced-motion:reduce){
  .pn-reveal{opacity:1;transform:none;transition:none}
  *{animation-duration:.01ms !important;transition-duration:.01ms !important}
}

/* ── AD SLOTS ────────────────────────────────────── */
.pn-ad-slot { text-align:center; overflow:hidden; }
.pn-ad-header   { margin: 8px 0; }
.pn-ad-sidebar_top { margin-bottom: 20px; }
.pn-ad-before_content,
.pn-ad-after_content  { margin: 20px 0; }
.pn-ad-between_posts  { margin: 28px 0; }
.pn-ad-footer { margin-bottom: 24px; }

/* Mobile sticky banner */
.pn-ad-mobile_sticky {
    position: fixed; bottom: 0; left: 0; right: 0;
    z-index: 800; background: #fff;
    box-shadow: 0 -2px 10px rgba(0,0,0,.12);
    display: flex; align-items: center; justify-content: center;
    padding: 4px 0; min-height: 58px;
}
.pn-ad-mobile_sticky .pn-ad-close {
    position: absolute; top: 4px; right: 8px;
    background: none; border: none; font-size: 16px;
    color: #718096; cursor: pointer; line-height: 1;
}
@media(min-width:769px){ .pn-ad-mobile_sticky{ display:none; } }

/* AdSense responsive */
.adsbygoogle { display: block; }
@media(max-width:768px){
    .pn-ad-header ins,
    .pn-ad-before_content ins,
    .pn-ad-after_content ins,
    .pn-ad-between_posts ins,
    .pn-ad-footer ins { max-width: 100%; }
}

/* Placeholder (debug only) */
.pn-ad-placeholder { margin: 12px 0; }

/* ════════════════════════════════════════════════
   v1.4 — New Features CSS
════════════════════════════════════════════════ */

/* Dark mode toggle button */
.pn-dark-toggle-btn{background:none;border:1.5px solid rgba(255,255,255,.2);color:rgba(255,255,255,.7);width:30px;height:30px;border-radius:50%;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;transition:var(--t);padding:0}
.pn-dark-toggle-btn:hover{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.4)}

/* Article tools (A- A A+, print, copy, dark) */
.pn-article-tools{display:flex;align-items:center;gap:6px;padding:10px 0;border-top:1px solid var(--g-light);border-bottom:1px solid var(--g-light);margin-bottom:20px;flex-wrap:wrap}
.pn-tool-label{font-size:11px;color:var(--g-mid);font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-right:2px}
.pn-tool-btn{background:var(--white);border:1.5px solid var(--g-light);border-radius:6px;padding:4px 10px;font-size:12px;font-weight:700;cursor:pointer;transition:var(--t);color:var(--charcoal);font-family:var(--fb);min-width:32px;text-align:center}
.pn-tool-btn:hover{border-color:var(--red);color:var(--red);background:var(--red-l)}
.pn-tool-sep{width:1px;height:20px;background:var(--g-light);margin:0 4px}

/* Content font size states */
.pn-content.pn-fs-sm p,.pn-content.pn-fs-sm li{font-size:14px!important}
.pn-content.pn-fs-lg p,.pn-content.pn-fs-lg li{font-size:18px!important}
.pn-content.pn-fs-xl p,.pn-content.pn-fs-xl li{font-size:20px!important}

/* Prev/Next Navigation */
.pn-prevnext{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:28px 0;border-top:1px solid var(--g-light);padding-top:24px}
.pn-pn-item{background:var(--white);border:1.5px solid var(--g-light);border-radius:var(--r);padding:14px 16px;text-decoration:none;transition:var(--t);display:flex;flex-direction:column;gap:4px}
.pn-pn-item:hover{border-color:var(--red);transform:translateY(-2px);box-shadow:var(--sh-md)}
.pn-pn-prev{text-align:left}
.pn-pn-next{text-align:right}
.pn-pn-dir{font-size:11px;font-weight:700;color:var(--red);text-transform:uppercase;letter-spacing:.5px}
.pn-pn-ttl{font-family:var(--fs);font-size:13px;font-weight:700;color:var(--navy);line-height:1.4}
@media(max-width:640px){.pn-prevnext{grid-template-columns:1fr}.pn-pn-next{text-align:left}}

/* Autocomplete search */
.pn-search{position:relative}
.pn-search-suggest{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--white);border:1.5px solid var(--g-light);border-radius:10px;box-shadow:var(--sh-lg);z-index:9000;overflow:hidden;max-height:400px;overflow-y:auto}
.pn-suggest-item{display:flex;gap:10px;padding:10px 14px;text-decoration:none;transition:var(--t);border-bottom:1px solid var(--g-light)}
.pn-suggest-item:last-child{border-bottom:none}
.pn-suggest-item:hover,.pn-suggest-item:focus{background:var(--g-ultra)}
.pn-suggest-thumb{width:48px;height:36px;border-radius:4px;object-fit:cover;flex-shrink:0;background:var(--g-light)}
.pn-suggest-thumb-ph{width:48px;height:36px;border-radius:4px;background:var(--g-light);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:16px}
.pn-suggest-title{font-size:13px;font-weight:600;color:var(--navy);line-height:1.4}
.pn-suggest-cat{font-size:10px;color:var(--red);font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-top:2px}
.pn-suggest-no{padding:16px;text-align:center;font-size:13px;color:var(--g-mid)}

/* H2 anchor hover */
h2:hover .pn-h2-anchor{opacity:.4!important}
.pn-h2-anchor:hover{opacity:1!important;color:var(--red)!important}

/* LGPD cookie bar (extra styles) */
#pn-cookie-bar{animation:fadeUp .4s ease}

/* Dark mode */
body.pn-dark{background:#171923!important}
body.pn-dark #pn-header{background:#1a202c!important;border-bottom-color:#e53e3e!important}
body.pn-dark .pn-card,body.pn-dark .pn-article,body.pn-dark .pn-widget,body.pn-dark .pn-list-wrap,body.pn-dark .pn-lcard{background:#2d3748!important}
body.pn-dark .pn-card-title,body.pn-dark .pn-lcard-title,body.pn-dark h1,body.pn-dark h2,body.pn-dark h3{color:#e2e8f0!important}
body.pn-dark .pn-content p,body.pn-dark .pn-content li{color:#cbd5e0!important}
body.pn-dark .pn-search input{background:#2d3748;border-color:#4a5568;color:#e2e8f0}
body.pn-dark body,body.pn-dark{color:#e2e8f0!important}
body.pn-dark .pn-article{color:#e2e8f0}
body.pn-dark .pn-lead{color:#a0aec0!important;border-left-color:#fc8181}
body.pn-dark .pn-tool-btn{background:#2d3748;border-color:#4a5568;color:#e2e8f0}
body.pn-dark .pn-pn-item{background:#2d3748;border-color:#4a5568}
body.pn-dark .pn-pn-ttl{color:#e2e8f0}
body.pn-dark .pn-article-tools{border-color:#4a5568}
body.pn-dark .pn-logo-name{color:#fc8181}
body.pn-dark .pn-logo-name span{color:#e2e8f0}
body.pn-dark #pn-breaking{background:#742a2a}

/* Live Blog */
.pn-live-blog{padding:4px 0}

/* Responsive H2 anchors */
@media(max-width:640px){.pn-h2-anchor{opacity:.3!important}}
