/*
 * publ-catalogue.css - WTO publications catalogue
 * Replaces publ_by_subject_e.htm + publ_by_title_e.htm with ONE page.
 *
 * v2: the left filter column is gone. Filters are a horizontal bar of
 * collapsed dropdowns above the results, plus an "Advanced search" panel,
 * which frees the width for 4 cover columns on desktop.
 *
 * Everything is scoped under #pubCat (and .pcHero for the banner) so the WTO
 * stylesheets (wto.css, event_template/main.css, a4t.css) stay untouched.
 * WTO traps neutralised here:
 *   - wto.css paints a ::before square and a 20px indent on every li under a ul
 *     -> the component lists reset both (margin + pseudo only).
 *   - p / li get explicit font sizes per breakpoint in wto.css -> set here.
 *   - a4t.css turns any h1 inside #event-banner into a floating box -> the hero
 *     title is a div, the real h1 is hidden (same as publications_e.htm).
 * ASCII only: the host pages are served as iso-8859-1.
 */

/* ---- Tokens ---------------------------------------------------------------- */
#pubCat, .pcHero {
  --pc-blue: #0059b3;
  --pc-blue-dark: #003f80;
  --pc-navy: #0b2545;
  --pc-line: #d5e2f1;
  --pc-soft: #f4f7fb;
  --pc-text: #1f2a37;
  --pc-muted: #5b6776;
  --pc-radius: 6px;
}

