.protein-decision{margin:28px auto 0;padding:18px 0;border-top:2px solid var(--ink);border-bottom:1px solid var(--rule)}
.protein-decision h2{margin:0 0 10px;font-family:var(--display);font-size:22px;color:var(--ink)}
.protein-decision-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.protein-decision-grid p{margin:0;padding:5px 16px;border-left:1px solid var(--rule);font-size:13px;line-height:1.65;color:var(--muted)}
.protein-decision-grid p:first-child{padding-left:0;border-left:0}
.protein-decision-grid strong{display:block;margin-bottom:2px;color:var(--ink);font-size:13px}
.protein-brand-select{display:flex;align-items:center;gap:10px;margin:0 0 10px;padding:12px 0 8px}
.protein-brand-select label{font-size:13px;font-weight:800;color:var(--ink)}
.protein-brand-select select{min-height:44px;min-width:220px;max-width:100%;border:1px solid var(--rule-dark);border-radius:6px;background:var(--paper);color:var(--ink);font:inherit;font-size:13px;padding:7px 34px 7px 10px}
.protein-price-axis-note{margin:0 0 14px;padding:9px 0 12px;border-bottom:1px solid var(--rule);font-size:12px;line-height:1.65;color:var(--muted)}
.protein-price-axis-note strong{color:var(--ink)}
.protein-unit-cost{display:block;font-weight:900;font-variant-numeric:tabular-nums;color:var(--ink)}
.protein-package-price{display:block;margin-top:3px;font-size:11px;font-weight:700;line-height:1.4;color:var(--muted);white-space:normal}
.protein-show-more-wrap{display:flex;justify-content:center;padding:18px 0 4px}
.protein-show-more{min-height:44px;border:1px solid var(--ink);border-radius:7px;background:var(--paper);color:var(--ink);font:inherit;font-size:13px;font-weight:800;padding:9px 18px;cursor:pointer}
.protein-show-more:hover{background:var(--paper2)}
.price-item.is-batch-hidden{display:none}
@media(max-width:760px){
  .protein-decision{margin-top:20px;padding:15px 0}
  .protein-decision h2{font-size:19px}
  .protein-decision-grid{grid-template-columns:1fr 1fr}
  .protein-decision-grid p{padding:8px 12px;border-left:0;border-top:1px solid var(--rule)}
  .protein-decision-grid p:nth-child(odd){padding-left:0;padding-right:12px;border-right:1px solid var(--rule)}
  .protein-decision-grid p:nth-child(-n+2){border-top:0}
  .pp-filter{flex-wrap:nowrap!important;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none;padding-bottom:8px!important}
  .pp-filter::-webkit-scrollbar{display:none}
  .pp-filter button{flex:0 0 auto}
  .protein-brand-select{display:block;padding:10px 0 8px}
  .protein-brand-select label{display:block;margin-bottom:6px}
  .protein-brand-select select{width:100%;min-width:0}
  .protein-price-axis-note{font-size:12px;padding:7px 0 12px}
  .brand-strip{display:none!important}
  .pp-legend{display:none!important}
  .price-item>summary{grid-template-columns:minmax(0,1fr) minmax(112px,auto)!important;grid-template-areas:"name value" "open open"!important;align-items:start!important;gap:8px 12px!important;padding:16px 0!important}
  .price-name strong{font-size:14px!important;line-height:1.45!important}
  .price-name span{font-size:11px!important;margin-bottom:2px}
  .price-tags{margin-top:7px!important}
  .basis-tag,.add-tag{font-size:11px!important;line-height:1.45!important}
  .price-track{display:none!important}
  .price-value{font-size:14px!important;line-height:1.35!important;padding-top:2px!important;color:var(--ink);text-align:right!important;max-width:150px}
  .protein-package-price{margin-top:5px;font-size:11px;line-height:1.35}
  .price-open{justify-self:start!important;display:inline-flex;align-items:center;min-height:36px;padding:4px 10px;border:1px solid var(--rule-dark);border-radius:6px;color:var(--ink)!important;font-size:12px!important}
  .price-open::after{content:"詳細を見る"!important}
  .price-item[open] .price-open::after{content:"詳細を閉じる"!important}
  .price-detail{padding:12px 0 18px!important}
  .detail-row{grid-template-columns:minmax(0,1fr) auto!important;gap:8px 12px!important;padding:8px 0!important}
  .detail-track{display:none!important}
  .detail-label,.detail-value{font-size:12px!important}
  .detail-value{font-variant-numeric:tabular-nums}
}
@media(max-width:480px){
  .protein-decision-grid{grid-template-columns:1fr}
  .protein-decision-grid p,.protein-decision-grid p:nth-child(odd){padding:8px 0;border-right:0;border-top:1px solid var(--rule)}
  .protein-decision-grid p:first-child{border-top:0}
  .price-item>summary{grid-template-columns:minmax(0,1fr) 124px!important}
  .price-value{font-size:13px!important;max-width:124px}
  .protein-package-price{font-size:10.5px}
}
