.gp-page{min-width:0;color:#0c332f}.gp-page [hidden]{display:none!important}.gp-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin:22px 0 18px}.gp-heading h2{font-size:26px;margin:0 0 7px}.gp-heading p{font-size:13px;color:#62736d;margin:0;line-height:1.5}.gp-grid{display:grid;gap:14px;margin-bottom:16px}.gp-four{grid-template-columns:repeat(4,minmax(0,1fr))}.gp-three,.gp-context{grid-template-columns:repeat(3,minmax(0,1fr))}.gp-card{padding:18px;background:#fff;border:1px solid #d5e1dd;border-radius:16px;min-width:0;box-shadow:0 6px 18px #073f3708}.gp-label{font-size:11px;text-transform:uppercase;letter-spacing:.05em;font-weight:800;color:#5e756c}.gp-value{font-size:clamp(22px,2vw,31px);font-weight:800;line-height:1.2;margin-top:9px;color:#07162f;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.gp-sub{font-size:12px;color:#62736d;line-height:1.5;margin:7px 0 0}.gp-card-year{margin:3px 0 11px}.gp-compare{display:flex;gap:8px;flex-wrap:wrap;justify-content:space-between;padding-top:11px;border-top:1px solid #e5ece9}.gp-positive{color:#07883f!important}.gp-negative{color:#bf0028!important}.gp-movement{display:inline-flex;align-items:center;gap:5px;font-weight:800;white-space:nowrap}.gp-movement i{width:7px;height:7px;border-radius:50%;background:currentColor;flex:0 0 7px}.gp-context{display:grid;gap:14px;margin:0 0 20px}.gp-context .gp-card{background:#eef4f1;box-shadow:none}.gp-context .gp-value{font-size:22px}.gp-panel{border:1px solid #d5e1dd;border-radius:18px;padding:20px;background:#fff;min-width:0;margin-bottom:18px;box-shadow:0 6px 18px #073f3706}.gp-panel h3{font-size:18px;margin:0 0 6px;line-height:1.4}.gp-panel-head{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;flex-wrap:wrap}.gp-legend{display:flex;justify-content:flex-end;gap:18px;margin:10px 0;font-size:12px;font-weight:700}.gp-legend i{display:inline-block;width:20px;height:3px;vertical-align:middle;margin-right:6px}.gp-chart{display:block;width:100%;height:auto;touch-action:pan-y pinch-zoom;user-select:none;-webkit-tap-highlight-color:transparent}.gp-chart text{font-family:Roboto,Arial,sans-serif;font-size:12px;fill:#62736d}.gp-chart [data-tip]{cursor:crosshair;outline:none}.gp-chart [data-tip]:focus-visible,.gp-chart .is-selected{stroke:#e2a354;stroke-width:4px}.gp-tooltip{position:fixed;z-index:1000;background:#073f37;color:white;padding:10px 14px;border-radius:10px;font-size:13px;pointer-events:none;max-width:calc(100vw - 16px)}.gp-months{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:18px}.gp-month-card{border:1px solid #d5e1dd;border-radius:13px;padding:14px;min-width:0}.gp-month-card.gp-selected{border-color:#4e8b76;background:#f3f8f5}.gp-month-card h4{margin:0 0 10px;font-size:14px}.gp-month-values{display:grid;grid-template-columns:1fr 1fr;gap:10px}.gp-month-values span{display:block;color:#62736d;font-size:11px}.gp-month-values strong{display:block;font-size:20px;margin-top:4px;font-variant-numeric:tabular-nums;color:#07162f}.gp-month-move{margin-top:10px;padding-top:10px;border-top:1px solid #e5ece9;font-size:12px}.gp-month-move>span:last-child{color:#62736d}.gp-coverage,.gp-notice{font-size:12px;line-height:1.6;color:#62736d}.gp-notice{padding:12px 15px;background:#fff9ec;border:1px solid #e4d3ae;border-radius:12px;margin:0 0 16px}.gp-empty,.gp-loading,.gp-error{padding:22px;background:#f8faf9;border:1px solid #d5e1dd;border-radius:13px;line-height:1.6}.gp-loading,.gp-error{margin:18px 0}.gp-error h2{margin-top:0}.gp-empty{font-size:13px;color:#62736d}.gp-controls{display:flex;gap:10px;flex-wrap:wrap}.gp-control{font-size:11px;font-weight:800;color:#62736d;margin:0;min-width:120px}.gp-control select{display:block;margin-top:5px;font-size:13px;padding:10px 12px;min-height:44px;color:#0c332f}.gp-stock-main{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;margin-bottom:18px}.gp-stock-main .gp-panel{margin-bottom:0}.gp-summary{display:grid;gap:9px;margin-top:15px}.gp-summary-row{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#f5f8f6;border:1px solid #e1e9e5;border-radius:10px;padding:10px 12px;font-size:12px;line-height:1.5}.gp-summary-row span:first-child{color:#62736d}.gp-summary-row b{font-size:13px;text-align:right;font-variant-numeric:tabular-nums}.gp-read{padding:14px;border-radius:12px;background:#eef4f1;font-size:13px;line-height:1.6;margin:12px 0 0}.gp-ytd{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:0 0 18px}.gp-ytd>div{padding:15px;border-radius:14px;background:#073f37;color:white;min-width:0}.gp-ytd span{display:block;font-size:10px;font-weight:700;text-transform:uppercase;color:#d2e4dc}.gp-ytd strong{display:block;font-size:19px;margin-top:6px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.gp-category-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0 12px;border-radius:10px;padding:12px;background:#eef4f1;font-size:14px}.gp-category-title span{font-size:12px;color:#62736d}.gp-ranks{display:grid;grid-template-columns:1fr 1fr;gap:16px}.gp-rank{min-width:0;border:1px solid #d5e1dd;border-radius:14px;padding:14px}.gp-rank h4{margin:0 0 8px;font-size:14px}.gp-breakdown{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}.gp-break-card{border:1px solid #d5e1dd;border-radius:14px;padding:16px;min-width:0}.gp-break-card h4{margin:0 0 14px;font-size:15px}.gp-break-card .gp-summary-row{border:0;background:transparent;padding:7px 0}.gp-report-picker{max-width:550px;font-size:12px;color:#62736d;margin:14px 0 20px}.gp-report-picker select{margin-top:5px}.gp-report-meta{margin:16px 0}.gp-pdf-link{display:inline-block;color:#07594c;font-weight:700;line-height:1.5;padding:9px 0}.gp-pdf{display:block;width:100%;height:850px;border:1px solid #d5e1dd;border-radius:12px}.gp-table-wrap{width:100%;max-width:100%;overflow:auto;container-type:inline-size;margin-top:14px;border-radius:12px;border:1px solid #e0e9e5;outline-offset:3px}.gp-table{border-collapse:separate;border-spacing:0;width:100%;font-size:12px;line-height:1.5;font-variant-numeric:tabular-nums}.gp-table td,.gp-table th{padding:11px 12px;text-align:right;border-bottom:1px solid #e2e9e5;white-space:nowrap;background:white}.gp-table th{font-weight:700}.gp-table th:first-child{text-align:left;white-space:normal;min-width:135px}.gp-table thead th{font-size:11px;color:#46625c;background:#eef4f1;white-space:normal;position:sticky;top:0;z-index:1}.gp-table tr:nth-child(even)>*{background:#f8faf9}.gp-table tr:last-child>*{border-bottom:0}.gp-fit .gp-table{table-layout:fixed}.gp-fit .gp-table th:first-child{width:24%}.gp-table td::before{display:none}.gp-category-button{border:0;background:transparent;text-align:left;padding:4px;min-height:36px;font-size:12px;white-space:normal}.gp-category-button span{font-size:17px;display:inline-block;width:17px}.gp-category-table>.gp-table>tbody>tr>th:first-child{position:sticky;left:0;z-index:1;max-width:190px;background:#f2f7f4}.gp-detail>td{padding:14px!important;background:#eef4f1!important;white-space:normal}.gp-items{max-height:420px}.gp-products{max-height:540px}.gp-products .gp-table th:first-child{min-width:150px;max-width:200px}.gp-products .gp-table td{white-space:normal}.gp-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1250px){.gp-four,.gp-months{grid-template-columns:repeat(2,minmax(0,1fr))}.gp-stock-main{grid-template-columns:1fr}.gp-ranks{grid-template-columns:1fr}.gp-ytd{grid-template-columns:repeat(3,minmax(0,1fr))}.gp-breakdown{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container(max-width:650px){.gp-fit .gp-table,.gp-fit tbody,.gp-products .gp-table,.gp-products tbody{display:block}.gp-fit thead,.gp-products thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.gp-fit tr,.gp-products tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-bottom:1px solid #d5e1dd}.gp-fit .gp-table th:first-child,.gp-products .gp-table th:first-child{grid-column:1/-1;width:auto;min-width:0;max-width:none;background:#eef4f1;text-align:left}.gp-fit td,.gp-products td{text-align:left;white-space:normal;overflow-wrap:anywhere}.gp-fit td::before,.gp-products td::before{content:attr(data-label);display:block;color:#62736d;font-size:10px;margin-bottom:4px;font-weight:400}}
@media(max-width:700px){.gp-heading h2{font-size:23px}.gp-panel{padding:16px}.gp-context{grid-template-columns:1fr}.gp-four,.gp-three{grid-template-columns:1fr}.gp-value{font-size:28px}.gp-controls{width:100%;display:grid;grid-template-columns:1fr 1fr}.gp-controls .gp-control{min-width:0}.gp-controls .gp-control:last-child{grid-column:1/-1}.gp-months{gap:10px}.gp-month-card{padding:12px}.gp-month-values strong{font-size:18px}.gp-month-move{font-size:11px}.gp-ytd{grid-template-columns:1fr 1fr}.gp-ytd>div:last-child{grid-column:1/-1}.gp-ytd strong{font-size:18px}.gp-breakdown{grid-template-columns:1fr}.gp-rank{padding:10px}.gp-chart text{font-size:14px}.gp-report-picker select{font-size:14px}.gp-pdf{height:560px}.gp-category-title{align-items:flex-start;flex-direction:column;gap:5px}}
/* Financial GP comparisons: keep both years' wet, food and total margins visible. */
.gp-financial-comparison .gp-table th:first-child{width:18%;min-width:0}
.gp-financial-comparison .gp-table th:last-child{width:14%}
.gp-financial-comparison .gp-table th,.gp-financial-comparison .gp-table td{padding:11px 8px;font-size:clamp(11px,1.05cqw,12px)}
.gp-source-reports summary{font-family:Montserrat,Arial,sans-serif;font-size:16px;font-weight:700;padding:8px 0;line-height:1.5}
.gp-source-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:16px 0}
.gp-source-list button{text-align:left;font-size:12px;line-height:1.5}
@container(max-width:950px){
 .gp-financial-comparison .gp-table,.gp-financial-comparison tbody{display:block}
 .gp-financial-comparison thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
 .gp-financial-comparison tr{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid #d5e1dd}
 .gp-financial-comparison .gp-table th:first-child{grid-column:1/-1;width:auto;min-width:0;background:#eef4f1}
 .gp-financial-comparison .gp-table td{text-align:left;white-space:normal;overflow-wrap:anywhere;font-size:13px;padding:12px}
 .gp-financial-comparison td::before{content:attr(data-label);display:block;font-size:10px;color:#62736d;margin-bottom:4px}
}
@container(max-width:560px){.gp-financial-comparison tr{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Financial GP targets follow the selected venue and period. */
.gp-target-context{grid-template-columns:repeat(4,minmax(0,1fr))}
.gp-legend{flex-wrap:wrap;gap:10px 18px}
.gp-legend .gp-legend-dashed{height:0;border-top:3px dashed}
.gp-month-target{display:flex;justify-content:space-between;gap:6px;font-size:12px;color:#5877a3;margin-top:12px;font-variant-numeric:tabular-nums}
.gp-venue-target{display:block;margin-top:3px;font-size:11px;font-weight:400;color:#5877a3}
@media(max-width:1250px){.gp-target-context{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.gp-target-context{grid-template-columns:1fr}}
.gp-discounts{border:1px solid #e1e9e5;background:#f5f8f6;border-radius:10px;min-width:0}
.gp-discounts>summary.gp-summary-row{cursor:pointer;list-style:none;border:0;margin:0;background:transparent;min-height:44px;box-sizing:border-box}
.gp-discounts>summary::-webkit-details-marker{display:none}
.gp-discounts>summary::marker{content:''}
.gp-discounts>summary:focus-visible{outline:2px solid #c98a22;outline-offset:2px;border-radius:9px}
.gp-discounts-arrow{width:14px;height:14px;display:inline-block;margin-left:5px;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.8;transition:transform .15s ease}
.gp-discounts[open] .gp-discounts-arrow{transform:rotate(180deg)}
.gp-discounts-explanation{padding:0 12px 12px;font-size:12px;line-height:1.6;color:#46625c;border-top:1px solid #e1e9e5}
.gp-discounts-explanation p{margin:10px 0 0}
.gp-discounts-explanation ul{padding-left:18px;margin:8px 0}
.gp-discounts-explanation li{margin:6px 0}
