/* Standard Political Gadgets header + footer WITHOUT Bootstrap (for self-contained app pages such as Interests/shares).
   Same markup as pg_header.render_header()/render_footer(); everything is scoped to .pg-header / .pg-footer / .pg-skip so
   the host page's global header/button/h1 rules cannot leak in. Theme with CSS variables on .pg-header,.pg-footer:
   --pgh-bg --pgh-fg --pgh-line --pgh-muted --pgh-hover */
.pg-header,.pg-footer{--pgh-bg:#fff;--pgh-fg:#212529;--pgh-line:#dee2e6;--pgh-muted:#6c757d;--pgh-hover:#e9ecef;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-size:16px;line-height:1.5;color:var(--pgh-fg)}
.pg-skip{position:absolute;left:-9999px;top:0;z-index:20000;background:#fff;color:#000;padding:.5rem 1rem;border:2px solid #0d6efd}
.pg-skip:focus{left:8px;top:8px}
header.pg-header{padding:0;border:0;background:var(--pgh-bg);border-bottom:1px solid var(--pgh-line);position:relative;z-index:1000}
.pg-header *,.pg-header *::before,.pg-header *::after,.pg-footer *{box-sizing:border-box}
.pg-header .navbar{display:flex;flex-wrap:wrap;align-items:center;padding:.35rem 0;background:var(--pgh-bg)}
.pg-header .container-fluid{display:flex;flex-wrap:wrap;align-items:center;width:100%;padding:0 .75rem;gap:.25rem}
.pg-header .navbar-brand{display:inline-flex;margin-right:.75rem;padding:0}
.pg-header .navbar-brand img{display:block;height:40px;width:auto}
.pg-header .pg-crumbs{margin:0 .75rem 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;align-items:center;font-size:1rem;font-weight:500}
.pg-header .pg-crumbs li+li::before{content:"\203A";padding:0 .45rem;color:var(--pgh-muted)}
.pg-header .pg-crumbs a{color:inherit;text-decoration:none}
.pg-header .pg-crumbs a:hover{text-decoration:underline}
.pg-header .pg-crumbs li:not([aria-current]){color:var(--pgh-muted);font-weight:400}
.pg-header .navbar-toggler{display:none;margin-left:auto;padding:.25rem .5rem;background:none;border:1px solid var(--pgh-line);border-radius:.375rem;cursor:pointer}
.pg-header .navbar-toggler-icon{display:block;width:1.4em;height:1.4em;background:linear-gradient(var(--pgh-fg) 0 0) 0 20%/100% 2px no-repeat,linear-gradient(var(--pgh-fg) 0 0) 0 50%/100% 2px no-repeat,linear-gradient(var(--pgh-fg) 0 0) 0 80%/100% 2px no-repeat}
.pg-header .navbar-collapse{display:flex;flex:1 1 auto;align-items:center;flex-wrap:wrap}
.pg-header .pg-extras,.pg-header .pg-tabs{display:flex;gap:.5rem;align-items:center;margin:.25rem .5rem}
.pg-header .pg-tabs{gap:0}
.pg-header .pg-actions{display:flex;gap:.5rem;align-items:center;margin-left:auto}
.pg-header .btn{display:inline-block;margin:0;padding:.25rem .5rem;font:inherit;font-size:.875rem;line-height:1.5;color:var(--pgh-muted);background:transparent;border:1px solid var(--pgh-line);border-radius:.375rem;text-decoration:none;cursor:pointer;text-align:center}
.pg-header .btn:hover{color:var(--pgh-fg);background:var(--pgh-hover);border-color:var(--pgh-muted)}
.pg-header .btn.active{color:var(--pgh-bg);background:var(--pgh-muted);border-color:var(--pgh-muted)}
.pg-header .pg-tabs .btn{border-radius:0;margin-left:-1px}
.pg-header .pg-tabs .btn:first-child{border-radius:.375rem 0 0 .375rem;margin-left:0}
.pg-header .pg-tabs .btn:last-child{border-radius:0 .375rem .375rem 0}
.pg-header .pg-actions .btn{font-size:1.15rem;line-height:1;padding:.4rem .6rem}
.pg-header .dropdown{position:relative}
.pg-header .dropdown-toggle::after{content:"";display:inline-block;margin-left:.4em;vertical-align:.2em;border-top:.3em solid;border-right:.3em solid transparent;border-left:.3em solid transparent}
.pg-header .dropdown-menu{display:none;position:absolute;top:100%;right:0;z-index:2000;min-width:15rem;margin:.125rem 0 0;padding:.5rem 0;list-style:none;background:var(--pgh-bg);border:1px solid var(--pgh-line);border-radius:.5rem;box-shadow:0 .5rem 1rem rgba(0,0,0,.35)}
.pg-header .dropdown-menu.show{display:block}
.pg-header .dropdown-item{display:flex;align-items:center;gap:.6rem;width:100%;padding:.25rem 1rem;font:inherit;font-size:1rem;color:var(--pgh-fg);background:none;border:0;border-radius:0;text-align:left;cursor:pointer;white-space:nowrap}
.pg-header .dropdown-item:hover{background:var(--pgh-hover)}
.pg-header .dropdown-item i{width:1.25rem;text-align:center}
.pg-header .dropdown-divider{height:0;margin:.5rem 0;border:0;border-top:1px solid var(--pgh-line)}
.pg-header :focus-visible,.pg-footer :focus-visible{outline:2px solid #60a5fa;outline-offset:2px}
.pg-toast{position:fixed;left:50%;bottom:1.5rem;transform:translateX(-50%);background:#212529;color:#fff;padding:.5rem 1rem;border-radius:.4rem;z-index:30000;opacity:0;transition:opacity .2s;pointer-events:none}
.pg-toast.show{opacity:.95}
.pg-footer{border-top:1px solid var(--pgh-line);margin-top:2.5rem;padding:1.25rem .75rem;font-size:.875rem;color:var(--pgh-muted);background:var(--pgh-bg)}
.pg-footer a{color:var(--pgh-fg);text-decoration:none}
.pg-footer a:hover{text-decoration:underline}
.pg-footer .pg-foot-links,.pg-footer .pg-follow{display:flex;flex-wrap:wrap;gap:.4rem 1rem;margin-bottom:.5rem}
.pg-footer .pg-follow a{font-size:1.15rem}
@media (max-width:991px){
  .pg-header .navbar-toggler{display:block}
  .pg-header .navbar-collapse{display:none;flex-basis:100%}
  .pg-header .navbar-collapse.show{display:flex}
  .pg-header .pg-actions{margin-left:0}
}
@media print{.pg-header,.pg-footer,.pg-skip{display:none!important}}
