/* layout .podbor__actions живёт в podbor-v2.css — здесь только кнопка микрофона и оверлей */
.podbor__mic{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  width:112px;
  min-height:68px;
  padding:0 12px;
  border:1px solid rgba(47,125,57,.28);
  border-radius:16px;
  background:#fff;
  color:#1f6f2d;
  cursor:pointer;
  line-height:1;
  box-shadow:0 12px 26px rgba(25,78,35,.10),inset 0 0 0 1px rgba(255,255,255,.7);
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease,color .16s ease;
}
.podbor__mic::before{
  content:"";
  position:absolute;
  inset:9px;
  border-radius:13px;
  background:#edf7f0;
  opacity:0;
  transition:opacity .16s ease;
}
.podbor__mic:hover{
  transform:translateY(-1px);
  border-color:#3a7d3a;
  color:#165a24;
  box-shadow:0 16px 34px rgba(25,78,35,.16),inset 0 0 0 1px rgba(255,255,255,.8);
}
.podbor__mic:hover::before{opacity:1}
.podbor__mic:active{transform:translateY(0)}
.podbor__mic-icon{
  position:relative;
  z-index:1;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.podbor__mic-label{position:relative;z-index:1;font-size:13px;font-weight:800}
.podbor__mic-icon svg{
  width:28px;
  height:28px;
  fill:none;
  stroke:currentColor;
  stroke-width:2.35;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.podbor__mic--recording{
  border-color:#2f7d39;
  background:#2f7d39;
  color:#fff;
}
.podbor__mic--recording::before{
  opacity:1;
  background:rgba(255,255,255,.14);
}
@media (max-width:780px){
  .podbor__mic{width:100%;min-height:56px;border-radius:17px}
  .podbor__mic::before{inset:8px;border-radius:14px}
  .podbor__mic-icon svg{width:27px;height:27px}
}
.fv-overlay{position:fixed;inset:0;background:rgba(20,40,20,.55);display:flex;align-items:center;justify-content:center;z-index:99999;padding:16px 16px calc(16px + env(safe-area-inset-bottom,0px))}
.fv-card{background:#fff;border-radius:20px;padding:28px 32px;width:min(92vw,360px);max-height:92dvh;overflow:auto;text-align:center;box-shadow:0 20px 60px rgba(0,0,0,.3)}
.fv-dot{width:14px;height:14px;border-radius:50%;background:#e03b3b;margin:0 auto 10px;animation:fvpulse 1.1s infinite}
@keyframes fvpulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.78)}}
.fv-title{font-size:18px;font-weight:700;color:#2f5d2f;margin-bottom:14px}
.fv-eq{display:flex;gap:4px;justify-content:center;align-items:flex-end;height:48px;margin-bottom:10px}
.fv-eq span{width:6px;height:100%;background:linear-gradient(#3a7d3a,#7bc47b);border-radius:3px;transform:scaleY(.15);transform-origin:bottom;transition:transform .07s linear}
.fv-timer{font-variant-numeric:tabular-nums;color:#5a6b5a;margin-bottom:4px}
.fv-hint{font-size:13px;color:#5f6f5f;margin-bottom:16px}
.fv-actions{display:flex;gap:10px;justify-content:center}
.fv-stop{min-height:48px;padding:10px 26px;border:0;border-radius:12px;background:#3a7d3a;color:#fff;font-size:15px;font-weight:700;cursor:pointer}
.fv-cancel{min-height:48px;padding:10px 20px;border:1px solid #cfe0cf;border-radius:12px;background:#fff;color:#5a6b5a;font-size:15px;font-weight:700;cursor:pointer}
.fv-cancel:hover{border-color:#a9cdaa;color:#37603a}
.fv-spin{width:34px;height:34px;border:3px solid #d9ead9;border-top-color:#3a7d3a;border-radius:50%;margin:6px auto 14px;animation:fvspin .8s linear infinite}
@keyframes fvspin{to{transform:rotate(360deg)}}
@media (max-width:480px){.fv-card{padding:24px}}
@media (prefers-reduced-motion:reduce){
  .fv-dot,.fv-spin{animation:none}
  .fv-eq span{transition:none}
}
