.pig-price-board{color:#17304f;min-width:0;font-size:clamp(16px, 15px + .12vw, 18px)}
.ppb-hero{background:#1e5aa8;border-radius:14px;padding:20px 24px;color:#fff;display:flex;justify-content:space-between;align-items:center;gap:20px}
.ppb-hero h2{font-size:clamp(30px, 29px + .12vw, 32px);letter-spacing:.5px;margin:6px 0 8px}.ppb-hero p,.ppb-hero span{font-size:clamp(15px, 14px + .12vw, 17px);color:#e0ecfc;margin:0;line-height:1.6}
.ppb-hero label{display:flex;flex-direction:column;gap:7px;font-size:clamp(15px, 14px + .12vw, 17px);flex-shrink:0}.ppb-hero select{padding:10px 13px;border:1px solid #bed2ec;border-radius:7px;background:white;color:#1e4779;font:inherit;min-width:150px}
.ppb-status{margin:12px 0;color:#526784;font-size:clamp(15px, 14px + .12vw, 17px);line-height:1.7}
.ppb-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:12px 0}.ppb-cards article{background:#fff;border:1px solid #dce5ef;border-radius:11px;padding:15px 18px;min-width:0}.ppb-cards article.average{background:#edf4ff;border-color:#a9c5eb}
.ppb-cards h3{font-size:clamp(16px, 15px + .12vw, 18px);font-weight:600;margin:0 0 8px;color:#516580}.ppb-cards strong{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px;font-size:clamp(35px, 34px + .12vw, 37px);line-height:1.2;font-variant-numeric:tabular-nums}.ppb-cards small{font-size:clamp(14px, 13px + .12vw, 16px);color:#526784;font-weight:400}.ppb-cards p{margin:8px 0 0;font-size:clamp(14px, 13px + .12vw, 16px);line-height:1.6;color:#526784;overflow-wrap:anywhere}
.pig-price-board .up{color:#ad2940}.pig-price-board .down{color:#218450}.pig-price-board .flat{color:#64748b}.pig-price-board .unknown,.pig-price-board .missing{color:#68768a}
.research-theme .pig-price-board .ppb-body .up{color:#ad2940}.research-theme .pig-price-board .ppb-body .down{color:#218450}
.ppb-breadth-values{display:flex;gap:16px;align-items:baseline;flex-wrap:wrap;font-size:clamp(15px, 14px + .12vw, 17px)}.ppb-breadth-values b{font-size:clamp(32px, 31px + .12vw, 34px);margin-right:4px;font-variant-numeric:tabular-nums}
.ppb-movers{display:flex;flex-wrap:wrap;gap:8px 24px;padding:10px 15px;border-radius:8px;background:#f1f5fa;font-size:clamp(15px, 14px + .12vw, 17px);line-height:1.7;color:#526784}.ppb-movers strong{font-size:clamp(18px, 17px + .12vw, 20px);font-variant-numeric:tabular-nums}.ppb-movers em{font-style:normal;color:#526784}
.ppb-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:14px 0}.ppb-toolbar p{font-size:clamp(15px, 14px + .12vw, 17px);color:#526784;margin:0}.ppb-modes{display:flex;gap:5px;flex-wrap:wrap}.ppb-modes button{padding:9px 14px;background:#fff;border:1px solid #dce5ef;border-radius:7px;color:#526784;font:inherit;font-size:clamp(15px, 14px + .12vw, 17px);cursor:pointer}.ppb-modes button.active{background:#235da5;border-color:#235da5;color:white}
.ppb-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}.ppb-layout [hidden]{display:none}.ppb-map-panel,.ppb-table-panel{background:#fff;border:1px solid #dce5ef;border-radius:12px;overflow:hidden;min-width:0}.ppb-layout header{padding:16px 20px 10px}.ppb-layout h3{font-size:clamp(19px, 18px + .12vw, 21px);margin:0 0 5px}.ppb-layout header p{font-size:clamp(15px, 14px + .12vw, 17px);line-height:1.6;color:#526784;margin:0}
.ppb-legend{display:flex;flex-wrap:wrap;gap:7px 18px;padding:0 20px;font-size:clamp(14px, 13px + .12vw, 16px);color:#526784}.ppb-legend span:before{content:"";display:inline-block;width:9px;height:9px;background:currentColor;border-radius:2px;margin-right:5px}.ppb-legend .unknown:before{background:#d3dddf}.ppb-legend span:last-child:before{background:#f1f4f2;border:1px solid #c9d3dc}
.ppb-map-content{display:grid;grid-template-columns:minmax(0,1fr) 350px;align-items:center;gap:8px;padding-right:20px}.ppb-map{width:100%;min-width:0;height:1350px;display:flex;align-items:center;justify-content:center;color:#526784;font-size:clamp(16px, 15px + .12vw, 18px)}.ppb-map-note{font-size:clamp(14px, 13px + .12vw, 16px);line-height:1.7;color:#526784;padding:0 20px 13px;margin:0}
.ppb-quick-prices{background:#f6f8fb;border:1px solid #e5ebf2;border-radius:9px;padding:12px;margin:14px 0}.ppb-quick-prices h4{font-size:clamp(17px, 16px + .12vw, 19px);margin:0 0 9px}.ppb-quick-prices h4 small{font-size:clamp(14px, 13px + .12vw, 16px);color:#526784;font-weight:400;margin-left:5px}.ppb-quick-region{display:grid;grid-template-columns:32px minmax(0,1fr);gap:8px;padding:9px 0;border-top:1px solid #e3eaf2}.ppb-quick-region h5{font-size:clamp(14px, 13px + .12vw, 16px);margin:3px 0;color:#526784}.ppb-quick-region>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px 7px}.ppb-quick-region>div>span{display:flex;flex-wrap:wrap;gap:2px 4px;font-size:clamp(14px, 13px + .12vw, 16px)}.ppb-quick-region b{font-size:clamp(16px, 15px + .12vw, 18px);font-variant-numeric:tabular-nums}
.ppb-table-scroll{overflow:auto}.ppb-table-panel table{width:100%;border-collapse:collapse;font-size:clamp(16px, 15px + .12vw, 18px);text-align:right;font-variant-numeric:tabular-nums}.ppb-table-panel th,.ppb-table-panel td{padding:11px 20px;border-bottom:1px solid #edf1f6;white-space:nowrap}.ppb-table-panel thead th{position:sticky;top:0;background:#f5f8fc;color:#526784;font-weight:500;z-index:1}.ppb-table-panel th:first-child{text-align:left}.ppb-table-panel thead small{display:block;font-size:clamp(14px, 13px + .12vw, 16px);margin-top:3px}.ppb-table-panel tbody th{font-weight:500}.ppb-table-panel tbody td:nth-child(2){font-size:clamp(18px, 17px + .12vw, 20px);font-weight:700}.ppb-region{background:#eff5fc;color:#295b98}.ppb-region th{font-size:clamp(16px, 15px + .12vw, 18px);letter-spacing:1px}.ppb-table-panel [data-province]{cursor:pointer}.ppb-table-panel [data-province]:hover,.ppb-table-panel [data-province].selected{background:#e7f0fe}.ppb-forecast{display:inline-block;margin-left:4px;padding:1px 3px;font-size:clamp(13px, 12px + .12vw, 15px);font-weight:400;color:#80601f;background:#fff6de}
.ppb-sources{margin:16px 0;padding:13px 18px;background:#edf3fa;border:1px solid #d9e4f1;border-radius:10px;font-size:clamp(15px, 14px + .12vw, 17px);color:#526784;line-height:1.8}.ppb-sources summary{cursor:pointer;font-weight:600}.ppb-sources ul{padding-left:18px;overflow-wrap:anywhere}.ppb-empty{text-align:center;background:#fff;border:1px solid #dce5ef;border-radius:12px;padding:50px 25px;margin-top:18px}.ppb-empty h3{font-size:clamp(21px, 20px + .12vw, 23px);color:#365b86}.ppb-empty p{font-size:clamp(16px, 15px + .12vw, 18px);line-height:1.9;color:#526784}.ppb-warning{font-size:clamp(15px, 14px + .12vw, 17px);padding:12px 16px;color:#946522;background:#fff6e3;border-radius:7px}
.pig-price-board button:focus-visible,.pig-price-board select:focus-visible,.pig-price-board tr:focus-visible,.pig-price-board summary:focus-visible{outline:2px solid #2563eb;outline-offset:2px}
@media(max-width:1100px){.ppb-map-content{grid-template-columns:minmax(0,1fr);padding-right:0}.ppb-quick-prices{margin:0 16px 14px}.ppb-quick-region>div{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:1000px){.ppb-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.ppb-map{height:1050px}}
@media(max-width:650px){.ppb-quick-region>div{grid-template-columns:repeat(3,minmax(0,1fr))}.ppb-quick-prices{margin:0 12px 12px}}
@media(max-width:650px){.ppb-hero{padding:17px 18px;align-items:start;flex-direction:column;gap:14px}.ppb-hero h2{font-size:clamp(25px, 24px + .12vw, 27px)}.ppb-hero label{flex-direction:row;align-items:center}.ppb-cards{gap:9px}.ppb-cards article{padding:12px}.ppb-cards strong{font-size:clamp(30px, 29px + .12vw, 32px)}.ppb-cards h3{font-size:clamp(15px, 14px + .12vw, 17px)}.ppb-breadth-values{gap:8px}.ppb-breadth-values b{font-size:clamp(26px, 25px + .12vw, 28px);margin-right:2px}.ppb-toolbar{align-items:start;flex-direction:column}.ppb-map{height:520px}.ppb-layout header{padding:14px 14px 9px}.ppb-legend{padding:0 14px;gap:6px 12px}.ppb-map-note{padding:0 14px 12px}.ppb-table-panel th,.ppb-table-panel td{padding:10px 12px}.ppb-table-panel table{font-size:clamp(15px, 14px + .12vw, 17px)}.ppb-movers{gap:4px 14px}.ppb-movers>span:first-child{width:100%}.ppb-empty{padding:35px 18px}}
