/* 단백질 계산기 전용 CSS (2026-10-09). 입력·결과·기준 비교 막대·식품 환산·오늘 먹은 양 pr-*. 공용 부품은 assets/v2.css */
.pr-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border-bottom:1px solid var(--soft)}
.pr-set{display:flex;flex-direction:column;gap:12px;padding:16px 18px;min-width:0}
.pr-set .v2-f>span.v2-label{display:block;margin:0 0 5px}
.pr-segs{display:flex;flex-wrap:wrap;gap:10px 28px} /* 성별·단위 버튼 묶음은 나란한 입력칸이 아니라 접히는 줄 */
.pr-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 12px}
.pr-select{display:block;width:100%;max-width:100%;height:var(--v2-ctl,42px);padding:0 8px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px;font-weight:600}
.pr-select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.pr-help{margin:0;font-family:var(--sans);font-size:12px;line-height:1.55;color:var(--muted)}
.pr-help:empty{display:none}
.pr-btns{display:flex;flex-wrap:wrap;gap:6px}
.pr-set .v2-status:empty{display:none}
.pr-head{padding:16px 18px;min-width:0;border-left:1px solid var(--soft)}
.pr-head>.v2-label{display:block;margin-bottom:6px}
.pr-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;margin-top:14px;padding-top:12px;border-top:1px solid var(--soft)}
.pr-grid b{display:block;margin-top:2px;font-family:var(--sans);font-size:17px;font-weight:750;color:var(--ink);font-variant-numeric:tabular-nums}
.pr-notes{margin:12px 0 0;padding-left:18px;font-family:var(--sans);font-size:12px;line-height:1.55;color:var(--muted)}
.pr-notes:empty{display:none}
.pr-notes li+li{margin-top:3px}
.pr-split{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);border-bottom:1px solid var(--soft)}
.pr-box{padding:14px 18px 16px;min-width:0}
.pr-split .pr-box+.pr-box{border-left:1px solid var(--soft)}
.pr-box>.v2-label{display:block;margin-bottom:8px}
/* 기준 비교·식품: 이름 | 막대 | 값. 체중이 바뀌면 구간 위치·너비가 부드럽게 바뀜(R45) */
.pr-ruler,.pr-foods{list-style:none;margin:0 0 8px;padding:0}
.pr-ruler li,.pr-foods li{display:grid;grid-template-columns:minmax(0,150px) minmax(0,1fr) 84px;gap:10px;align-items:center;padding:5px 6px;border:1px solid transparent;border-radius:var(--radius);font-family:var(--sans);font-size:12.5px;color:var(--ink)}
.pr-foods li{grid-template-columns:minmax(0,110px) minmax(0,1fr) 64px}
.pr-ruler .nm small{display:block;font-size:11px;color:var(--muted);line-height:1.3}
.pr-ruler .trk,.pr-foods .trk{position:relative;height:10px;border-radius:5px;background:var(--soft)}
.pr-ruler .trk b{position:absolute;top:0;bottom:0;border-radius:5px;background:var(--line);transition:left .45s var(--ease,ease),width .45s var(--ease,ease)}
.pr-ruler .trk b.pt{width:4px;margin-left:-2px;top:-3px;bottom:-3px;border-radius:2px}
.pr-foods .trk b{position:absolute;left:0;top:0;bottom:0;border-radius:5px;background:var(--line);transition:width .45s var(--ease,ease)}
.pr-ruler .v,.pr-foods .v{text-align:right;font-variant-numeric:tabular-nums;color:var(--muted)}
.pr-ruler li.is-on{border-color:var(--accent);background:var(--accent-wash)}
.pr-ruler li.is-on .trk b{background:var(--accent)}
.pr-ruler li.is-on .nm,.pr-ruler li.is-on .v{font-weight:750;color:var(--ink)}
.pr-ruler li.ax{padding-top:0;padding-bottom:0}
.pr-ruler li.ax .trk{height:auto;background:none;display:flex;justify-content:space-between;font-style:normal;font-size:10.5px;color:var(--muted)}
.pr-ruler li.ax em{font-style:normal}
/* 오늘 먹은 양: 목표 최소·최대 눈금, 채우면 강조 */
.pr-track-h{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:8px}
.pr-track-h b{font-family:var(--sans);font-size:20px;font-weight:800;font-variant-numeric:tabular-nums}
.pr-meter{position:relative;height:16px;border-radius:8px;background:var(--soft);overflow:hidden;margin-bottom:6px}
.pr-meter i{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--line);transition:width .6s var(--ease,ease)}
.pr-meter i.is-done{background:var(--accent)}
.pr-meter s{position:absolute;top:0;bottom:0;width:2px;margin-left:-1px;background:var(--ink);opacity:.55}
.pr-add{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 8px}
.pr-addin{width:120px}
.pr-chips{margin-bottom:10px}
.pr-chips button{height:auto;min-height:30px;padding:4px 10px}
@media (prefers-reduced-motion:reduce){ .pr-ruler .trk b,.pr-foods .trk b,.pr-meter i{transition:none} }
@media (max-width:860px){ .pr-split{grid-template-columns:minmax(0,1fr)} .pr-split .pr-box+.pr-box{border-left:0;border-top:1px solid var(--soft)} }
@media (max-width:720px){
  .pr-top{display:flex;flex-direction:column}
  .pr-head{order:-1;border-left:0;border-bottom:1px solid var(--soft)}
}
@media (max-width:480px){
  .pr-set,.pr-head,.pr-box{padding-left:12px;padding-right:12px}
  .pr-ruler li{grid-template-columns:minmax(0,112px) minmax(0,1fr) 70px;gap:8px}
  .pr-foods li{grid-template-columns:minmax(0,92px) minmax(0,1fr) 56px;gap:8px}
}
