.hv-phone{max-width:760px;margin:18px auto;font-family:Arial,Helvetica,sans-serif;color:#2b180f}.hv-phone *{box-sizing:border-box}.hv-phone-head{display:flex;gap:16px;align-items:center;padding:18px 20px;background:#4a1d09;color:#fff0bd;border:3px solid #bd6618;border-radius:14px 14px 0 0}.hv-phone-head h3{margin:0 0 4px;color:#fff0bd;font-size:24px}.hv-phone-head p{margin:0;color:#fff0bd}.hv-phone-icon{font-size:40px;line-height:1}.hv-phone-panel{padding:20px;background:#fff0bd;border:3px solid #bd6618;border-top:0}.hv-phone-panel:last-of-type{border-radius:0 0 14px 14px}.hv-phone label{display:block;font-weight:700;margin:0 0 7px}.hv-phone input,.hv-phone select{width:100%;padding:11px 12px;border:2px solid #74320e;border-radius:8px;background:#fff;color:#111;font-size:16px}.hv-phone .hv-btn{display:inline-block;border:0;border-radius:9px;padding:12px 18px;margin-top:12px;background:#74320e;color:#fff;font-size:16px;font-weight:700;cursor:pointer}.hv-phone .hv-btn:hover{filter:brightness(1.08)}.hv-phone .hv-btn:disabled{opacity:.55;cursor:not-allowed}.hv-phone .hv-btn-call{background:#41651f}.hv-phone .hv-btn-danger{background:#9d241d}.hv-phone .hv-btn-secondary{background:#6d5a48}.hv-hidden{display:none!important}.hv-small,.hv-help{font-size:13px;opacity:.82}.hv-help{display:block;margin-top:5px}.hv-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.hv-status-dot{width:15px;height:15px;border-radius:50%;display:inline-block;margin-right:8px;vertical-align:middle;background:#777}.hv-status-live{background:#41651f;box-shadow:0 0 0 5px rgba(65,101,31,.15)}.hv-status-ring{background:#dfa32c;animation:hvPulse .8s infinite alternate}.hv-studio-status{text-align:center}.hv-studio-status h4,.hv-phone-panel h4{font-size:22px;margin:8px 0}.hv-caller-name{font-size:28px;font-weight:700;margin:12px 0}.hv-actions{display:flex;gap:12px;justify-content:center}.hv-call-time{font-family:Consolas,monospace;font-size:27px;font-weight:700;margin:10px 0}.hv-connection-state{margin:8px 0 2px;font-size:14px}.hv-busy{text-align:center}.hv-busy .hv-phone-icon{font-size:55px}.hv-error{background:#fff1ef;border-color:#9d241d}.hv-device-panel{border-bottom:0}.hv-device-title{display:flex;gap:15px;align-items:center;justify-content:space-between}.hv-connected-badge{font-size:13px;font-weight:700;color:#41651f}.hv-meter-row{display:grid;grid-template-columns:160px 1fr;gap:10px;align-items:center;margin-top:12px;font-size:13px;font-weight:700}.hv-meter{height:14px;background:#2b2b2b;border-radius:8px;overflow:hidden}.hv-meter>div{height:100%;width:0%;background:linear-gradient(90deg,#41651f 0 72%,#dfa32c 72% 88%,#9d241d 88%);transition:width .06s linear}.hv-incoming-overlay{position:fixed;z-index:2147483000;inset:0;background:rgba(0,0,0,.68);display:flex;align-items:center;justify-content:center;padding:24px}.hv-incoming-card{width:min(560px,96vw);background:#fff0bd;border:5px solid #bd6618;border-radius:20px;box-shadow:0 24px 80px rgba(0,0,0,.55);text-align:center;padding:28px}.hv-popup-phone{font-size:68px;color:#4a1d09;animation:hvPhoneShake .55s infinite alternate}.hv-incoming-card h2{margin:4px 0 8px;color:#4a1d09;font-size:30px}.hv-popup-name{font-size:38px;font-weight:800;color:#111;margin:14px 0 20px}.hv-big-answer{font-size:22px!important;padding:16px 28px!important}@keyframes hvPulse{from{opacity:.35;transform:scale(.85)}to{opacity:1;transform:scale(1.15)}}@keyframes hvPhoneShake{from{transform:rotate(-8deg)}to{transform:rotate(8deg)}}@media(max-width:620px){.hv-grid-2{grid-template-columns:1fr}.hv-meter-row{grid-template-columns:1fr}.hv-actions{flex-direction:column}.hv-actions .hv-btn{width:100%}.hv-phone{margin:10px}.hv-phone-head h3{font-size:21px}.hv-device-title{display:block}.hv-connected-badge{display:block;margin:6px 0}.hv-popup-name{font-size:30px}}

/* v0.4 privé/live workflow */
.hv-status-private{background:#dfa32c;box-shadow:0 0 0 5px rgba(223,163,44,.18)}
.hv-safety-note,.hv-popup-safety{margin:12px auto 4px;padding:10px 12px;max-width:560px;border:2px solid #dfa32c;border-radius:9px;background:#fff7d6;color:#4a1d09;font-weight:700}
.hv-private-guide{margin:14px auto 6px;padding:14px;max-width:650px;text-align:left;line-height:1.55;border:2px solid #bd6618;border-radius:10px;background:#fff7d6;color:#2b180f}
.hv-private-text{font-weight:700;line-height:1.45}
.hv-hold-status{display:inline-block;margin:8px 0;padding:7px 11px;border-radius:999px;background:#4a1d09;color:#fff0bd;font-weight:700;font-size:13px}


/* v0.4.5 - opvallende mobiele belknop op alle openbare pagina's. Alleen presentatie; audio/WebRTC blijft ongewijzigd. */
.hv-mobile-phone-fab{display:none}
@keyframes hvMobilePhoneGlow{
  0%,100%{box-shadow:0 5px 18px rgba(0,0,0,.48),0 0 0 0 rgba(223,163,44,.32)}
  50%{box-shadow:0 7px 24px rgba(0,0,0,.58),0 0 0 7px rgba(223,163,44,0)}
}
@media(max-width:780px){
  .hv-mobile-phone-fab{
    position:fixed;
    right:14px;
    bottom:calc(18px + env(safe-area-inset-bottom, 0px));
    z-index:2147482500;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    min-height:58px;
    padding:8px 16px 8px 12px;
    border:3px solid #dfa32c;
    border-radius:999px;
    background:#4a1d09;
    color:#fff0bd;
    font-family:Arial,Helvetica,sans-serif;
    font-size:16px;
    font-weight:800;
    line-height:1;
    cursor:pointer;
    box-shadow:0 5px 18px rgba(0,0,0,.48);
    animation:hvMobilePhoneGlow 2.2s ease-in-out infinite;
    -webkit-tap-highlight-color:transparent;
  }
  .hv-mobile-phone-fab:active{transform:scale(.97)}
  .hv-mobile-phone-fab-icon{font-size:31px;line-height:1}
  .hv-mobile-phone-fab-text{white-space:nowrap}
  .hv-phone-caller.hv-mobile-focus{
    outline:4px solid rgba(223,163,44,.55);
    outline-offset:4px;
    border-radius:15px;
  }
}


/* v0.4.6 - alleen op een gekoppelde studiobrowser: inkomende beller op iedere HoefVinyl-pagina. */
.hv-studio-call-notifier[hidden]{display:none!important}
.hv-studio-call-notifier{
  position:fixed;right:20px;top:20px;z-index:2147483200;display:flex;align-items:center;gap:12px;
  min-width:250px;max-width:min(390px,calc(100vw - 28px));padding:12px 16px;border:3px solid #dfa32c;
  border-radius:16px;background:#4a1d09;color:#fff0bd;font-family:Arial,Helvetica,sans-serif;text-align:left;
  cursor:pointer;box-shadow:0 8px 28px rgba(0,0,0,.55);-webkit-tap-highlight-color:transparent
}
.hv-studio-call-notifier.ringing{animation:hvStudioCallPulse .8s ease-in-out infinite alternate}
.hv-studio-call-notifier-icon{font-size:38px;line-height:1;animation:hvPhoneShake .45s infinite alternate}
.hv-studio-call-notifier-text{display:flex;flex-direction:column;gap:3px;line-height:1.15}
.hv-studio-call-notifier-text strong{font-size:18px;color:#fff0bd}
.hv-studio-call-notifier-text small{font-size:12px;color:#fff;opacity:.9}
@keyframes hvStudioCallPulse{from{box-shadow:0 8px 28px rgba(0,0,0,.55),0 0 0 0 rgba(223,163,44,.55)}to{box-shadow:0 8px 32px rgba(0,0,0,.65),0 0 0 8px rgba(223,163,44,.06)}}
@media(max-width:780px){.hv-studio-call-notifier{right:12px;top:12px;min-width:0;width:calc(100vw - 24px)}}
