.parkinsons-db-meter {
  max-width: 760px;
  margin: 30px auto;
  padding: 45px 35px;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 24px;
  box-shadow: 0 12px 35px rgba(0,0,0,0.07);
  text-align: center;
  font-family: Arial, sans-serif;
}
.parkinsons-db-meter .db-title-wrap { max-width: 600px; margin: 0 auto 28px; }
.parkinsons-db-meter .db-small-title { display:inline-block; font-size:12px; font-weight:700; letter-spacing:2px; color:#3273dc; margin-bottom:10px; }
.parkinsons-db-meter .db-title-wrap h2 { font-size:32px; line-height:1.2; margin:0 0 12px; color:#172033; }
.parkinsons-db-meter .db-title-wrap p { margin:0; font-size:16px; line-height:1.7; color:#667085; }
.parkinsons-db-meter .voice-wave { height:90px; display:flex; align-items:center; justify-content:center; gap:5px; margin:20px auto 25px; padding:10px; overflow:hidden; }
.parkinsons-db-meter .voice-wave span { width:5px; height:15px; border-radius:20px; background:#3273dc; transition:height .1s ease; opacity:.85; }
.parkinsons-db-meter .voice-wave.active span { animation:soundIdle .9s infinite ease-in-out alternate; }
.parkinsons-db-meter .voice-wave.active span:nth-child(2n) { animation-delay:.1s; }
.parkinsons-db-meter .voice-wave.active span:nth-child(3n) { animation-delay:.2s; }
.parkinsons-db-meter .voice-wave.active span:nth-child(4n) { animation-delay:.3s; }
@keyframes soundIdle { from { height:12px; } to { height:48px; } }
.parkinsons-db-meter .db-gauge { position:relative; width:320px; max-width:100%; height:220px; margin:0 auto; }
.parkinsons-db-meter .db-svg { width:100%; height:190px; overflow:visible; }
.parkinsons-db-meter .gauge-bg,
.parkinsons-db-meter .gauge-progress { fill:none; stroke-width:15; stroke-linecap:round; }
.parkinsons-db-meter .gauge-bg { stroke:#edf1f5; }
.parkinsons-db-meter .gauge-progress { stroke:#3273dc; stroke-dasharray:251; stroke-dashoffset:251; transition:stroke-dashoffset .15s linear, stroke .3s ease; }
.parkinsons-db-meter .db-reading { position:absolute; left:50%; top:62%; transform:translate(-50%,-50%); width:100%; }
.parkinsons-db-meter .db-reading > div { display:flex; justify-content:center; align-items:baseline; gap:5px; }
.parkinsons-db-meter [data-pvdm-number] { font-size:58px; line-height:1; font-weight:700; color:#172033; }
.parkinsons-db-meter .db-reading small { font-size:20px; font-weight:600; color:#526071; }
.parkinsons-db-meter .db-reading strong { display:block; margin-top:8px; font-size:15px; color:#667085; }
.parkinsons-db-meter .db-labels { position:absolute; width:270px; left:50%; top:148px; transform:translateX(-50%); display:flex; justify-content:space-between; color:#7a8494; font-size:12px; }
.parkinsons-db-meter .db-button { border:0; outline:none; background:#3273dc; color:#fff; padding:15px 28px; border-radius:10px; font-size:16px; font-weight:600; cursor:pointer; min-width:220px; transition:all .25s ease; }
.parkinsons-db-meter .db-button:hover { transform:translateY(-2px); box-shadow:0 8px 22px rgba(50,115,220,.25); }
.parkinsons-db-meter .db-button.measuring { background:#d94b4b; }
.parkinsons-db-meter .mic-icon { margin-right:7px; }
.parkinsons-db-meter .db-permission { margin:12px 0 0; font-size:13px; color:#8a94a3; }
.parkinsons-db-meter .db-tip { display:flex; align-items:flex-start; text-align:left; gap:14px; max-width:570px; margin:30px auto 0; padding:18px 20px; background:#f6f9ff; border:1px solid #dce8ff; border-radius:14px; }
.parkinsons-db-meter .tip-icon { font-size:24px; }
.parkinsons-db-meter .db-tip strong { color:#172033; display:block; font-size:15px; margin-bottom:4px; }
.parkinsons-db-meter .db-tip p { margin:0; color:#606b7c; line-height:1.5; font-size:14px; }
@media(max-width:600px) {
  .parkinsons-db-meter { padding:32px 18px; border-radius:18px; }
  .parkinsons-db-meter .db-title-wrap h2 { font-size:26px; }
  .parkinsons-db-meter [data-pvdm-number] { font-size:48px; }
  .parkinsons-db-meter .db-gauge { width:280px; }
  .parkinsons-db-meter .db-button { width:100%; }
}
