.ppd-measurement { margin: 14px 0 8px; }
.ppd-card { border: 1px solid rgba(0,0,0,.08); border-radius: 12px; padding: 14px; background: #fff; }
.ppd-card__head { margin-bottom: 10px; }
.ppd-title { font-weight: 700; font-size: 16px; line-height: 1.2; }
.ppd-sub { font-size: 13px; opacity: .75; margin-top: 4px; }
.ppd-grid { display: grid; grid-template-columns: 1fr; gap: 10px; }
@media (min-width: 520px) { .ppd-grid { grid-template-columns: 1fr 1fr; } }
.ppd-hint { display: block; margin-top: 6px; font-size: 12px; opacity: .7; }
.ppd-live { margin: 10px 0 6px; padding: 10px 12px; border-radius: 10px; background: rgba(0,0,0,.03); }
.ppd-live__line { display:flex; align-items:center; justify-content:space-between; gap: 10px; padding: 4px 0; }
.ppd-breakdown { font-size: 12px; opacity: .8; margin-top: 6px; line-height: 1.4; }
.ppd-error { margin-top: 8px; font-size: 13px; color: #b00020; }
.ppd-section { margin-top: 12px; }
.ppd-section__title { font-weight: 700; font-size: 13px; margin-bottom: 8px; }
.ppd-chips { display:flex; gap: 8px; overflow:auto; -webkit-overflow-scrolling: touch; padding-bottom: 2px; }
.ppd-chip { display:flex; align-items:center; gap: 8px; border: 1px solid rgba(0,0,0,.10); border-radius: 999px; padding: 8px 10px; cursor:pointer; white-space:nowrap; user-select: none; }
.ppd-chip input { margin: 0; }
.ppd-chip__swatch { width: 16px; height: 16px; border-radius: 50%; border: 1px solid rgba(0,0,0,.12); background: rgba(0,0,0,.08); }
.ppd-radios { display:grid; gap: 8px; }
.ppd-radio { display:flex; align-items:flex-start; gap: 10px; border: 1px solid rgba(0,0,0,.10); border-radius: 10px; padding: 10px; cursor:pointer; user-select:none; }
.ppd-radio input { margin-top: 2px; }