/* ---- Hero band --------------------------------------------------------------- */
.pcHero { position: relative; overflow: hidden; background: #0b2545; background: linear-gradient(120deg, #0b2545 0%, #0f3a6b 55%, #0059b3 100%); color: #ffffff; }
.pcHero:after { content: ""; position: absolute; right: -80px; top: -120px; width: 420px; height: 420px; border-radius: 50%; background: rgba(255,255,255,0.05); }
.pcHeroInner { position: relative; z-index: 1; max-width: 1140px; margin: 0 auto; padding: 34px 15px 30px; }
.pcKicker { margin: 0 0 6px; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: #cfe0f5; }
.pcTitle { margin: 0 0 10px; font-size: 38px; line-height: 1.15; font-weight: bold; color: #ffffff; }
.pcLead { margin: 0 0 20px; max-width: 760px; font-size: 16px; line-height: 1.55; color: #e3ecf7; }
.pcSearch { position: relative; max-width: 760px; }
.pcSearch input { width: 100%; height: 54px; padding: 0 118px 0 50px; border: 0; border-radius: 28px; font-size: 17px; color: #1f2a37; background: #ffffff; box-shadow: 0 6px 22px rgba(0,0,0,.22); -webkit-appearance: none; appearance: none; }
.pcSearch input:focus { outline: 3px solid #7fb2ff; outline-offset: 2px; }
.pcSearch .pcSearchIcon { position: absolute; left: 18px; top: 50%; width: 20px; height: 20px; margin-top: -10px; color: #5b6776; pointer-events: none; }
.pcSearch .pcSearchClear { position: absolute; right: 8px; top: 8px; height: 38px; padding: 0 16px; border: 0; border-radius: 19px; background: #eef3f9; color: #0059b3; font-size: 13px; font-weight: bold; cursor: pointer; }
.pcSearch .pcSearchClear[hidden] { display: none; }
.pcStats { margin: 16px 0 0; padding: 0; list-style: none; font-size: 14px; color: #cfe0f5; }
.pcStats li { display: inline-block; margin: 0 18px 4px 0; padding: 0; }
.pcStats li:before { content: none; }
.pcStats strong { color: #ffffff; font-size: 18px; margin-right: 4px; }

/* ---- Blue contents bar (same look as the new publication template) ---------- */
#subSiteNavigation { background: #0059b3; position: relative; margin: 0; }
.pubNav { max-width: 1140px; margin: 0 auto; padding: 0 15px; }
.pubNavList { margin: 0; padding: 0; list-style: none; text-align: center; }
.pubNavList > li { display: inline-block; margin: 0; padding: 0; }
.pubNavList > li:before { content: none; }
.pubNavList > li > a { display: inline-block; padding: 12px 11px; color: #ffffff !important; font-size: 13px; line-height: 1.3; text-transform: uppercase; text-decoration: none; white-space: nowrap; }
.pubNavList > li > a:hover, .pubNavList > li > a:focus, .pubNavList > li > a.is-current { background: #003f80; color: #ffffff !important; text-decoration: none; }

/* ---- Reset of WTO list decoration inside the app ----------------------------- */
#pubCat ul, #pubCat ol { margin: 0; padding: 0; list-style: none; }
#pubCat li { margin-left: 0; }
#pubCat li:before, #pubCat dd:before { content: none !important; }
#pubCat, #pubCat p, #pubCat li, #pubCat label, #pubCat button, #pubCat select { font-size: 14px; color: var(--pc-text); }
#pubCat a { color: var(--pc-blue); }
#pubCat a:hover, #pubCat a:focus { color: var(--pc-blue-dark); }
#pubCat :focus-visible { outline: 3px solid #7fb2ff; outline-offset: 2px; }
.pcSrOnly { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); border: 0; }
#pubCat { margin: 10px 0 40px; }

/* ---- Filter bar: collapsed dropdowns + "Advanced search" ------------------------ */
.pcFilterBar { position: relative; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -ms-flex-align: center; align-items: center; gap: 8px; margin: 0 0 12px; padding: 10px 12px; border: 1px solid var(--pc-line); border-radius: var(--pc-radius); background: var(--pc-soft); }
#pubCat .pcFilterLabel { margin: 0 4px 0 2px; font-size: 13px; font-weight: bold; color: var(--pc-navy); }
.pcDrop { position: relative; }
#pubCat .pcDropBtn { display: -ms-inline-flexbox; display: inline-flex; -ms-flex-align: center; align-items: center; gap: 7px; height: 38px; padding: 0 12px 0 14px; border: 1px solid #b9c9dc; border-radius: 4px; background: #ffffff; color: var(--pc-navy); font-size: 14px; cursor: pointer; white-space: nowrap; }
#pubCat .pcDropBtn:hover { border-color: var(--pc-blue); }
#pubCat .pcDropBtn[aria-expanded="true"] { border-color: var(--pc-blue); box-shadow: 0 0 0 2px rgba(0,89,179,.18); }
#pubCat .pcDropBtn.has-value { border-color: var(--pc-blue); background: #e6effa; font-weight: bold; }
.pcDropBtn .pcCount { padding: 0 7px; border-radius: 10px; background: var(--pc-blue); color: #ffffff !important; font-size: 12px; line-height: 18px; }
.pcCaret { width: 0; height: 0; border-left: 5px solid transparent; border-right: 5px solid transparent; border-top: 6px solid currentColor; transition: transform .15s ease; }
.pcDropBtn[aria-expanded="true"] .pcCaret, .pcAdvLink[aria-expanded="true"] .pcCaret { transform: rotate(180deg); }
.pcDropPanel { position: absolute; top: calc(100% + 6px); left: 0; z-index: 60; width: 320px; max-width: 90vw; border: 1px solid var(--pc-line); border-radius: var(--pc-radius); background: #ffffff; box-shadow: 0 12px 30px rgba(11,37,69,.18); }
.pcDropPanel[hidden] { display: none; }
.pcDropScroll { max-height: 330px; overflow-y: auto; padding: 6px; }
.pcDropFoot { display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-align: center; align-items: center; padding: 8px 12px; border-top: 1px solid var(--pc-line); background: var(--pc-soft); border-radius: 0 0 var(--pc-radius) var(--pc-radius); }
#pubCat .pcLinkBtn { padding: 0; border: 0; background: none; color: var(--pc-blue); font-size: 13px; font-weight: bold; cursor: pointer; }
#pubCat .pcLinkBtn:hover { text-decoration: underline; }
#pubCat .pcDoneBtn { padding: 5px 14px; border: 0; border-radius: 4px; background: var(--pc-blue); color: #ffffff; font-size: 13px; font-weight: bold; cursor: pointer; }
#pubCat .pcDoneBtn:hover { background: var(--pc-blue-dark); }
#pubCat .pcAdvLink { display: -ms-inline-flexbox; display: inline-flex; -ms-flex-align: center; align-items: center; gap: 6px; margin-left: auto; padding: 6px 4px; border: 0; background: none; color: var(--pc-blue); font-size: 14px; font-weight: bold; cursor: pointer; }
#pubCat .pcAdvLink:hover { text-decoration: underline; }

/* ---- Options (checkbox look) ------------------------------------------------------ */
.pcFacetFind { width: 100%; height: 34px; margin: 0 0 6px; padding: 0 10px; border: 1px solid var(--pc-line); border-radius: 4px; font-size: 13px; }
.pcOpt { display: -ms-flexbox; display: flex; -ms-flex-align: center; align-items: center; width: 100%; margin: 0; padding: 6px 8px; border: 0; border-radius: 4px; background: transparent; text-align: left; line-height: 1.3; cursor: pointer; }
.pcOpt:hover { background: var(--pc-soft); }
.pcOpt .pcBox { -ms-flex: 0 0 16px; flex: 0 0 16px; width: 16px; height: 16px; margin-right: 9px; border: 2px solid #9fb3c8; border-radius: 3px; background: #ffffff; position: relative; }
.pcOpt[aria-pressed="true"] .pcBox { border-color: var(--pc-blue); background: var(--pc-blue); }
.pcOpt[aria-pressed="true"] .pcBox:after { content: ""; position: absolute; left: 3px; top: 0; width: 5px; height: 9px; border: solid #ffffff; border-width: 0 2px 2px 0; transform: rotate(45deg); }
.pcOpt .pcOptLabel { -ms-flex: 1 1 auto; flex: 1 1 auto; }
.pcOpt[aria-pressed="true"] .pcOptLabel { font-weight: bold; color: var(--pc-navy); }
.pcOpt .pcCount { -ms-flex: 0 0 auto; flex: 0 0 auto; margin-left: 8px; min-width: 26px; padding: 1px 7px; border-radius: 10px; background: #eef3f9; color: var(--pc-muted); font-size: 12px; text-align: center; }
.pcOpt[disabled] { opacity: .45; cursor: default; }
.pcOpt[disabled]:hover { background: transparent; }
.pcPill { display: inline-block; margin: 0 6px 8px 0; padding: 6px 12px; border: 1px solid var(--pc-line); border-radius: 16px; background: #ffffff; font-size: 13px; cursor: pointer; }
.pcPill[aria-pressed="true"] { background: var(--pc-blue); border-color: var(--pc-blue); color: #ffffff !important; }
.pcNoMatch { padding: 8px; color: var(--pc-muted); font-size: 13px; }

/* ---- Advanced search panel ---------------------------------------------------------- */
.pcAdvanced { margin: 0 0 14px; padding: 16px; border: 1px solid var(--pc-line); border-radius: var(--pc-radius); background: #ffffff; box-shadow: 0 4px 14px rgba(11,37,69,.06); }
.pcAdvanced[hidden] { display: none; }
.pcAdvGrid { display: grid; grid-template-columns: 2fr 1.3fr 1fr; gap: 18px; }
.pcAdvCol > h2 { margin: 0 0 8px; padding: 0 0 6px; border-bottom: 2px solid var(--pc-blue); color: var(--pc-navy); font-size: 13px !important; font-weight: bold; letter-spacing: .06em; text-transform: uppercase; }
.pcAdvCol + .pcAdvCol h2.pcAdvSub, .pcAdvCol h2.pcAdvSub { margin-top: 16px; }
.pcAdvSubjects { max-height: 360px; overflow-y: auto; }
.pcAdvField { margin: 0 0 12px; }
#pubCat .pcAdvField label { display: block; margin: 0 0 4px; font-size: 13px; font-weight: bold; color: var(--pc-muted); }
.pcAdvField input, .pcAdvField select { width: 100%; height: 36px; padding: 0 10px; border: 1px solid var(--pc-line); border-radius: 4px; background: #ffffff; font-size: 14px; }
.pcYearRow { display: -ms-flexbox; display: flex; gap: 8px; }
.pcYearRow > div { -ms-flex: 1 1 0; flex: 1 1 0; }
.pcAdvFoot { display: -ms-flexbox; display: flex; -ms-flex-pack: end; justify-content: flex-end; -ms-flex-align: center; align-items: center; gap: 16px; margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--pc-line); }

/* ---- Toolbar (count, sort, views) ------------------------------------------------------ */
.pcToolbar { display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -ms-flex-align: center; align-items: center; gap: 10px 16px; padding: 0 0 12px; border-bottom: 2px solid var(--pc-line); margin-bottom: 14px; }
.pcResultCount { -ms-flex: 1 1 auto; flex: 1 1 auto; margin: 0; font-size: 16px !important; color: var(--pc-navy) !important; }
.pcResultCount strong { font-size: 20px; }
.pcSort label { margin: 0 6px 0 0; font-weight: normal; color: var(--pc-muted); }
.pcSort select { height: 34px; padding: 0 8px; border: 1px solid var(--pc-line); border-radius: 4px; background: #ffffff; }
.pcViews { display: -ms-inline-flexbox; display: inline-flex; border: 1px solid var(--pc-line); border-radius: 4px; overflow: hidden; }
.pcViews button { display: -ms-inline-flexbox; display: inline-flex; -ms-flex-align: center; align-items: center; gap: 6px; height: 34px; padding: 0 12px; border: 0; border-right: 1px solid var(--pc-line); background: #ffffff; color: var(--pc-muted); font-size: 13px; cursor: pointer; }
.pcViews button:last-child { border-right: 0; }
.pcViews button[aria-pressed="true"] { background: var(--pc-blue); color: #ffffff; }
.pcViews svg { width: 16px; height: 16px; }
.pcActive { display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -ms-flex-align: center; align-items: center; gap: 6px; margin: 0 0 14px; }
.pcActive:empty { display: none; }
.pcChip { display: -ms-inline-flexbox; display: inline-flex; -ms-flex-align: center; align-items: center; gap: 6px; padding: 4px 6px 4px 12px; border-radius: 16px; background: #e6effa; color: var(--pc-navy); font-size: 13px; border: 0; cursor: pointer; }
.pcChip b { display: inline-block; width: 20px; height: 20px; line-height: 20px; border-radius: 50%; background: #ffffff; color: var(--pc-blue); text-align: center; font-size: 14px; }
.pcChip:hover b { background: var(--pc-blue); color: #ffffff; }
.pcClearAll { border: 0; background: none; color: var(--pc-blue); font-weight: bold; font-size: 13px; cursor: pointer; text-decoration: underline; }

/* ---- Grid view: 4 columns on desktop, 3 on tablet, 2 on phone ------------------------------ */
.pcGrid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.pcCard { display: -ms-flexbox; display: flex; -ms-flex-direction: column; flex-direction: column; border: 1px solid var(--pc-line); border-radius: var(--pc-radius); background: #ffffff; overflow: hidden; transition: box-shadow .2s ease, transform .2s ease; }
.pcCard:hover { transform: translateY(-3px); box-shadow: 0 8px 22px rgba(11,37,69,.14); }
.pcCover { display: block; position: relative; padding-top: 128%; background: var(--pc-soft); border-bottom: 1px solid var(--pc-line); }
.pcCover img { position: absolute; top: 12px; left: 12px; width: calc(100% - 24px); height: calc(100% - 24px); object-fit: contain; margin: 0; }
.pcBadgeNew { position: absolute; top: 10px; left: 10px; z-index: 1; padding: 2px 8px; border-radius: 3px; background: #e8a400; color: #1f2a37; font-size: 11px; font-weight: bold; letter-spacing: .06em; text-transform: uppercase; }
.pcCardBody { -ms-flex: 1 1 auto; flex: 1 1 auto; display: -ms-flexbox; display: flex; -ms-flex-direction: column; flex-direction: column; padding: 12px 14px 14px; }
#pubCat .pcSeries { margin: 0 0 4px; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: var(--pc-muted); }
.pcCardTitle { margin: 0 0 6px; font-size: 15px !important; line-height: 1.35; font-weight: bold; display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; }
.pcCardTitle a { color: var(--pc-navy) !important; text-decoration: none; }
.pcCardTitle a:hover, .pcCardTitle a:focus { color: var(--pc-blue) !important; text-decoration: underline; }
#pubCat .pcYear { margin: 0 0 8px; font-size: 13px; color: var(--pc-muted); }
.pcTags { margin: 0 0 10px; }
.pcTag { display: inline-block; margin: 0 4px 4px 0; padding: 2px 8px; border: 0; border-radius: 10px; background: #eef3f9; color: var(--pc-blue); font-size: 12px; line-height: 1.5; cursor: pointer; }
.pcTag:hover { background: var(--pc-blue); color: #ffffff; }
.pcActions { margin-top: auto; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; gap: 6px; }
.pcBtn { display: -ms-inline-flexbox; display: inline-flex; -ms-flex-align: center; align-items: center; gap: 5px; padding: 5px 10px; border: 1px solid var(--pc-blue); border-radius: 4px; background: #ffffff; color: var(--pc-blue) !important; font-size: 12px; font-weight: bold; text-decoration: none !important; white-space: nowrap; }
.pcBtn:hover, .pcBtn:focus { background: var(--pc-blue); color: #ffffff !important; }
.pcBtn.pcBtnMain { background: var(--pc-blue); color: #ffffff !important; }
.pcBtn.pcBtnMain:hover, .pcBtn.pcBtnMain:focus { background: var(--pc-blue-dark); border-color: var(--pc-blue-dark); }
.pcBtn svg { width: 13px; height: 13px; }
.pcLangs { margin: 8px 0 0; font-size: 12px; color: var(--pc-muted); }
.pcLangs a { display: inline-block; margin-right: 4px; padding: 0 5px; border: 1px solid var(--pc-line); border-radius: 3px; font-size: 11px; font-weight: bold; text-decoration: none; }

/* ---- List view ----------------------------------------------------------------------- */
.pcList .pcCard { -ms-flex-direction: row; flex-direction: row; margin-bottom: 12px; }
.pcList .pcCard:hover { transform: none; }
.pcList .pcCover { -ms-flex: 0 0 96px; flex: 0 0 96px; padding-top: 0; min-height: 128px; border-bottom: 0; border-right: 1px solid var(--pc-line); }
.pcList .pcCover img { top: 8px; left: 8px; width: calc(100% - 16px); height: calc(100% - 16px); }
.pcList .pcCardTitle { font-size: 16px !important; -webkit-line-clamp: 2; }
.pcList .pcActions { margin-top: 6px; }

/* ---- A-Z view -------------------------------------------------------------------------- */
.pcLetters { display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; gap: 4px; margin: 0 0 16px; padding: 10px; border-radius: var(--pc-radius); background: var(--pc-soft); }
.pcLetters a, .pcLetters span { display: inline-block; min-width: 30px; height: 30px; line-height: 30px; border-radius: 4px; text-align: center; font-weight: bold; font-size: 14px; text-decoration: none; }
.pcLetters a { background: #ffffff; color: var(--pc-blue); border: 1px solid var(--pc-line); }
.pcLetters a:hover, .pcLetters a:focus { background: var(--pc-blue); color: #ffffff; }
.pcLetters span { color: #b3bfcc; }
.pcAzGroup { margin: 0 0 18px; }
.pcAzGroup > h2 { display: -ms-flexbox; display: flex; -ms-flex-align: center; align-items: center; margin: 0 0 6px; padding: 0 0 4px; border-bottom: 2px solid var(--pc-blue); color: var(--pc-navy); font-size: 22px !important; }
.pcAzGroup > h2 a { margin-left: auto; font-size: 12px; font-weight: normal; }
.pcAzRow { display: -ms-flexbox; display: flex; -ms-flex-align: baseline; align-items: baseline; gap: 10px; padding: 7px 4px; border-bottom: 1px solid #edf1f6; }
.pcAzRow:hover { background: var(--pc-soft); }
.pcAzRow > a { -ms-flex: 1 1 auto; flex: 1 1 auto; font-size: 15px; text-decoration: none; }
.pcAzRow > a:hover { text-decoration: underline; }
.pcAzRow .pcAzMeta { -ms-flex: 0 0 auto; flex: 0 0 auto; color: var(--pc-muted); font-size: 12px; white-space: nowrap; }

/* ---- States ------------------------------------------------------------------------------ */
mark.pcHit { padding: 0 1px; background: #fff1a8; color: inherit; }
.pcEmpty { padding: 40px 20px; border: 1px dashed var(--pc-line); border-radius: var(--pc-radius); text-align: center; }
#pubCat .pcEmpty p { font-size: 16px; }
.pcShowMore { display: block; margin: 22px auto 0; padding: 10px 26px; border: 1px solid var(--pc-blue); border-radius: 22px; background: #ffffff; color: var(--pc-blue); font-weight: bold; cursor: pointer; }
.pcShowMore:hover, .pcShowMore:focus { background: var(--pc-blue); color: #ffffff; }
.pcSkeleton .pcCover { background: linear-gradient(90deg, #eef3f9 25%, #f7f9fc 50%, #eef3f9 75%); background-size: 400% 100%; animation: pcShimmer 1.4s ease infinite; }
.pcSkeleton .pcLine { height: 12px; margin: 8px 0; border-radius: 4px; background: #eef3f9; }
@keyframes pcShimmer { 0% { background-position: 100% 0; } 100% { background-position: 0 0; } }
.pcError { padding: 16px; border-left: 4px solid #c0392b; background: #fdf1f0; }

/* ---- Responsive ------------------------------------------------------------------------------ */
@media (max-width: 991px) {
  .pcGrid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .pcAdvGrid { grid-template-columns: 1fr 1fr; }
  .pcAdvGrid > .pcAdvCol:first-child { grid-column: 1 / -1; }
  .pcTitle { font-size: 30px; }
}
@media (max-width: 767px) {
  .pcHeroInner { padding: 24px 15px 22px; }
  .pcTitle { font-size: 26px; }
  .pcLead { font-size: 15px; }
  .pcSearch input { height: 48px; font-size: 16px; padding-right: 90px; }
  .pcSearch .pcSearchClear { top: 5px; }
  .pcGrid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  /* dropdown panels span the whole bar on a phone */
  .pcDrop { position: static; }
  .pcDropPanel { left: 0; right: 0; width: auto; max-width: none; }
  #pubCat .pcFilterLabel { width: 100%; }
  #pubCat .pcAdvLink { margin-left: 0; }
  .pcAdvGrid { grid-template-columns: 1fr; }
  .pcViews .pcViewLabel { display: none; }
  .pcAzRow { -ms-flex-direction: column; flex-direction: column; gap: 2px; }
}
@media (prefers-reduced-motion: reduce) {
  .pcCard, .pcSkeleton .pcCover, .pcCaret { transition: none; animation: none; }
  .pcCard:hover { transform: none; }
}
@media print {
  .pcFilterBar, .pcAdvanced, .pcToolbar, .pcActive, .pcShowMore, .pcHero .pcSearch, .pcLetters { display: none !important; }
}

/* ---- Specificity fixes ----------------------------------------------------------------------------
   "#pubCat button / label / a" above set the text colour with an ID selector, which beats any
   class-only state rule (0,2,1 < 1,0,1): selected view button, "Show more" and subject tags on
   hover and A-Z letters on hover kept a dark text on a blue background. Every state colour on
   those elements therefore carries the same #pubCat prefix. */
#pubCat .pcViews button { color: var(--pc-muted); }
#pubCat .pcViews button[aria-pressed="true"] { color: #ffffff; }
#pubCat .pcTag { color: var(--pc-blue); }
#pubCat button.pcTag:hover, #pubCat button.pcTag:focus { color: #ffffff; }
#pubCat span.pcTag:hover { background: #eef3f9; color: var(--pc-blue); }
#pubCat .pcShowMore { color: var(--pc-blue); }
#pubCat .pcShowMore:hover, #pubCat .pcShowMore:focus { color: #ffffff; }
#pubCat .pcClearAll { color: var(--pc-blue); }
#pubCat .pcChip { color: var(--pc-navy); }
#pubCat .pcLetters a:hover, #pubCat .pcLetters a:focus { color: #ffffff; }
#pubCat .pcSort label { color: var(--pc-muted); }
