/* 물 섭취량·수분 섭취 계산기 전용 CSS (2026-10-09, 2026-10-19 재배치). 입력 막대·결과·하루 나눠 마시기 띠·기준 비교 막대·운동 보충 wt-*. 공용 부품은 assets/v2.css, 물결은 pomodoro .pm-water와 같은 마스크 */
/* 위 입력 막대: 대상 | 나이 | 체중 | 단위가 한 줄(나이·체중 칸이 남는 폭을 채움), 아래 줄은 도움말 | 예시·링크, 상태는 그 아래 */
.wt-bar{display:flex;flex-wrap:wrap;align-items:flex-start;gap:10px 14px;padding:14px 18px;border-bottom:1px solid var(--soft)}
.wt-work .v2-f>span.v2-label{display:block;margin:0 0 5px}
.wt-bar .v2-seg{flex-wrap:nowrap}
.wt-bar .v2-seg button{height:var(--v2-ctl,42px);padding:0 13px;white-space:nowrap} /* 나이·체중 칸 옆에 나란히 서므로 칸 높이에 맞춤 */
.wt-f-age{flex:1 1 84px;min-width:0}
.wt-f-w{flex:1.4 1 112px;min-width:0}
.wt-btns{display:flex;flex-wrap:wrap;gap:6px;margin-left:auto;align-self:center}
.wt-bar-help{flex:1 1 280px;align-self:center}
.wt-bar .v2-status{flex:1 1 100%}
.wt-bar .v2-status:empty{display:none}
.wt-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 12px}
.wt-help{margin:0;font-family:var(--sans);font-size:12px;line-height:1.55;color:var(--muted)}
.wt-help:empty{display:none}
/* 결과: 큰 수·문장 | 2×2 칸, 주의는 아래 한 줄 */
.wt-head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:4px 24px;padding:16px 18px;border-bottom:1px solid var(--soft)}
.wt-head-main>.v2-label{display:block;margin-bottom:6px}
.wt-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px;align-content:center;padding-left:20px;border-left:1px solid var(--soft)}
.wt-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}
.wt-notes{grid-column:1/-1;margin:10px 0 0;padding:10px 0 0 18px;border-top:1px solid var(--soft);font-family:var(--sans);font-size:12px;line-height:1.55;color:var(--muted)}
.wt-notes:empty{display:none}
.wt-notes li+li{margin-top:3px}
/* 하루 나눠 마시기: 일어나는 시각~잠드는 시각을 2시간 잔으로 나누고(너비 = 구간 길이), 마신 만큼 앞 잔부터 차오름. 지난 구간에 덜 찬 잔은 점선 accent */
.wt-day{padding:14px 18px 16px;border-bottom:1px solid var(--soft)}
.wt-day-h{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:10px 18px;margin-bottom:8px}
.wt-day-t>.v2-label{display:block;margin-bottom:4px}
.wt-total{margin:0;font-family:var(--sans);font-variant-numeric:tabular-nums}
.wt-total b{font-size:22px;font-weight:800;color:var(--ink)}
.wt-total span{font-size:14px;font-weight:650;color:var(--muted)}
.wt-times{display:grid;grid-template-columns:repeat(2,minmax(0,140px));gap:10px 12px}
.wt-time{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;box-sizing:border-box}
.wt-time:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.is-invalid .wt-time{border-color:var(--accent)}
.wt-plan{margin-bottom:10px}
.wt-strip{position:relative;padding-top:18px;margin-bottom:10px}
.wt-strip[hidden],.wt-now[hidden]{display:none}
.wt-blks{display:flex;gap:4px}
.wt-blk{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:stretch;gap:3px}
.wt-amt{display:block;text-align:center;font-family:var(--sans);font-size:11px;font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden}
.wt-glass{position:relative;display:block;height:60px;border:2px solid var(--line);border-top-width:0;border-radius:0 0 8px 8px;overflow:hidden;background:var(--paper)}
.wt-blk.is-now .wt-glass{background:var(--accent-wash);border-color:var(--accent)}
.wt-blk.is-now .wt-amt{color:var(--ink)}
.wt-blk.is-due .wt-glass{border-style:dashed;border-color:var(--accent)}
.wt-w{position:absolute;left:0;right:0;bottom:0;height:0;background:var(--accent);opacity:.45;transition:height .6s var(--ease,ease)}
.wt-blk.is-full .wt-w{opacity:.7}
.wt-w::before{content:"";position:absolute;left:0;right:0;top:-4px;height:5px;background:inherit;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='6' viewBox='0 0 40 6'%3E%3Cpath d='M0 3 Q10 0 20 3 T40 3 V6 H0Z'/%3E%3C/svg%3E") repeat-x 0 0/20px 5px;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='6' viewBox='0 0 40 6'%3E%3Cpath d='M0 3 Q10 0 20 3 T40 3 V6 H0Z'/%3E%3C/svg%3E") repeat-x 0 0/20px 5px}
.wt-blk.is-full .wt-w::before,.wt-blk.is-empty .wt-w::before{display:none}
.wt-blk.is-pour .wt-w::before{display:block;animation:wt-wave .8s linear 3}
@keyframes wt-wave{to{-webkit-mask-position:20px 0;mask-position:20px 0}}
.wt-axis{position:relative;height:16px;margin-top:4px;font-family:var(--sans);font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}
.wt-axis em{position:absolute;top:0;font-style:normal;white-space:nowrap;transform:translateX(-50%)}
.wt-axis em:first-child{transform:none}
.wt-axis em.end{transform:translateX(-100%)}
.wt-now{position:absolute;top:0;bottom:20px;width:0;border-left:2px solid var(--ink);pointer-events:none;transition:left .35s var(--ease,ease)}
.wt-now em{position:absolute;top:0;left:0;transform:translateX(-50%);padding:0 5px;border-radius:3px;background:var(--ink);color:var(--paper);font-family:var(--sans);font-size:10.5px;font-weight:700;font-style:normal;line-height:15px;white-space:nowrap}
.wt-now.is-l em{transform:translateX(-2px)}
.wt-now.is-r em{transform:translateX(calc(-100% + 2px))}
.wt-pace{margin:0 0 2px;font-family:var(--sans);font-size:13.5px;font-weight:650;line-height:1.5;color:var(--ink)}
.wt-pace:empty{display:none}
.wt-add{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:10px 0}
.wt-addin{width:112px}
.wt-chips button{height:auto;min-height:30px;padding:4px 10px}
.wt-box{padding:14px 18px 16px;min-width:0}
.wt-box+.wt-box{border-top:1px solid var(--soft)}
.wt-box>.v2-label{display:block;margin-bottom:8px}
.wt-box-h{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 14px;margin-bottom:8px}
/* 운동 보충: 네 칸 한 줄 → 결과 네 칸 한 줄(좁으면 두 줄) */
.wt-exbox{container:wtex / inline-size}
.wt-row4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 12px;margin-bottom:10px}
/* 기준 비교: 이름 | 막대(총수분 연한 색 + 마실 양 진한 색) | 값. 대상·나이가 바뀌면 너비가 부드럽게 바뀜(R45) */
.wt-ruler{list-style:none;margin:0 0 8px;padding:0}
.wt-ruler li{display:grid;grid-template-columns:minmax(0,190px) minmax(0,1fr) 104px;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)}
.wt-ruler .nm small{display:block;font-size:11px;color:var(--muted);line-height:1.3}
.wt-ruler .trk{position:relative;height:12px;border-radius:6px;background:var(--soft)}
.wt-ruler .trk b,.wt-ruler .trk i{position:absolute;left:0;top:0;bottom:0;width:0;border-radius:6px;transition:width .45s var(--ease,ease)}
.wt-ruler .trk b{background:var(--line)}
.wt-ruler .trk i{background:var(--muted);opacity:.75}
.wt-ruler .v{text-align:right;font-variant-numeric:tabular-nums;color:var(--muted);line-height:1.3}
.wt-ruler .v small{display:block;font-size:10.5px}
.wt-ruler li.is-on{border-color:var(--accent);background:var(--accent-wash)}
.wt-ruler li.is-on .trk b{background:var(--accent);opacity:.35}
.wt-ruler li.is-on .trk i{background:var(--accent);opacity:1}
.wt-ruler li.is-on .nm,.wt-ruler li.is-on .v{font-weight:750;color:var(--ink)}
.wt-ruler li.ax{padding-top:0;padding-bottom:0}
.wt-ruler li.ax .trk{height:auto;background:none;display:flex;justify-content:space-between;font-size:10.5px;color:var(--muted)}
.wt-ruler li.ax em{font-style:normal}
.wt-key{display:inline-block;width:10px;height:10px;margin:0 4px 0 0;border-radius:2px;background:var(--line);vertical-align:-1px}
.wt-key--drink{background:var(--muted)}
/* 운동 보충 결과 */
.wt-ex{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 14px;margin-bottom:8px;font-family:var(--sans)}
.wt-ex:empty{display:none}
.wt-ex b{display:block;margin-top:2px;font-size:16px;font-weight:750;color:var(--ink);font-variant-numeric:tabular-nums}
.wt-ex .is-warn b{color:var(--accent)}
.wt-ex p{grid-column:1/-1;margin:0;font-size:12px;line-height:1.55;color:var(--muted)}
@media (prefers-reduced-motion:reduce){ .wt-ruler .trk b,.wt-ruler .trk i,.wt-w,.wt-now{transition:none} .wt-blk.is-pour .wt-w::before{animation:none} }
@container wtex (max-width:560px){ .wt-row4,.wt-ex{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media (max-width:720px){
  .wt-work{display:flex;flex-direction:column}
  .wt-head{order:-1;grid-template-columns:minmax(0,1fr)}
  .wt-grid{padding:12px 0 0;border-left:0;border-top:1px solid var(--soft);margin-top:10px}
}
@media (max-width:480px){
  .wt-bar,.wt-head,.wt-day,.wt-box{padding-left:12px;padding-right:12px}
  .wt-f-who{flex:1 1 100%}
  .wt-f-who .v2-seg{display:flex}
  .wt-f-who .v2-seg button{flex:1 1 auto;padding:0 6px}
  .wt-blks{gap:2px}
  .wt-glass{height:52px;border-radius:0 0 6px 6px}
  .wt-times{flex:1 1 100%;grid-template-columns:repeat(2,minmax(0,1fr))}
  .wt-add{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .wt-add .wt-chips{grid-column:1/-1;display:flex}
  .wt-add .wt-chips button{flex:1 1 0;min-width:0;padding:4px 6px}
  .wt-addin{width:auto}
  .wt-ruler li{grid-template-columns:minmax(0,104px) minmax(0,1fr) 80px;gap:8px}
}
