/* The provider dashboard keeps availability and the current call in focus. */
body.provider-dashboard main{width:100%;max-width:580px;margin:0 auto;padding:18px 30px 28px}
body.provider-dashboard .header-join{display:none}
.provider-shell{width:100%;max-width:520px;min-width:0;margin:0 auto;color:#151a30;text-align:center}
.provider-topline{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;margin:0 0 24px}
.provider-identity{display:flex;align-items:center;gap:10px;min-width:0;text-align:left}
.provider-identity .avatar{width:45px;height:45px;font-size:14px;border-width:2px;flex:none}
.provider-identity>div{min-width:0}
.provider-identity strong{display:block;font-size:16px;line-height:1.4;font-weight:600;color:#151a30;overflow-wrap:break-word}
.provider-identity small{display:block;font-size:14px;line-height:1.45;color:#626b80;margin-top:2px}
.provider-settings-link{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:44px;min-height:44px;border:0;border-radius:8px;padding:9px 7px;background:transparent;color:#2543dc;font-size:14px;line-height:1.5;text-decoration:underline;text-underline-offset:4px;white-space:nowrap;flex:none}
.provider-settings-link svg{width:17px;height:17px;flex:none}
.provider-settings-link:hover{background:#ecefff;filter:none}
.provider-presence{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:33px;max-width:100%;border:1px solid #dde2f0;border-radius:50px;background:#f0f2f8;color:#626b80;padding:6px 12px;font-size:14px;font-weight:500;line-height:1.4}
.provider-presence.is-online{background:#ecefff;color:#202c8b;border-color:#d4dcff}
.provider-presence.is-offline{background:#f0f2f8;color:#626b80;border-color:#dde2f0}
.provider-presence.is-busy{background:#dce2ff;color:#202c8b;border-color:#c7d1ff}
.provider-status-dot{display:inline-block;width:7px;height:7px;flex:none;border-radius:50%;background:currentColor}
.provider-welcome{margin:21px 0 20px}
.provider-welcome h1{font-size:33px;font-weight:600;line-height:1.2;letter-spacing:-1.3px;color:#151a30;margin:0 auto 11px;max-width:460px;text-wrap:balance}
.provider-welcome p{font-size:15px;line-height:1.65;color:#626b80;max-width:370px;margin:0 auto;text-wrap:pretty}
.provider-beacon{height:164px;width:164px;display:flex;align-items:center;justify-content:center;position:relative;isolation:isolate;flex:none;border-radius:50%;border:1px solid #e1e5ef;background:#f0f2f7;color:#78839b;margin:0 auto 21px}
.provider-beacon:before{content:"";position:absolute;inset:20px;border:1px solid #e1e5ef;border-radius:50%;background:#e6eaf2;z-index:-1}
.provider-beacon:after{content:"";position:absolute;inset:39px;border-radius:50%;background:#fff;z-index:-1}
.provider-beacon>svg{height:45px;width:45px;stroke-width:1.6}
.provider-beacon.is-online{border-color:#dce2ff;background:#ecefff;color:#3455ff}
.provider-beacon.is-online:before{border-color:#bdcaff;background:#d3ddff;animation:provider-signal 2.8s ease-in-out infinite}
@keyframes provider-signal{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.08);opacity:.65}}
.provider-tariff{font-size:14px;line-height:1.5;text-align:center;margin:0 0 21px;color:#626b80}
.provider-tariff>small{display:block;font-size:14px;line-height:1.5;color:#626b80;margin-bottom:4px}
.provider-tariff strong{font-size:31px;line-height:1.25;letter-spacing:-1px;font-weight:600;color:#151a30;font-variant-numeric:tabular-nums}
.provider-tariff>span{font-size:15px;line-height:1.5;letter-spacing:0;color:#626b80;margin-left:4px}
body.provider-dashboard .provider-main-button{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:64px;padding:17px 20px;border:1px solid #3455ff;border-radius:16px;background:#3455ff;color:#fff;font-size:17px;font-weight:600;line-height:1.45;box-shadow:0 7px 20px #3455ff16}
body.provider-dashboard .provider-main-button:hover{background:#2543dc;border-color:#2543dc;filter:none}
body.provider-dashboard .provider-main-button:disabled{background:#cdd5ed;border-color:#cdd5ed;color:#4d608f;box-shadow:none;opacity:1;cursor:not-allowed}
.provider-main-button>svg{height:21px;width:21px;flex:none}
body.provider-dashboard .provider-secondary-button{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:48px;padding:12px 17px;border:1px solid #dde2f0;border-radius:12px;background:#f6f7fc;color:#4a5875;font-size:15px;font-weight:500;line-height:1.5;box-shadow:none}
body.provider-dashboard .provider-secondary-button:hover{background:#ecefff;filter:none}
.provider-note{font-size:14px;line-height:1.65;color:#626b80;max-width:400px;margin:15px auto 0;text-wrap:pretty}
.provider-call-card{min-width:0;width:100%;border:1px solid #d6dfff;border-radius:20px;background:#fff;color:#151a30;text-align:left;padding:24px;box-shadow:0 8px 28px #3455ff07;margin:20px 0 0}
.provider-card-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;margin:0 0 18px}
.provider-card-heading h2{min-width:0;font-size:22px;font-weight:600;letter-spacing:-.6px;line-height:1.3;margin:0;color:#151a30;overflow-wrap:break-word}
.provider-card-heading>span:not(.provider-countdown){font-size:14px;line-height:1.5;color:#626b80}
.provider-countdown{display:inline-flex;align-items:baseline;justify-content:center;gap:4px;flex:none;min-width:54px;padding:7px 9px;background:#ecefff;border:1px solid #dce2ff;border-radius:10px;font-size:16px;font-weight:600;line-height:1.35;color:#202c8b;font-variant-numeric:tabular-nums}
.provider-countdown strong{font-size:19px;font-weight:600;line-height:1.25;color:inherit}
.provider-countdown small{font-size:14px;font-weight:400;line-height:1.4;color:inherit}
.provider-location{display:flex;align-items:flex-start;gap:10px;min-width:0;border-radius:11px;background:#f6f7fc;padding:14px;margin:0 0 17px;color:#27314e;font-size:15px;line-height:1.6;text-align:left}
.provider-location>svg{height:20px;width:20px;flex:none;color:#3455ff;margin-top:2px}
.provider-location>div,.provider-location>span{min-width:0;overflow-wrap:break-word}
.provider-location strong{display:block;font-size:15px;line-height:1.5;font-weight:500;color:#27314e}
.provider-location small{display:block;font-size:14px;line-height:1.5;color:#626b80;margin-bottom:3px}
.provider-location p{font-size:15px;line-height:1.6;margin:0;color:#27314e}
.provider-call-rate{display:flex;align-items:baseline;justify-content:space-between;gap:5px 12px;flex-wrap:wrap;border-top:1px solid #e5e9f2;border-bottom:1px solid #e5e9f2;padding:14px 0;margin:0 0 18px;font-size:14px;line-height:1.5;color:#626b80}
.provider-call-rate small{font-size:14px;line-height:1.5;color:#626b80}
.provider-call-rate strong{font-size:28px;font-weight:600;letter-spacing:-.9px;line-height:1.25;color:#151a30;font-variant-numeric:tabular-nums}
.provider-call-rate strong{max-width:100%;overflow-wrap:anywhere}
.provider-call-rate span{font-size:14px;line-height:1.5;color:#626b80}
.provider-call-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;margin-top:20px}
.provider-call-actions .provider-main-button{min-width:0}
.provider-card-note{font-size:14px;line-height:1.65;color:#626b80;text-align:center;margin:14px 0 0;text-wrap:pretty}
.provider-progress{list-style:none;display:grid;gap:0;margin:18px 0 20px;padding:0;text-align:left}
.provider-progress>*{position:relative;display:flex;align-items:center;gap:10px;min-width:0;min-height:40px;padding:8px 0;font-size:14px;line-height:1.5;color:#626b80}
.provider-progress>*:before{content:"";display:flex;align-items:center;justify-content:center;flex:none;width:19px;height:19px;border:1px solid #bcc7df;border-radius:50%;background:#fff;font-size:12px;font-weight:600;color:#3455ff}
.provider-progress>.is-done{color:#4c5a79}
.provider-progress>.is-done:before{content:"✓";border-color:#c3cffc;background:#ecefff}
.provider-progress>.is-current{color:#202c8b;font-weight:600}
.provider-progress>.is-current:before{background:#3455ff;border:5px solid #3455ff;box-shadow:inset 0 0 0 3px #fff}
.provider-meeting-code{margin:18px 0;min-width:0;text-align:left}
.provider-meeting-code label{display:block;font-size:14px;font-weight:600;line-height:1.5;color:#27314e;margin-bottom:9px}
.provider-meeting-code input{min-width:0;width:100%;min-height:56px;padding:12px 12px 12px 19px;border:1px solid #c7d1e5;border-radius:12px;background:#f8f9fc;color:#151a30;font-size:24px;font-weight:500;line-height:1.3;letter-spacing:7px;text-align:center;box-shadow:none}
.provider-meeting-code input::placeholder{font-size:16px;letter-spacing:0;color:#768099;font-weight:400}
.provider-meeting-code input:focus-visible{outline:2px solid #3455ff;outline-offset:3px;border-color:#3455ff}
.provider-meeting-code input[aria-invalid=true]{border-color:#a23d46;outline-color:#a23d46;box-shadow:0 0 0 1px #a23d46}
.provider-meeting-code small{display:block;font-size:14px;line-height:1.6;color:#626b80;margin-top:8px}
.provider-finish{margin-top:21px}
.provider-settings-form{display:grid;gap:13px;min-width:0;text-align:left;color:#151a30}
.provider-settings-form form{display:grid;gap:12px;min-width:0}
.provider-settings-form label{display:block;font-size:14px;font-weight:600;line-height:1.5;color:#27314e;margin:0}
.provider-settings-form select,.provider-settings-form .schedule-field{min-width:0;width:100%;min-height:48px;border:1px solid #cfd7e7;border-radius:10px;padding:11px 12px;background:#fff;color:#151a30;font-size:16px;line-height:1.5;margin:0}
.provider-settings-form .rate-input-wrap{margin:0;background:#f6f7fc;border-color:#cfd7e7}
.provider-settings-form .rate-input-wrap input{min-height:28px;color:#151a30;font-size:24px}
.provider-settings-form .rate-input-wrap span{font-size:14px;color:#626b80}
.provider-settings-form p,.provider-settings-form small{font-size:14px;line-height:1.65;color:#626b80;margin:0}
.provider-settings-form .inline-error{color:var(--danger)}
.provider-settings-form .primary,.provider-settings-form button[type=submit]{width:100%;min-height:50px;border:1px solid #3455ff;border-radius:12px;padding:13px 17px;background:#3455ff;color:#fff;font-size:15px;font-weight:600;line-height:1.5;justify-content:center;margin-top:5px}
.provider-settings-form button[type=submit]:hover{background:#2543dc;border-color:#2543dc;filter:none}
body.provider-dashboard button:focus-visible,body.provider-dashboard a:focus-visible,body.provider-dashboard input:focus-visible,body.provider-dashboard select:focus-visible{outline-color:#3455ff}
@media(max-width:620px){
 body.provider-dashboard main{max-width:540px;padding:14px 24px 24px}
 .provider-topline{margin-bottom:21px;gap:10px}.provider-welcome{margin-top:18px;margin-bottom:19px}
 .provider-welcome h1{font-size:31px;letter-spacing:-1.1px}.provider-welcome p{font-size:15px}
 .provider-beacon{height:152px;width:152px;margin-bottom:20px}.provider-beacon:before{inset:18px}.provider-beacon:after{inset:36px}
 .provider-tariff strong{font-size:30px}
 .provider-call-card{padding:21px;border-radius:17px;margin-top:17px}
 .provider-card-heading h2{font-size:21px}.provider-location{padding:13px}
 .provider-call-rate strong{font-size:27px}
}
@media(max-width:360px){
 body.provider-dashboard main{padding-left:19px;padding-right:19px}
 .provider-identity{gap:8px}.provider-identity .avatar{height:41px;width:41px;font-size:13px}
 .provider-identity strong{font-size:15px}.provider-settings-link{padding-left:5px;padding-right:5px}
 .provider-welcome h1{font-size:29px}.provider-call-card{padding:18px}
 .provider-card-heading{gap:9px}.provider-card-heading h2{font-size:20px}
 .provider-location{padding:12px;gap:8px}.provider-countdown{min-width:48px;padding:6px 8px}
}
@media(max-height:800px){
 body.provider-dashboard main{padding-top:9px}.provider-topline{margin-bottom:16px}
 .provider-welcome{margin-top:15px;margin-bottom:15px}.provider-welcome h1{font-size:30px;margin-bottom:9px}
 .provider-beacon{height:120px;width:120px;margin-bottom:16px}.provider-beacon:before{inset:14px}.provider-beacon:after{inset:29px}.provider-beacon>svg{height:36px;width:36px}
 .provider-tariff{margin-bottom:17px}.provider-tariff strong{font-size:29px}.provider-note{margin-top:12px}
}
@media(prefers-reduced-motion:reduce){.provider-beacon.is-online:before{animation:none}}
