/* Header and staged login popup */
.topbar .header-actions{margin-right:auto}
.drawer-login-trigger{width:100%;border:0;text-align:right;font-family:inherit;cursor:pointer}
.staged-login-modal{padding:20px;background:rgba(8,31,28,.58);backdrop-filter:blur(8px)}
.staged-login-box{width:min(470px,94vw);padding:28px;border-radius:24px;text-align:right;box-shadow:0 30px 85px rgba(7,44,39,.24);overflow:hidden}
.staged-login-box .close{display:grid;place-items:center;width:34px;height:34px;left:16px;top:16px;border-radius:10px;background:#f4f8f7;color:#526966;font-size:22px;line-height:1}
.staged-login-brand{display:flex;align-items:center;gap:11px;padding-bottom:18px;margin-bottom:20px;border-bottom:1px solid #e8efed}
.staged-login-brand .brand-mark{margin:0;width:42px;height:42px;font-size:28px}
.staged-login-brand b,.staged-login-brand small{display:block}
.staged-login-brand b{font-size:15px}
.staged-login-brand small{font-size:9px;color:#788b87;margin-top:3px}
.login-step{display:none;animation:loginStepIn .24s ease}
.login-step.active{display:block}
@keyframes loginStepIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.login-step-indicator{display:flex;align-items:center;justify-content:center;gap:7px;margin-bottom:20px;direction:ltr}
.login-step-indicator span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#edf3f1;color:#839590;font-size:10px;font-weight:800}
.login-step-indicator span.active,.login-step-indicator span.done{background:#087c6b;color:#fff}
.login-step-indicator i{width:42px;height:2px;background:#e4ece9}
.login-step-indicator i.active{background:#8fd6c7}
.login-kicker{display:block;color:#087c6b;font-size:9px;font-weight:800;margin-bottom:5px}
.login-step h3{font-size:21px;margin:0 0 7px;color:#123331}
.login-step>p{font-size:10px;color:#6b7e7a;line-height:1.9;margin:0 0 18px}
.login-role-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.login-role-card{display:grid;grid-template-columns:44px 1fr auto;gap:10px;align-items:center;padding:15px 13px;border:1px solid #dfe9e6;border-radius:16px;background:#fff;color:#123331;text-align:right;font-family:inherit;cursor:pointer;transition:.2s}
.login-role-card:hover{transform:translateY(-3px);border-color:rgba(8,124,107,.35);box-shadow:0 14px 28px rgba(13,63,57,.08)}
.login-role-card>span{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:#eaf7f3;color:#087c6b;font-size:21px}
.login-role-card b,.login-role-card small{display:block}
.login-role-card b{font-size:12px}
.login-role-card small{font-size:7px;color:#728580;line-height:1.7;margin-top:3px}
.login-role-card i{font-style:normal;color:#087c6b}
.login-back{border:0;background:transparent;color:#718480;font-family:inherit;font-size:9px;padding:0;margin:0 0 12px;cursor:pointer}
.staged-mobile-field{height:54px;display:flex;align-items:center;direction:ltr;border:1px solid #dce7e4;border-radius:14px;background:#fbfdfc;overflow:hidden;transition:.2s}
.staged-mobile-field:focus-within{border-color:#087c6b;box-shadow:0 0 0 4px rgba(8,124,107,.08)}
.staged-mobile-field>span{height:100%;display:grid;place-items:center;padding:0 15px;border-right:1px solid #e2ebe8;color:#687d78;font-size:12px}
.staged-mobile-field input{flex:1;height:100%;border:0!important;outline:0;background:transparent;padding:0 15px!important;margin:0!important;font-family:inherit;font-size:14px;text-align:left}
.login-field-hint{display:block;font-size:8px;color:#879792;margin-top:7px}
.login-inline-error{min-height:17px!important;color:#c94f43!important;font-size:9px!important;margin:5px 0 4px!important}
.staged-login-box .modal-submit{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:8px;padding:13px 15px;border-radius:13px;font-family:inherit;font-size:11px;font-weight:800;cursor:pointer}
.login-confirm-card{display:grid;grid-template-columns:48px 1fr 1fr;gap:10px;align-items:center;padding:13px;border-radius:16px;background:linear-gradient(135deg,#edf8f5,#fbfdfc);border:1px solid #dcebe7}
.login-confirm-card>span{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#087c6b;color:#fff;font-size:21px}
.login-confirm-card small,.login-confirm-card b{display:block}
.login-confirm-card small{font-size:7px;color:#768985}
.login-confirm-card b{font-size:10px;margin-top:4px}
.login-security-note{display:block;text-align:center;color:#82938f;font-size:7px;line-height:1.8;margin-top:10px}
@media(max-width:600px){
  .staged-login-box{padding:22px 17px;border-radius:21px}
  .login-role-grid{grid-template-columns:1fr}
  .login-role-card{padding:12px}
  .login-confirm-card{grid-template-columns:44px 1fr}
  .login-confirm-card>div:last-child{grid-column:2}
}

/* Unified authentication popup v6.1 */
body.auth-modal-open{overflow:hidden}
.global-auth-modal{z-index:140}
.global-auth-modal.show{display:grid}
.auth-open-button,.mobile-auth-button{font-family:inherit}
.internal-topbar .auth-open-button{border:1px solid var(--green)!important;border-radius:12px!important;padding:10px 17px;color:var(--green);background:#fff;cursor:pointer;font-weight:700}
.internal-drawer .drawer-user.drawer-login-trigger{display:flex;background:#f5faf8;color:var(--ink)}
.mobile-app-nav .mobile-auth-button{border:0;background:transparent;color:inherit;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;cursor:pointer}
.doctor-review-login .auth-inline-link{border:0;background:transparent;color:var(--green);font:inherit;font-weight:800;cursor:pointer;padding:0}
.auth-register-shortcut{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:14px;font-size:8px;color:#778a86}
.auth-register-shortcut a{color:#087c6b;font-weight:800;text-decoration:none}
.main-footer .footer-auth-trigger{display:block;border:0;background:transparent;color:#c5d9d5;font:inherit;font-size:inherit;padding:0;margin:0;cursor:pointer;text-align:right}
.doctor-panel-shortcuts button{border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;padding:0}
.consult-access-card button.php-secondary{width:100%;font-family:inherit;cursor:pointer}
