/* Official white UI baseline V1, approved 22 Oct 2026. Scoped to PBPL pages. */
*{box-sizing:border-box}html{scroll-behavior:smooth}body.pbpl-site{margin:0;background:#fff;color:#172e50;font:14px/1.45 Arial,'Segoe UI',sans-serif}body.pbpl-site a{text-decoration:none;color:inherit}body.pbpl-site button,body.pbpl-site input,body.pbpl-site select{font:inherit}body.pbpl-site button{cursor:pointer}.shell{max-width:1250px;margin:0 auto;padding:0 20px}.topline{height:5px;background:#303648}.pbpl-head{background:#fff;position:relative;overflow:hidden}.pbpl-head:before{content:none}.pbpl-head-inner{position:relative;min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:20px}.pbpl-identity{display:flex;align-items:center;gap:18px;min-width:0}.pbpl-emblem{height:70px;width:70px;object-fit:contain;flex-shrink:0}.pbpl-wordmark{display:flex;flex-direction:column;gap:3px;min-width:0}.pbpl-wordmark small{font-weight:800;letter-spacing:.15px;font-size:11px;color:#273851;line-height:1.3}.pbpl-wordmark strong{font:800 28px/1.14 Arial,'Segoe UI',sans-serif;color:#d80819;letter-spacing:-.35px}.pbpl-wordmark em{font-style:normal;font-weight:800;letter-spacing:.2px;color:#1e4d7b;font-size:13px}.pbpl-head-right{display:flex;flex-direction:column;align-items:end;gap:9px;min-width:255px}.pbpl-head-right p{text-align:left;align-self:end;margin:0 65px 0 0;font-weight:800;font-size:10px;color:#1c598e;line-height:1.35}.pbpl-head-search{border:1px solid #e1e7ee;border-radius:8px;background:#fff;display:flex;width:255px;height:36px;box-shadow:0 2px 8px #1c2b3b08}.pbpl-head-search input{border:0;background:transparent;outline:0;min-width:0;flex:1;padding:0 10px;font-size:11px}.pbpl-head-search button{border:0;background:transparent;color:#203953;font-size:28px;width:36px}.pbpl-navbar{background:#fff;border-top:1px solid #e9edf1;border-bottom:2px solid #ed1b24}.pbpl-nav-inner{display:flex;align-items:center;gap:4px;min-height:44px}.pbpl-nav-inner a{display:flex;align-items:center;height:44px;padding:0 19px;font-size:12px;font-weight:800;white-space:nowrap}.pbpl-nav-inner a:hover,.pbpl-nav-inner .pbpl-nav-active{color:#d7091a;border-bottom:3px solid #ed1b24}.pbpl-main{padding-top:13px}.pbpl-announcement{display:flex;align-items:center;gap:18px;background:#f3f7fb;border:1px solid #e6edf4;border-radius:6px;padding:12px 19px;font-size:12px;margin-bottom:12px}.pbpl-announcement strong{color:#d20d1b;white-space:nowrap}.pbpl-feature-layout{display:grid;grid-template-columns:minmax(0,2.1fr) minmax(260px,1.1fr);gap:22px;min-height:305px}.pbpl-feature{display:grid;grid-template-columns:1.15fr .9fr;min-width:0;min-height:302px;background:#f3f9ff;overflow:hidden;border-radius:6px;position:relative}.pbpl-feature-photo{min-width:0;position:relative}.pbpl-feature-photo img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.pbpl-feature-chip{position:absolute;left:22px;top:22px;background:#df0c1e;color:#fff;padding:5px 10px;border-radius:4px;font-size:11px;font-weight:800;letter-spacing:.4px}.pbpl-feature-caption{padding:55px 24px 23px 27px;display:flex;flex-direction:column;justify-content:center}.pbpl-feature-caption>span{font-size:11px;font-weight:800;color:#cf1427;text-transform:uppercase}.pbpl-feature-caption h1{font-size:clamp(24px,2.6vw,37px);line-height:1.16;margin:12px 0;color:#c00a1b;letter-spacing:-.6px}.pbpl-feature-caption p{font-size:13px;color:#3c536b;margin:5px 0 15px}.pbpl-feature-caption>strong{align-self:flex-start;background:#dc0e20;color:#fff;padding:8px 16px;border-radius:20px;font-size:12px}.pbpl-feature-empty{grid-template-columns:1fr 1fr;background:linear-gradient(110deg,#fbf5e9,#e0f3ff)}.pbpl-feature-empty .pbpl-feature-caption{order:0}.pbpl-feature-drawing{order:1;position:relative;background:radial-gradient(ellipse at bottom right,#7ac2eb55,transparent 70%)}.pbpl-law-symbol{position:absolute;bottom:30px;left:25%;height:190px;width:165px;background:linear-gradient(135deg,#ee2836,#b9111e);box-shadow:13px 12px 0 #a8171a;border-radius:6px;color:#ffd663;display:grid;place-items:center;font-size:116px}.pbpl-shapes i{position:absolute;bottom:6px;border-radius:50% 50% 0 0;background:#6cbb70}.pbpl-shapes i:nth-child(1){left:10%;width:70px;height:32px}.pbpl-shapes i:nth-child(2){right:5%;width:90px;height:42px;background:#8bd080}.pbpl-shapes i:nth-child(3){right:28%;width:50px;height:24px;background:#4aa7cc}.pbpl-latest{min-width:0;display:flex;flex-direction:column}.pbpl-latest-heading{font-size:13px;font-weight:800;color:#233b57;display:flex;justify-content:space-between;border-bottom:2px solid #e5ecf2;padding:2px 0 9px}.pbpl-latest-heading span{color:#d00e1b}.pbpl-latest-row{display:flex;align-items:center;gap:11px;border-bottom:1px solid #e6ebf0;padding:7px 0;min-height:52px}.pbpl-latest-row img{width:78px;height:45px;object-fit:cover;border-radius:4px}.pbpl-latest-row>span{min-width:0;flex:1}.pbpl-latest-row strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:12px;line-height:1.35}.pbpl-latest-row small{color:#8090a0;font-size:10px}.pbpl-latest-row b{color:#738598;border-radius:50%;background:#f0f4f8;width:22px;text-align:center;font-size:19px}.pbpl-latest-empty{padding:38px 20px;background:#f7f9fc;color:#506070;flex:1}.pbpl-latest-empty strong{font-size:14px}.pbpl-latest-empty p{font-size:12px}.pbpl-library{padding-top:24px;padding-bottom:35px}.pbpl-library-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.pbpl-library-head h2{font-size:17px;line-height:1.35;color:#1d385b;margin:0;border-left:4px solid #e00d1f;padding-left:10px}.pbpl-library-head>span{font-size:11px;color:#667a8e}.pbpl-tabs{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:17px}.pbpl-tab{padding:7px 15px;background:#f2f4f7;border-radius:20px;font-size:11px;color:#48596c!important;white-space:nowrap}.pbpl-tab.active,.pbpl-tab:hover{background:#df0b1d;color:white!important}.pbpl-search-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:15px}.pbpl-search-row form{display:flex;align-items:center;gap:8px}.pbpl-search-row input,.pbpl-search-row select{height:34px;padding:0 12px;border:1px solid #dce4ec;border-radius:6px;background:#fff;min-width:0}.pbpl-search-row input{min-width:265px}.pbpl-search-row button{border:0;background:#e30d20;color:#fff;border-radius:6px;height:34px;padding:0 14px}.pbpl-search-row label{font-size:12px;color:#677a91}.pbpl-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.pbpl-card{min-width:0;display:flex;flex-direction:column;border:1px solid #e5eaf0;border-radius:5px;overflow:hidden;background:#fff;transition:box-shadow .18s,transform .18s}.pbpl-card:hover{box-shadow:0 8px 25px #1e3c6119;transform:translateY(-2px)}.pbpl-card-pic{height:105px;display:block;background:#e4edf6}.pbpl-card-pic img{height:100%;width:100%;object-fit:cover}.pbpl-card-content{padding:10px;flex:1;display:flex;flex-direction:column;align-items:flex-start}.pbpl-card-tag{display:inline-block;border-radius:15px;background:#d7192a;color:#fff;padding:3px 8px;font-size:9px;font-weight:800;line-height:1.1}.pbpl-card h3{font-size:12.5px;margin:8px 0 5px;line-height:1.38;color:#1d3555;font-weight:800}.pbpl-card h3 a:hover{text-decoration:underline}.pbpl-card p{font-size:11px;color:#718196;line-height:1.45;margin:0 0 7px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.pbpl-card small{margin-top:auto;color:#8c9aad;font-size:10px}.pbpl-empty{padding:35px 16px;border:1px dashed #d1dce7;text-align:center;background:#f9fbfd;border-radius:7px;color:#657689}.pbpl-empty>*{display:block}.pbpl-empty span{font-size:35px;color:#cbdae9}.pbpl-empty strong{font-size:15px;color:#274465}.pbpl-empty p{margin:6px auto 0;font-size:12px}.pbpl-pagination{display:flex;align-items:center;justify-content:center;gap:15px;padding:22px 0;color:#75859a;font-size:12px}.pbpl-pagination a{border:1px solid #dbe4ed;color:#b51223;padding:8px 12px;border-radius:5px}.pbpl-footer{background:#fafbfc;border-top:1px solid #e4eaf0;color:#28415f;padding:21px 0}.pbpl-footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}.pbpl-footer-inner>div{display:flex;flex-direction:column;font-size:12px}.pbpl-footer-inner strong{font:700 24px Georgia,serif;color:#df091c}.pbpl-footer-inner small{color:#708096;font-size:10px}.pbpl-footer-inner b{font-size:12px}.pbpl-detail-back{color:#c91727!important;font-size:12px;font-weight:700}.pbpl-detail-main{padding-top:28px;padding-bottom:45px}.pbpl-back{color:#bf1727!important;font-size:12px;font-weight:800}.pbpl-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:26px;margin-top:20px;align-items:start}.pbpl-article h1{font-size:clamp(25px,3vw,37px);margin:12px 0;color:#243d60}.pbpl-lede{color:#63758b;font-size:15px}.pbpl-detail-meta{color:#8495a4;font-size:12px;border-bottom:1px solid #e8edf0;padding-bottom:15px}.pbpl-big-image{width:100%;padding:0;border:0;background:none}.pbpl-big-image img{width:100%;height:auto;display:block}.pbpl-tools{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}.pbpl-tools>*{border:1px solid #cedae6;border-radius:6px;padding:9px 13px;background:#fff;color:#bd1425!important;font-size:12px;font-weight:800}.pbpl-source{padding:20px;border-radius:6px;border:1px solid #e3e9ef;background:#f8fafc}.pbpl-source h2{font-size:17px;margin:0 0 11px;color:#223e61}.pbpl-source dt{font-size:11px;color:#8998a8;margin-top:10px}.pbpl-source dd{font-weight:700;margin:3px 0 0;font-size:12px;overflow-wrap:anywhere}.pbpl-source>a{display:block;background:#dd0b1d;color:#fff!important;text-align:center;font-weight:800;font-size:12px;padding:10px;margin:17px 0;border-radius:6px}.pbpl-source p{font-size:12px;color:#66798f}.pbpl-warning{color:#a05a00!important;background:#fff1d8;padding:10px}.pbpl-related-title{font-size:16px;margin-top:30px;border-left:4px solid #e0192c;padding-left:9px}.pbpl-related{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.pbpl-related a{border:1px solid #e8edf0;border-radius:6px;overflow:hidden;font-size:13px;font-weight:700}.pbpl-related img{width:100%;height:120px;object-fit:cover}.pbpl-related span{display:block;padding:11px}.zoom-layer[hidden]{display:none!important}.zoom-layer{position:fixed;inset:0;z-index:100;background:#131c2bea;overflow:auto;text-align:center;padding:64px 15px 25px}.zoom-layer button{position:fixed;top:12px;right:12px;border:0;border-radius:5px;background:#fff;padding:9px 13px}.zoom-layer img{max-width:min(100%,1100px);height:auto}
@media(max-width:960px){.pbpl-head-inner{min-height:92px}.pbpl-feature-layout{grid-template-columns:1.5fr 1fr}.pbpl-feature-empty{grid-template-columns:1fr}.pbpl-feature-empty .pbpl-feature-drawing{display:none}.pbpl-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:680px){.shell{padding:0 14px}.pbpl-head-inner{min-height:82px}.pbpl-emblem{height:52px;width:52px}.pbpl-wordmark small{font-size:9px}.pbpl-wordmark strong{font-size:clamp(16px,4.4vw,22px);line-height:1.15;letter-spacing:-.2px}.pbpl-wordmark em{font-size:9px;line-height:1.3}.pbpl-head-right{display:none}.pbpl-nav-inner{gap:0;overflow-x:auto}.pbpl-nav-inner a{font-size:10px;padding:0 12px;height:40px}.pbpl-announcement{display:block;padding:11px 12px;font-size:11px}.pbpl-announcement strong{display:block;margin-bottom:4px}.pbpl-feature-layout{display:block}.pbpl-feature{min-height:240px;display:block}.pbpl-feature-photo{height:175px}.pbpl-feature-photo img{position:static}.pbpl-feature-caption{padding:24px 17px;min-height:205px}.pbpl-feature-caption h1{font-size:26px}.pbpl-latest{margin-top:20px}.pbpl-latest-row{min-height:62px}.pbpl-library{padding-top:24px}.pbpl-tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;padding-bottom:7px}.pbpl-search-row{align-items:stretch;flex-direction:column}.pbpl-search-row form:first-child{display:flex}.pbpl-search-row form:first-child input{flex:1;width:30px;min-width:0}.pbpl-search-row form:nth-child(2){justify-content:flex-end}.pbpl-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pbpl-card-pic{height:96px}.pbpl-card-content{padding:9px}.pbpl-card h3{font-size:12px}.pbpl-card p{font-size:10px}.pbpl-footer-inner{display:block}.pbpl-footer-inner>div{padding-bottom:11px}.pbpl-detail-layout{grid-template-columns:1fr}.pbpl-related{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}

/* Pill filter controls must not inherit browser button borders. */
button.pbpl-tab{border:0;cursor:pointer}
.pbpl-card[hidden],.pbpl-empty[hidden]{display:none!important}
/* PUBLIC DETAIL V1: one large uncut infographic left; complete article right. */
.pbpl-detail-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-weight:700;font-size:12px;color:#7990a9;border-bottom:1px solid #e6eaf0;padding:0 0 13px}
.pbpl-detail-breadcrumb a:hover{color:#d80b20}
.pbpl-detail-breadcrumb strong{color:#d60e20;font-weight:800}
.pbpl-detail-layout.pbpl-detail-v2{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(310px,.95fr);gap:28px;align-items:start;margin:20px 0 10px}
.pbpl-infographic-column{min-width:0}.pbpl-detail-v2 .pbpl-big-image{width:100%;display:block;border:1px solid #e3e9f2;background:#f5f8fb;padding:10px;border-radius:4px;text-align:center;line-height:0}
.pbpl-detail-v2 .pbpl-big-image img{width:100%;height:auto;max-width:none;display:block;object-fit:contain}
.pbpl-detail-v2 .pbpl-tools{margin:10px 0 0;gap:7px}
.pbpl-detail-v2 .pbpl-tools>*{padding:7px 11px;font-size:11px;color:#c2192c!important}
.pbpl-content-column{min-width:0;color:#263d5b}.pbpl-content-column h1{font-size:clamp(24px,2.55vw,35px);line-height:1.24;font-weight:800;color:#1d3c61;letter-spacing:-.5px;margin:14px 0 13px}
.pbpl-content-column .pbpl-card-tag{font-size:11px;padding:6px 10px;border-radius:5px}
.pbpl-content-column .pbpl-lede{font-size:14px;color:#5c7088;line-height:1.65;margin:0 0 17px;padding-bottom:17px;border-bottom:1px solid #e4e9ef}
.pbpl-article-body{font-size:13px;line-height:1.8;white-space:pre-line;overflow-wrap:anywhere;color:#324762;margin:15px 0 24px}
.pbpl-public-source{padding:15px 0;border-top:1px solid #e4e9ef;border-bottom:1px solid #e4e9ef;margin:21px 0 19px;display:flex;flex-direction:column;gap:8px;font-size:12px}
.pbpl-public-source>div{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap}.pbpl-public-source span{color:#718399}.pbpl-public-source strong{color:#2b4a6a;font-weight:700;overflow-wrap:anywhere}.pbpl-public-source a{align-self:flex-start;color:#d50d25!important;font-weight:800;border-radius:4px;padding:4px 0;text-decoration:underline!important;text-underline-offset:3px}
.pbpl-public-date{display:flex;gap:12px;align-items:center;border-top:1px solid #e6ebf1;padding:16px 0;font-size:12px;color:#58708c;flex-wrap:wrap}
.pbpl-public-date span{font-weight:800;color:#294867}.pbpl-public-date time{padding:5px 10px;background:#f0f3f7;border-radius:4px;font-weight:700;color:#415d7c}
@media(max-width:900px){.pbpl-detail-layout.pbpl-detail-v2{grid-template-columns:minmax(0,1fr) minmax(255px,.88fr);gap:20px}.pbpl-content-column h1{font-size:24px}}
@media(max-width:680px){.pbpl-detail-layout.pbpl-detail-v2{grid-template-columns:minmax(0,1fr);gap:18px}.pbpl-detail-v2 .pbpl-big-image{padding:5px}.pbpl-content-column h1{font-size:25px}.pbpl-detail-main{padding-top:18px}}
/* UI Baseline V2 refinement: search aligned right on navigation row, consistent footer. */
.pbpl-head-right{min-width:0;display:flex;align-items:center;justify-content:flex-end}
.pbpl-head-right p{margin:0;text-align:right;align-self:center;font-size:10px;line-height:1.35}
.pbpl-nav-inner{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:50px;flex-wrap:nowrap}
.pbpl-nav-links{display:flex;align-items:center;gap:2px;flex:1 1 auto;min-width:0;overflow-x:auto;scrollbar-width:thin}
.pbpl-nav-links a{flex:none}
.pbpl-nav-search{display:flex;align-items:center;gap:1px;flex:0 0 clamp(205px,21vw,260px);height:34px;min-width:0;border:1px solid #dbe3ee;border-radius:7px;background:#fff;box-shadow:0 2px 6px #273a5608;overflow:hidden}
.pbpl-nav-search:focus-within{border-color:#8caaca;box-shadow:0 0 0 2px #cfdef0}
.pbpl-nav-search input{border:0!important;outline:0!important;background:transparent;min-width:0;flex:1;width:100%;height:32px;padding:0 9px;font-size:11px;color:#243b56}
.pbpl-nav-search input::placeholder{color:#889ab1}
.pbpl-nav-search button{background:transparent;border:0;color:#253f5b;flex:0 0 34px;height:32px;font-size:22px;padding:0;line-height:1}
.pbpl-nav-search button:hover{color:#d70d22}
.pbpl-footer{background:#fbfcfd;border-top:1px solid #e0e7ef;padding:22px 0}
.pbpl-footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px 28px;flex-wrap:wrap}
.pbpl-footer-inner .pbpl-footer-brand{display:flex;flex:1 1 280px;min-width:0;flex-direction:column;align-items:flex-start;gap:3px}
.pbpl-footer-inner .pbpl-footer-brand small{font-family:Arial,'Segoe UI',sans-serif;color:#25466c;font-size:11px;line-height:1.35;font-weight:800;letter-spacing:.15px}
.pbpl-footer-inner .pbpl-footer-brand strong{font-family:Arial,'Segoe UI',sans-serif;font-size:17px;line-height:1.24;letter-spacing:0;font-weight:800;color:#d50922;white-space:normal;word-break:normal;overflow-wrap:normal;max-width:100%}
.pbpl-footer-inner .pbpl-footer-note{display:flex;flex:1 1 220px;flex-direction:column;align-items:flex-end;text-align:right;gap:4px}
.pbpl-footer-inner .pbpl-footer-note span{font-size:11px;font-weight:600;color:#415a76}
.pbpl-footer-inner .pbpl-footer-note small{font-size:10px;color:#8291a3}
@media(max-width:920px){
 .pbpl-nav-inner{gap:8px}
 .pbpl-nav-search{flex-basis:195px}
 .pbpl-nav-links a{padding:0 13px}
}
@media(max-width:680px){
 .pbpl-head-right{display:none}
 .pbpl-nav-inner{display:flex;min-height:43px;gap:6px;overflow:visible}
 .pbpl-nav-links{flex:1 1 auto;overflow-x:auto;gap:0;scrollbar-width:none}
 .pbpl-nav-links::-webkit-scrollbar{display:none}
 .pbpl-nav-links a{font-size:10px;height:42px;padding:0 9px}
 .pbpl-nav-search{flex:0 0 144px;height:32px}
 .pbpl-nav-search input{height:30px;padding:0 6px;font-size:10px}
 .pbpl-nav-search button{height:30px;flex-basis:25px;font-size:20px}
 .pbpl-footer-inner{display:flex;flex-direction:column;align-items:stretch;gap:12px}
 .pbpl-footer-inner .pbpl-footer-brand,.pbpl-footer-inner .pbpl-footer-note{flex:initial;width:100%;text-align:left;align-items:flex-start}
 .pbpl-footer-inner .pbpl-footer-brand strong{font-size:16px}
 .pbpl-footer-inner .pbpl-footer-note{padding:0}
}
@media(max-width:420px){
 .pbpl-nav-search{flex-basis:120px}
 .pbpl-nav-search input{font-size:9px}
}


/* PBPL typography v20261023-justified-text-v1:
   Justify prose on public catalogue and article detail, retain UI label alignment. */
.pbpl-announcement span,
.pbpl-feature-caption p,
.pbpl-latest-empty p,
.pbpl-card-content p,
.pbpl-empty p,
.pbpl-content-column .pbpl-lede,
.pbpl-content-column .pbpl-article-body,
.pbpl-content-column .pbpl-warning {
  text-align: justify;
  text-justify: inter-word;
  text-align-last: left;
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: none;
}

/* Smaller, balanced titles; line endings remain natural. */
.pbpl-feature-caption h1 {
  font-size: clamp(23px, 2.15vw, 31px);
  line-height: 1.2;
  letter-spacing: -.3px;
  text-align: justify;
  text-align-last: left;
}
.pbpl-detail-v2 .pbpl-content-column h1 {
  font-size: clamp(23px, 2.18vw, 30px);
  line-height: 1.3;
  letter-spacing: -.35px;
  text-align: justify;
  text-align-last: left;
}
.pbpl-card-content h3,
.pbpl-latest-row strong,
.pbpl-related a span {
  text-align: justify;
  text-align-last: left;
  text-justify: inter-word;
}

/* Preserve mobile legibility without stretching short headings. */
@media (max-width: 900px) {
  .pbpl-detail-v2 .pbpl-content-column h1 { font-size: 25px; }
}
@media (max-width: 680px) {
  .pbpl-feature-caption h1 { font-size: 23px; line-height: 1.27; }
  .pbpl-detail-v2 .pbpl-content-column h1 { font-size: 23px; line-height: 1.3; }
}

/* 2026-10-23 title readability: avoid excessive gaps between justified heading words.
   Justified alignment remains applied to every prose block. */
.pbpl-feature-caption h1,
.pbpl-detail-v2 .pbpl-content-column h1,
.pbpl-card-content h3,
.pbpl-latest-row strong,
.pbpl-related a span {
  text-align: left;
  text-align-last: left;
  text-wrap: pretty;
}


/* Full-frame infographic posters v20261023
   Source images are tall posters (e.g. 1114×1920). Never crop or stretch.
   The featured frame follows the intrinsic image height instead of covering
   a wide slot; catalogue uses larger portrait-oriented cards. */
.pbpl-feature:not(.pbpl-feature-empty) {
  height: auto;
  align-items: stretch;
}
.pbpl-feature:not(.pbpl-feature-empty) .pbpl-feature-photo {
  min-width: 0;
  height: auto;
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  background: #fff;
}
.pbpl-feature:not(.pbpl-feature-empty) .pbpl-feature-photo img {
  position: static;
  inset: auto;
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  object-fit: contain;
  object-position: center top;
}
.pbpl-feature:not(.pbpl-feature-empty) .pbpl-feature-caption {
  min-width: 0;
  padding: 26px 24px 26px 26px;
  align-self: stretch;
}
.pbpl-cards {
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 20px;
}
.pbpl-card-pic {
  display: block;
  width: 100%;
  height: auto;
  min-height: 0;
  aspect-ratio: auto;
  background: #f7fafd;
  overflow: hidden;
}
.pbpl-card-pic img {
  position: static;
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  object-fit: contain;
  object-position: center top;
}
.pbpl-card-content { padding: 14px; }
.pbpl-card h3 { font-size: 15px; line-height: 1.42; margin: 9px 0 9px; }
.pbpl-card p { font-size: 12px; line-height: 1.55; -webkit-line-clamp: 3; }
@media (min-width: 681px) and (max-width: 960px) {
  .pbpl-cards { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 680px) {
  .pbpl-feature:not(.pbpl-feature-empty) { display: block; }
  .pbpl-feature:not(.pbpl-feature-empty) .pbpl-feature-photo {
    width: 100%;
    height: auto;
  }
  .pbpl-feature:not(.pbpl-feature-empty) .pbpl-feature-photo img {
    position: static;
    width: 100%;
    height: auto;
  }
  .pbpl-cards { grid-template-columns: minmax(0,1fr); gap: 18px; }
  .pbpl-card-pic { height: auto; min-height: 0; }
  .pbpl-card-pic img { width: 100%; height: auto; }
  .pbpl-card h3 { font-size: 15px; }
  .pbpl-card p { font-size: 12px; }
}


/* Top-anchored cropped infographic previews v20261023
   Images fill the available WIDTH, keep intrinsic aspect ratio, and show their
   TOP sections in a fixed-height viewing window. Do not fit tall posters into
   the whole thumbnail, and never crop their horizontal edges.
   Full images remain available on article detail pages. */
.pbpl-feature:not(.pbpl-feature-empty) {
  height: 350px;
  min-height: 0;
  align-items: stretch;
}
.pbpl-feature:not(.pbpl-feature-empty) .pbpl-feature-photo {
  height: 350px;
  min-height: 0;
  display: block;
  position: relative;
  overflow: hidden;
  background: #f7fafd;
}
.pbpl-feature:not(.pbpl-feature-empty) .pbpl-feature-photo img {
  position: absolute;
  top: 0;
  left: 0;
  right: auto;
  bottom: auto;
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  min-height: 0;
  max-height: none;
  object-fit: fill; /* width/height auto preserve intrinsic image ratio */
}
.pbpl-feature:not(.pbpl-feature-empty) .pbpl-feature-caption {
  overflow: hidden;
}
.pbpl-card-pic {
  display: block;
  position: relative;
  width: 100%;
  height: 245px;
  min-height: 0;
  max-height: 245px;
  flex: 0 0 245px;
  overflow: hidden;
  background: #f7fafd;
}
.pbpl-card-pic img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: auto;
  bottom: auto;
  width: 100%;
  max-width: 100%;
  height: auto;
  max-height: none;
  min-height: 0;
  object-fit: fill;
}
@media (max-width: 680px) {
  .pbpl-feature:not(.pbpl-feature-empty) { height: auto; min-height: 0; }
  .pbpl-feature:not(.pbpl-feature-empty) .pbpl-feature-photo {
    height: 270px;
    min-height: 0;
    overflow: hidden;
  }
  .pbpl-feature:not(.pbpl-feature-empty) .pbpl-feature-photo img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    max-height: none;
  }
  .pbpl-card-pic {
    height: 245px;
    max-height: 245px;
    min-height: 0;
    flex: 0 0 245px;
  }
  .pbpl-card-pic img {
    width: 100%;
    height: auto;
  }
}


/* PBPL typography: genuinely justify titles and text v20261023
   Use full available card width for title and summary. A previous override
   changed heading alignment to left; the card's flex children could also
   shrink to fit their content, preventing visible justification. */
.pbpl-feature:not(.pbpl-feature-empty) .pbpl-feature-caption h1,
.pbpl-card .pbpl-card-content h3,
.pbpl-card .pbpl-card-content h3 a,
.pbpl-detail-v2 .pbpl-content-column h1 {
  display: block;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  text-align: justify;
  text-align-last: left;
  text-justify: inter-word;
  text-wrap: wrap;
  overflow-wrap: break-word;
  word-break: normal;
}
.pbpl-feature:not(.pbpl-feature-empty) .pbpl-feature-caption p,
.pbpl-card .pbpl-card-content p,
.pbpl-detail-v2 .pbpl-content-column .pbpl-lede,
.pbpl-detail-v2 .pbpl-content-column .pbpl-article-body,
.pbpl-detail-v2 .pbpl-content-column .pbpl-article-body p {
  display: block;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  text-align: justify;
  text-align-last: left;
  text-justify: inter-word;
  overflow-wrap: break-word;
  word-break: normal;
}
.pbpl-card .pbpl-card-content { align-items: stretch; }

/* Keep category chips compact while title/summary stretch to justify. */
.pbpl-card .pbpl-card-content > .pbpl-card-tag {
  align-self: flex-start;
  width: auto;
  max-width: 100%;
}


/* Featured article headline - restrained typography v20261023-v5
   Keep justified alignment; reduce visual weight and large word gaps.
   No changes to thumbnail crop or the article-detail layout. */
.pbpl-feature:not(.pbpl-feature-empty) .pbpl-feature-caption h1 {
  font-size: 21px;
  font-weight: 700;
  line-height: 1.33;
  letter-spacing: 0;
  text-align: justify;
  text-align-last: left;
  text-justify: inter-word;
  margin: 10px 0 12px;
}
@media (max-width: 680px) {
  .pbpl-feature:not(.pbpl-feature-empty) .pbpl-feature-caption h1 {
    font-size: 19px;
    line-height: 1.36;
  }
}


/* Latest five auto-rotation controls (30s)
   Preserve the compact row-based sidebar, add small, accessible manual arrows. */
.pbpl-latest-heading { align-items: center; gap: 10px; }
.pbpl-latest-heading > span { color: #233b57; }
.pbpl-latest-controls {
  display: flex;
  align-items: center;
  gap: 5px;
  flex-shrink: 0;
}
.pbpl-latest-controls button {
  display: inline-grid;
  place-items: center;
  width: 27px;
  height: 27px;
  padding: 0;
  border: 1px solid #e0e7ee;
  border-radius: 50%;
  color: #c8172a;
  background: #fff;
  font-size: 23px;
  line-height: 1;
  font-weight: 700;
  cursor: pointer;
}
.pbpl-latest-controls button:hover:not(:disabled),
.pbpl-latest-controls button:focus-visible {
  border-color: #e32938;
  background: #fff5f5;
}
.pbpl-latest-controls button:focus-visible {
  outline: 2px solid #a0bddd;
  outline-offset: 2px;
}
.pbpl-latest-controls button:disabled {
  color: #a6b2c2;
  opacity: .5;
  cursor: default;
}
.pbpl-latest-items { display: flex; flex-direction: column; flex: 1 1 auto; min-width: 0; }
.pbpl-latest-items > .pbpl-latest-row {
  box-sizing: border-box;
  border-left: 2px solid transparent;
  padding-left: 4px;
  width: 100%;
  transition: background-color .25s ease, border-color .25s ease;
}
.pbpl-latest-items > .pbpl-latest-current {
  background: #f6f9fd;
  border-left-color: #d81123;
}
.pbpl-latest-items > .pbpl-latest-row:hover { background: #f5f8fc; }
@media (prefers-reduced-motion: reduce) {
  .pbpl-latest-items > .pbpl-latest-row { transition: none; }
}


/* Hero slideshow: visible page state for 30s five-article rotation.
   Right-hand rows stay in their original latest-first order. */
.pbpl-latest-heading .pbpl-slide-count {
  color: #667c91;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  min-width: 26px;
  text-align: center;
  font-variant-numeric: tabular-nums;
}
.pbpl-latest-items > .pbpl-latest-current {
  background: #f5f9fe;
  border-left-color: #d81123;
}


/* Editorial serif typography inspired by chinhphu.vn | trial v1
   Vietnamese-friendly built-in Windows serif fonts: no remote font, no downloads.
   Keep administration, navigation, controls, status pills and wordmark as approved.
   Text only: never change infographic dimensions or slideshow controls. */
body.pbpl-site .pbpl-feature-caption h1,
body.pbpl-site .pbpl-card-content h3,
body.pbpl-site .pbpl-card-content h3 a,
body.pbpl-site .pbpl-latest-row strong,
body.pbpl-site .pbpl-related a span,
body.pbpl-site .pbpl-detail-v2 .pbpl-content-column h1 {
  font-family: "Times New Roman", Georgia, serif;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0;
  text-rendering: optimizeLegibility;
}
body.pbpl-site .pbpl-feature:not(.pbpl-feature-empty) .pbpl-feature-caption h1 {
  font-size: 22px;
  line-height: 1.31;
}
body.pbpl-site .pbpl-card-content h3 {
  font-size: 17px;
  line-height: 1.35;
  margin-top: 10px;
}
body.pbpl-site .pbpl-latest-row strong {
  font-size: 14px;
  line-height: 1.4;
}
body.pbpl-site .pbpl-detail-v2 .pbpl-content-column h1 {
  font-size: clamp(24px, 2.1vw, 29px);
  line-height: 1.3;
}
body.pbpl-site .pbpl-feature-caption p,
body.pbpl-site .pbpl-card-content p,
body.pbpl-site .pbpl-latest-empty p,
body.pbpl-site .pbpl-detail-v2 .pbpl-lede,
body.pbpl-site .pbpl-detail-v2 .pbpl-article-body,
body.pbpl-site .pbpl-detail-v2 .pbpl-article-body p,
body.pbpl-site .pbpl-announcement span {
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: normal;
  color: #30445b;
  text-align: justify;
  text-align-last: left;
  line-height: 1.68;
  overflow-wrap: break-word;
}
body.pbpl-site .pbpl-feature-caption p { font-size: 14px; }
body.pbpl-site .pbpl-card-content p {
  font-size: 14px;
  line-height: 1.56;
  -webkit-line-clamp: 3;
}
body.pbpl-site .pbpl-detail-v2 .pbpl-lede { font-size: 16px; line-height: 1.65; }
body.pbpl-site .pbpl-detail-v2 .pbpl-article-body { font-size: 15.5px; line-height: 1.73; }
body.pbpl-site .pbpl-announcement span { font-size: 13px; line-height: 1.5; }
@media (max-width: 680px) {
  body.pbpl-site .pbpl-feature:not(.pbpl-feature-empty) .pbpl-feature-caption h1 {
    font-size: 21px;
    line-height: 1.33;
  }
  body.pbpl-site .pbpl-card-content h3 { font-size: 16px; }
  body.pbpl-site .pbpl-detail-v2 .pbpl-content-column h1 { font-size: 24px; }
}
