:root{--nursapp-blue:#51a2fe;--nursapp-red:#ff5151;--nursapp-navy:#242f65;--nursapp-navy2:#242f64;--nursapp-bg:#fff;--nursapp-muted:#f5f7fb;--nursapp-border:#dfe5f1;--nursapp-shadow:0 18px 50px rgba(36,47,101,.12)}
.nursapp-admin,.nursapp-app{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--nursapp-navy2)}
.nursapp-admin h1,.nursapp-app h2,.nursapp-app h3{color:var(--nursapp-navy);letter-spacing:-.02em}.nursapp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin:18px 0}.nursapp-card{background:#fff;border:1px solid var(--nursapp-border);border-radius:18px;padding:18px;box-shadow:var(--nursapp-shadow)}.nursapp-card strong{display:block;color:var(--nursapp-blue);font-size:28px}.nursapp-card span,.nursapp-card small{display:block;margin-top:6px;color:#5b668a}.nursapp-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;align-items:end;background:#fff;border:1px solid var(--nursapp-border);border-radius:18px;padding:18px;margin:16px 0;box-shadow:var(--nursapp-shadow)}.nursapp-wide{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.nursapp-form label{display:flex;flex-direction:column;gap:7px;font-weight:650;color:var(--nursapp-navy)}.nursapp-form input,.nursapp-form select,.nursapp-form textarea,.nursapp-search{border:1px solid var(--nursapp-border);border-radius:12px;padding:10px 12px;background:#fff;min-height:42px}.nursapp-form textarea{min-height:100px}.nursapp-status{display:inline-flex;border-radius:999px;background:rgba(81,162,254,.12);color:var(--nursapp-navy);padding:4px 10px;font-weight:700}.nursapp-calendar-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.nursapp-mini-calendar,.nursapp-availability-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.nursapp-mini-calendar span,.nursapp-availability-grid button{border:1px solid var(--nursapp-border);background:#fff;border-radius:10px;padding:9px;text-align:center}.nursapp-mini-calendar .available,.nursapp-availability-grid .available{background:rgba(81,162,254,.16);border-color:var(--nursapp-blue);color:var(--nursapp-navy);font-weight:800}.nursapp-mini-calendar .unavailable{background:rgba(255,81,81,.12);border-color:var(--nursapp-red)}
.nursapp-app{max-width:1120px;margin:0 auto;padding:18px;background:var(--nursapp-bg)}.nursapp-profilebar{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--nursapp-border);border-radius:18px;padding:10px 12px;box-shadow:var(--nursapp-shadow);margin-bottom:14px}.nursapp-profilebar.hidden{height:36px;overflow:hidden}.nursapp-avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;border:3px solid var(--nursapp-blue);cursor:pointer}.nursapp-profilebar span{display:block;color:#6b7494;font-size:12px;font-weight:800}.nursapp-hidebar{margin-left:auto;background:var(--nursapp-navy);color:#fff;border:0;border-radius:999px;padding:8px 12px}.nursapp-alert{border-left:5px solid var(--nursapp-red);background:#fff3f3;color:#8a1d1d;border-radius:14px;padding:12px 14px;margin:12px 0;font-weight:700}.nursapp-tabs{display:flex;gap:8px;overflow:auto;padding-bottom:8px;margin-bottom:12px}.nursapp-tabs button{border:1px solid var(--nursapp-border);background:#fff;color:var(--nursapp-navy);border-radius:999px;padding:10px 14px;white-space:nowrap;font-weight:800}.nursapp-tabs button.active{background:var(--nursapp-blue);border-color:var(--nursapp-blue);color:#fff}.nursapp-panel{display:none}.nursapp-panel.active{display:block}.nursapp-shift-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:14px}.nursapp-shift{background:#fff;border:1px solid var(--nursapp-border);border-radius:22px;padding:18px;box-shadow:var(--nursapp-shadow)}.nursapp-shift h3{margin:0 0 8px}.nursapp-shift p{margin:0 0 8px;color:#5a6488}.nursapp-shift time{display:block;font-weight:800;margin-bottom:14px;color:var(--nursapp-navy)}.nursapp-shift button,.nursapp-doc-upload button{border:0;border-radius:999px;padding:10px 14px;margin:3px;background:var(--nursapp-blue);color:#fff;font-weight:800}.nursapp-shift button[disabled]{opacity:.45}.nursapp-shift .nursapp-cancel{background:var(--nursapp-red)}.nursapp-shift .nursapp-view{background:var(--nursapp-navy)}.nursapp-doc-upload{display:grid;grid-template-columns:1fr 170px 1fr auto;gap:10px;align-items:center;background:var(--nursapp-muted);border-radius:18px;padding:14px;margin-bottom:16px}.nursapp-doc-upload select,.nursapp-doc-upload input{border:1px solid var(--nursapp-border);border-radius:12px;padding:10px;background:#fff}.nursapp-modal{position:fixed;inset:0;background:rgba(36,47,101,.48);display:flex;align-items:center;justify-content:center;padding:16px;z-index:9999}.nursapp-modal-card{position:relative;background:#fff;border-radius:24px;max-width:520px;width:100%;padding:24px;box-shadow:0 30px 90px rgba(0,0,0,.24)}.nursapp-close{position:absolute;top:12px;right:14px;border:0;background:var(--nursapp-red);color:#fff;border-radius:50%;width:32px;height:32px}.nursapp-modal-content dl{display:grid;grid-template-columns:150px 1fr;gap:8px}.nursapp-modal-content dt{font-weight:800;color:var(--nursapp-navy)}.nursapp-modal-content dd{margin:0;color:#5a6488}.nav-tab-wrapper{margin-bottom:14px}@media(max-width:700px){.nursapp-app{padding:10px}.nursapp-profilebar{border-radius:14px}.nursapp-tabs{position:sticky;top:66px;z-index:9;background:#fff}.nursapp-shift-list{grid-template-columns:1fr}.nursapp-doc-upload{grid-template-columns:1fr}.nursapp-modal-content dl{grid-template-columns:1fr}.nursapp-form{grid-template-columns:1fr}.nursapp-card{border-radius:16px}}
.nursapp-quicklinks{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 18px}.nursapp-quicklinks a,.nursapp-adminlink{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--nursapp-navy);color:#fff!important;text-decoration:none;padding:10px 16px;font-weight:800}.nursapp-quicklinks a:first-child{background:var(--nursapp-blue)}.nursapp-table td{vertical-align:middle}.nursapp-user-status{display:inline-flex;border-radius:999px;padding:4px 10px;font-weight:800;text-transform:capitalize}.nursapp-user-status-active{background:rgba(81,162,254,.15);color:var(--nursapp-navy)}.nursapp-user-status-inactive{background:rgba(255,81,81,.15);color:#8a1d1d}.nursapp-upload-strip{background:#fff;border:1px dashed var(--nursapp-blue);border-radius:18px;padding:16px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.nursapp-details{margin-top:8px}.nursapp-details summary{cursor:pointer;color:var(--nursapp-blue);font-weight:800}.nursapp-help{color:#5a6488}.nursapp-signature-pad{width:100%;height:220px;border:2px dashed var(--nursapp-blue);border-radius:18px;background:#fff;touch-action:none}.nursapp-modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:12px}.nursapp-modal-actions button{border:0;border-radius:999px;padding:10px 14px;font-weight:800;background:var(--nursapp-navy);color:#fff}.nursapp-modal-actions .nursapp-submit-signature{background:var(--nursapp-blue)}.nursapp-toast{position:fixed;right:18px;bottom:18px;z-index:100000;background:var(--nursapp-navy);color:#fff;border-radius:16px;padding:12px 16px;box-shadow:0 20px 60px rgba(36,47,101,.25);font-weight:800;opacity:0;transform:translateY(12px);transition:.22s ease}.nursapp-toast.show{opacity:1;transform:translateY(0)}.nursapp-toast.error{background:var(--nursapp-red)}@media(max-width:700px){.nursapp-toast{left:12px;right:12px;bottom:12px}.nursapp-modal-actions{justify-content:stretch}.nursapp-modal-actions button{flex:1}.nursapp-quicklinks a{flex:1 1 150px}}
/* v1.2.0 production-readiness refinements */
.nursapp-admin .widefat{border:1px solid var(--nursapp-border);border-radius:16px;overflow:hidden;box-shadow:var(--nursapp-shadow);background:#fff}.nursapp-admin .widefat th{background:#f8faff;color:var(--nursapp-navy);font-weight:800}.nursapp-admin .button-primary,.nursapp-admin .button{border-radius:999px}.nursapp-admin .notice{border-radius:12px}.nursapp-notifications{background:#fff;border:1px solid var(--nursapp-border);border-left:5px solid var(--nursapp-blue);box-shadow:var(--nursapp-shadow);border-radius:16px;padding:14px 16px;margin:12px 0}.nursapp-notifications strong{display:block;color:var(--nursapp-navy);margin-bottom:6px}.nursapp-notifications p{margin:8px 0;padding:8px 0;border-top:1px solid var(--nursapp-border);color:#4f5a80}.nursapp-notifications p:first-of-type{border-top:0}.nursapp-notifications small{display:block;color:#7b85a5;margin-top:3px}.nursapp-kpi-alert{background:linear-gradient(135deg,rgba(81,162,254,.10),rgba(36,47,101,.05));border:1px solid var(--nursapp-border);border-radius:18px;padding:14px}.nursapp-app button:focus,.nursapp-admin a:focus,.nursapp-admin button:focus{outline:3px solid rgba(81,162,254,.35);outline-offset:2px}.nursapp-modal-card{max-height:92vh;overflow:auto}.nursapp-profilebar{backdrop-filter:saturate(130%) blur(6px)}
/* v1.2.2 agency manager registration details */
.nursapp-section-card{background:#fff;border:1px solid var(--nursapp-border);border-radius:20px;padding:18px;margin:22px 0;box-shadow:var(--nursapp-shadow)}.nursapp-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}.nursapp-section-head h2{margin:0;color:var(--nursapp-navy);font-size:20px}.nursapp-section-head p{margin:3px 0 0;color:#5a6488}.nursapp-agency-details .widefat{margin-top:12px}.nursapp-agency-details td strong{color:var(--nursapp-navy)}@media(max-width:900px){.nursapp-section-head{display:block}.nursapp-agency-details .widefat{display:block;overflow-x:auto;white-space:nowrap}}
/* v1.3.0 production design and operations */
.nursapp-status-layout{display:grid;grid-template-columns:minmax(280px,1fr) minmax(280px,1fr);gap:18px;align-items:start}.nursapp-checklist{margin:0;padding:0;list-style:none}.nursapp-checklist li{display:grid;grid-template-columns:34px 1fr;gap:10px;padding:12px 0;border-top:1px solid var(--nursapp-border)}.nursapp-checklist li:first-child{border-top:0}.nursapp-checklist span{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:999px;font-weight:900}.nursapp-checklist .is-ok span{background:rgba(81,162,254,.15);color:var(--nursapp-navy)}.nursapp-checklist .is-warn span{background:rgba(255,81,81,.16);color:#8a1d1d}.nursapp-checklist strong{display:block;color:var(--nursapp-navy)}.nursapp-checklist em{display:block;color:#687296;font-style:normal;font-size:12px;margin-top:2px}.nursapp-admin .button-small{min-height:28px;padding:2px 10px}.nursapp-danger-link{color:#b42318!important;border-color:#ffb4b4!important}.nursapp-table tbody tr:hover{background:#fbfdff}@media(max-width:960px){.nursapp-status-layout{grid-template-columns:1fr}.nursapp-admin .widefat{display:block;overflow-x:auto;white-space:nowrap}}
/* v1.3.1 Nursapp front-end login */
.nursapp-login-wrap{min-height:70vh;display:flex;align-items:center;justify-content:center;padding:28px 14px;background:linear-gradient(135deg,rgba(81,162,254,.10),rgba(36,47,101,.04)),#fff}.nursapp-login-card{width:100%;max-width:480px;background:#fff;border:1px solid var(--nursapp-border);border-radius:28px;padding:28px;box-shadow:0 26px 80px rgba(36,47,101,.16);color:var(--nursapp-navy)}.nursapp-login-brand{display:flex;align-items:center;gap:14px;margin-bottom:18px}.nursapp-login-brand span{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:18px;background:var(--nursapp-blue);color:#fff;font-weight:900;font-size:26px}.nursapp-login-brand h2{margin:0;color:var(--nursapp-navy);font-size:28px;letter-spacing:-.03em}.nursapp-login-brand p{margin:4px 0 0;color:#647092}.nursapp-login-card form p{margin:12px 0}.nursapp-login-card label{display:block;font-weight:800;color:var(--nursapp-navy);margin-bottom:7px}.nursapp-login-card input[type=text],.nursapp-login-card input[type=password]{width:100%;border:1px solid var(--nursapp-border);border-radius:14px;background:#fff;min-height:46px;padding:10px 12px;box-sizing:border-box}.nursapp-login-card input[type=submit]{width:100%;border:0;border-radius:999px;background:var(--nursapp-blue);color:#fff;font-weight:900;min-height:48px;padding:12px 18px;cursor:pointer;box-shadow:0 14px 32px rgba(81,162,254,.24)}.nursapp-login-card .login-remember label{display:flex;align-items:center;gap:8px;font-weight:700;color:#5b668a}.nursapp-login-links{margin-top:14px;text-align:center}.nursapp-login-links a{color:var(--nursapp-navy);font-weight:800;text-decoration:none}.nursapp-login-links a:hover{text-decoration:underline}@media(max-width:560px){.nursapp-login-card{padding:22px;border-radius:22px}.nursapp-login-brand{align-items:flex-start}.nursapp-login-brand h2{font-size:24px}}

/* v1.3.2: keep dashboard modals fully hidden until opened. */
.nursapp-modal[hidden]{display:none!important;}
.nursapp-modal-card:empty{display:none;}


/* v1.3.7: more professional mobile shift details modal */
body.nursapp-modal-open{overflow:hidden}
.nursapp-modal-card{padding:0;overflow:hidden}
.nursapp-close{top:14px;right:14px;width:38px;height:38px;box-shadow:0 12px 30px rgba(255,81,81,.28);font-size:22px;line-height:1}
.nursapp-shift-modal-hero{padding:26px 24px 18px;background:linear-gradient(135deg,rgba(81,162,254,.16),rgba(36,47,101,.06));border-bottom:1px solid var(--nursapp-border)}
.nursapp-shift-modal-hero h3{margin:10px 0 6px;font-size:20px;line-height:1.15;color:var(--nursapp-navy)}
.nursapp-shift-modal-hero p{margin:0;color:#586282;font-weight:600}
.nursapp-status-pill{display:inline-flex;align-items:center;gap:8px;border-radius:999px;background:#fff;color:var(--nursapp-navy);padding:7px 12px;font-size:12px;font-weight:800;box-shadow:0 10px 24px rgba(36,47,101,.08)}
.nursapp-shift-modal-body{padding:20px 24px 24px}
.nursapp-shift-modal-section + .nursapp-shift-modal-section{margin-top:18px}
.nursapp-shift-modal-section h4{margin:0 0 12px;color:var(--nursapp-navy);font-size:14px;letter-spacing:.02em;text-transform:uppercase}
.nursapp-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.nursapp-detail-item{display:flex;flex-direction:column;gap:6px;background:#f8faff;border:1px solid var(--nursapp-border);border-radius:16px;padding:14px 15px;box-shadow:0 8px 24px rgba(36,47,101,.04)}
.nursapp-detail-label{font-size:12px;font-weight:800;letter-spacing:.03em;color:#6d7696;text-transform:uppercase}
.nursapp-detail-value{font-size:15px;line-height:1.45;color:var(--nursapp-navy);font-weight:700;word-break:break-word}
.nursapp-modal-actions--single{justify-content:stretch;margin-top:18px}
.nursapp-close-alt{border:0;border-radius:14px;padding:14px 16px;font-weight:800;background:var(--nursapp-navy);color:#fff;width:100%}
@media(max-width:700px){
  .nursapp-modal{align-items:flex-end;padding:0;background:rgba(36,47,101,.52)}
  .nursapp-modal-card{width:100%;max-width:none;max-height:92vh;border-radius:24px 24px 0 0;box-shadow:0 -18px 60px rgba(0,0,0,.22)}
  .nursapp-shift-modal-hero{padding:22px 18px 16px}
  .nursapp-shift-modal-hero h3{font-size:18px;padding-right:48px}
  .nursapp-shift-modal-hero p{font-size:13px;line-height:1.45;padding-right:12px}
  .nursapp-shift-modal-body{padding:16px 16px 22px}
  .nursapp-detail-grid{grid-template-columns:1fr;gap:10px}
  .nursapp-detail-item{border-radius:14px;padding:12px 13px}
  .nursapp-detail-label{font-size:11px}
  .nursapp-detail-value{font-size:15px}
  .nursapp-close{top:12px;right:12px;width:34px;height:34px}
}


/* v1.4.0 front-end logout page */
.nursapp-success{border-left:5px solid var(--nursapp-blue);background:rgba(81,162,254,.10);color:var(--nursapp-navy);border-radius:14px;padding:12px 14px;margin:12px 0;font-weight:800}.nursapp-logout-user{display:flex;flex-direction:column;gap:4px;background:#f8faff;border:1px solid var(--nursapp-border);border-radius:18px;padding:14px 16px;margin:16px 0}.nursapp-logout-user strong{color:var(--nursapp-navy);font-size:18px}.nursapp-logout-user span{color:#687296;font-size:12px;font-weight:900;letter-spacing:.04em}.nursapp-logout-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.nursapp-primary-action,.nursapp-secondary-action{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:13px 18px;font-weight:900;text-decoration:none!important}.nursapp-primary-action{background:var(--nursapp-blue);color:#fff!important;box-shadow:0 14px 32px rgba(81,162,254,.24)}.nursapp-danger-action{background:var(--nursapp-red);box-shadow:0 14px 32px rgba(255,81,81,.22)}.nursapp-secondary-action{background:#fff;color:var(--nursapp-navy)!important;border:1px solid var(--nursapp-border)}.nursapp-logout-mini{margin-left:auto;background:var(--nursapp-red);color:#fff!important;text-decoration:none;border-radius:999px;padding:8px 12px;font-weight:900}.nursapp-profilebar .nursapp-logout-mini + .nursapp-hidebar{margin-left:0}.nursapp-adminlink.nursapp-logout-link{background:var(--nursapp-red)}@media(max-width:560px){.nursapp-logout-actions a{width:100%}.nursapp-logout-mini{padding:7px 10px;font-size:12px}}


/* v1.4.1: visible, professional availability calendar on mobile and desktop */
.nursapp-availability-grid{
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  gap:10px;
  margin-top:14px;
}
.nursapp-availability-grid button{
  min-height:58px;
  border:1px solid var(--nursapp-border);
  border-radius:14px;
  background:#ffffff;
  color:var(--nursapp-navy);
  font-weight:800;
  box-shadow:0 8px 22px rgba(36,47,101,.06);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:10px 8px;
}
.nursapp-availability-grid button.available{
  background:linear-gradient(135deg,var(--nursapp-blue),#2f7fe7);
  border-color:var(--nursapp-blue);
  color:#ffffff;
  box-shadow:0 12px 28px rgba(81,162,254,.28);
  flex-direction:column;
}
.nursapp-availability-grid button.available::after{
  content:'Available';
  display:block;
  font-size:10px;
  font-weight:800;
  opacity:.92;
  margin-top:3px;
}
.nursapp-availability-grid button:not(.available):hover,
.nursapp-availability-grid button:not(.available):focus{
  background:#f8faff;
  border-color:var(--nursapp-blue);
}
@media(max-width:700px){
  .nursapp-availability-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
  }
  .nursapp-availability-grid button{
    min-height:54px;
    border-radius:13px;
    font-size:13px;
  }
}
@media(max-width:380px){
  .nursapp-availability-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}


/* v1.4.2: display settings and menu visibility polish */
.nursapp-checkline{display:flex;align-items:center;gap:10px;font-weight:800;color:var(--nursapp-navy);padding:12px 0}
.nursapp-checkline input{width:18px;height:18px}
.field-nursapp-menu-visibility select{margin-top:4px}
.field-nursapp-menu-visibility .description{display:block;margin-top:5px}


/* v1.5.0: production polish */
.nursapp-empty-state{
  background:#fff;
  border:1px dashed var(--nursapp-border);
  border-radius:22px;
  padding:28px 22px;
  color:#5a6488;
  text-align:center;
  box-shadow:var(--nursapp-shadow);
}
.nursapp-empty-state strong{
  display:block;
  color:var(--nursapp-navy);
  font-size:18px;
  margin-bottom:6px;
}
.nursapp-app{
  min-height:72vh;
}
.nursapp-profilebar .nursapp-logout{
  margin-left:auto;
}
.nursapp-shift{
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.nursapp-shift:hover{
  transform:translateY(-2px);
  border-color:rgba(81,162,254,.55);
  box-shadow:0 24px 60px rgba(36,47,101,.13);
}
.nursapp-admin .nursapp-card{
  margin-bottom:18px;
}
@media(max-width:700px){
  .nursapp-profilebar{
    gap:10px;
  }
  .nursapp-profilebar .nursapp-logout{
    padding:8px 10px;
    font-size:12px;
  }
}


/* v1.6.0: front-end manager workspace */
.nursapp-manager-hero{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  background:linear-gradient(135deg,rgba(81,162,254,.12),rgba(36,47,101,.04));
  border:1px solid var(--nursapp-border);
  border-radius:24px;
  padding:22px;
  margin-bottom:18px;
  box-shadow:var(--nursapp-shadow);
}
.nursapp-manager-hero h2{margin:0 0 6px;color:var(--nursapp-navy)}
.nursapp-manager-hero p{margin:0;color:#5a6488}
.nursapp-form-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  align-items:end;
}
.nursapp-form-grid label{
  display:flex;
  flex-direction:column;
  gap:6px;
  font-weight:800;
  color:var(--nursapp-navy);
}
.nursapp-form-grid input,
.nursapp-form-grid select{
  border:1px solid var(--nursapp-border);
  border-radius:14px;
  padding:11px 12px;
  background:#fff;
  color:var(--nursapp-navy);
}
.nursapp-form-grid button,
.nursapp-manager-approve,
.nursapp-manager-doc-action{
  border:0;
  border-radius:999px;
  padding:11px 15px;
  background:var(--nursapp-blue);
  color:#fff;
  font-weight:800;
  cursor:pointer;
}
.nursapp-manager-doc-action.danger{background:var(--nursapp-red)}
.nursapp-responsive-table{overflow:auto;background:#fff;border:1px solid var(--nursapp-border);border-radius:18px;box-shadow:var(--nursapp-shadow)}
.nursapp-responsive-table .nursapp-table{margin:0;min-width:760px}
@media(max-width:800px){
  .nursapp-manager-hero{align-items:flex-start;flex-direction:column;border-radius:18px}
  .nursapp-form-grid{grid-template-columns:1fr}
  .nursapp-manager-tabs{position:static}
}


/* v1.7.0: manager workspace redesign */
.nursapp-manager-shell{max-width:1400px;padding:0;background:transparent}
.nursapp-manager-topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;background:#242f65;color:#fff;padding:10px 24px;border-radius:0 0 14px 14px}
.nursapp-manager-topbrand{display:flex;flex-direction:column;gap:2px;font-weight:800}
.nursapp-manager-topbrand span{font-size:28px;line-height:1}
.nursapp-manager-topbrand small{font-size:12px;opacity:.85;letter-spacing:.04em;text-transform:uppercase}
.nursapp-manager-toplinks{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.nursapp-manager-toplinks a,.nursapp-manager-toplinks button{border:0;background:transparent;color:#fff;text-decoration:none;font-weight:800;padding:10px 12px;border-bottom:3px solid transparent}
.nursapp-manager-toplinks button.active,.nursapp-manager-toplinks a:hover,.nursapp-manager-toplinks button:hover{border-color:#51a2fe}
.nursapp-manager-hero-banner{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:28px;background:linear-gradient(110deg,#242f65 0%, #4b85d6 100%);color:#fff;border-radius:26px;margin:16px 0 0;box-shadow:0 24px 60px rgba(36,47,101,.20)}
.nursapp-manager-hero-banner h1{margin:4px 0 8px;color:#fff;font-size:48px;line-height:1.05}
.nursapp-manager-hero-banner p{margin:0;max-width:700px;color:rgba(255,255,255,.88)}
.nursapp-manager-version{font-size:14px;font-weight:800;background:rgba(255,255,255,.12);padding:10px 14px;border-radius:999px;white-space:nowrap}
.nursapp-manager-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:24px;background:#f7f9fd;border:1px solid var(--nursapp-border);border-top:0;border-radius:0 0 26px 26px;padding:0 0 24px;overflow:hidden}
.nursapp-manager-sidebar{padding:18px 18px 18px 18px;border-right:1px solid var(--nursapp-border);background:#f4f7fc}
.nursapp-manager-main{padding:24px 24px 0 0;min-width:0}
.nursapp-manager-nav-filter{width:100%;border:1px solid var(--nursapp-border);border-radius:12px;padding:10px 12px;background:#fff;margin-bottom:14px}
.nursapp-manager-nav-section + .nursapp-manager-nav-section{margin-top:16px}
.nursapp-manager-nav-section h4{margin:0 0 8px;color:var(--nursapp-navy);font-size:13px;letter-spacing:.04em;text-transform:uppercase}
.nursapp-manager-nav-item{width:100%;display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:flex-start;text-align:left;background:#fff;border:1px solid var(--nursapp-border);border-radius:18px;padding:12px 12px;margin-bottom:10px;color:var(--nursapp-navy);box-shadow:var(--nursapp-shadow)}
.nursapp-manager-nav-item.active{background:#242f65;color:#fff;border-color:#242f65}
.nursapp-manager-nav-item.active small,.nursapp-manager-nav-item.active strong{color:#fff}
.nursapp-manager-nav-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:10px;background:rgba(81,162,254,.16);font-weight:800}
.nursapp-manager-nav-item.active .nursapp-manager-nav-icon{background:rgba(255,255,255,.18)}
.nursapp-manager-nav-copy{display:flex;flex-direction:column;gap:4px;min-width:0}
.nursapp-manager-nav-copy strong{font-size:16px;line-height:1.2;color:var(--nursapp-navy)}
.nursapp-manager-nav-copy small{font-size:12px;line-height:1.45;color:#61709a}
.nursapp-manager-breadcrumb{font-size:13px;color:#6a7699;margin:2px 0 16px;font-weight:700}
.nursapp-manager-breadcrumb span{padding:0 5px}
.nursapp-manager-kpis{grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:18px}
.nursapp-manager-kpis > div{background:#fff;border:1px solid var(--nursapp-border);border-radius:22px;padding:18px;box-shadow:var(--nursapp-shadow);display:flex;flex-direction:column;gap:4px}
.nursapp-manager-kpis strong{font-size:28px;color:#233c86;line-height:1}
.nursapp-manager-kpis span{font-size:14px;font-weight:800;color:var(--nursapp-navy);text-transform:uppercase;letter-spacing:.03em}
.nursapp-manager-kpis small{font-size:13px;color:#61709a}
.nursapp-manager-kpi-alert{border-color:rgba(255,81,81,.25)!important;background:#fffafa!important}
.nursapp-manager-kpi-alert strong{color:#ff5151}
.nursapp-manager-actions{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 20px}
.nursapp-manager-actions button{border:0;border-radius:14px;background:#242f65;color:#fff;padding:12px 16px;font-weight:800;box-shadow:0 12px 28px rgba(36,47,101,.18)}
.nursapp-manager-actions button:hover,.nursapp-manager-actions button.active{background:#51a2fe}
.nursapp-manager-card{background:#fff;border:1px solid var(--nursapp-border);border-radius:24px;padding:22px;box-shadow:var(--nursapp-shadow);margin-bottom:18px}
.nursapp-manager-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}
.nursapp-manager-card-head h3{margin:0;color:var(--nursapp-navy);font-size:26px}
.nursapp-manager-eyebrow{margin:0 0 6px;font-size:13px;letter-spacing:.05em;text-transform:uppercase;color:#6d7aa2;font-weight:800}
.nursapp-manager-chip{display:inline-flex;align-items:center;border-radius:999px;background:#f0f4fb;color:#24356f;padding:8px 12px;font-size:12px;font-weight:800}
.nursapp-manager-overview-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}
.nursapp-manager-mini-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0}
.nursapp-manager-mini-stats div{background:#f7f9fd;border:1px solid var(--nursapp-border);border-radius:18px;padding:16px}
.nursapp-manager-mini-stats strong{display:block;font-size:28px;color:#233c86;line-height:1;margin-bottom:4px}
.nursapp-manager-alert-list{list-style:none;padding:0;margin:6px 0 0;display:grid;gap:10px}
.nursapp-manager-alert-list li{display:grid;grid-template-columns:56px minmax(0,1fr);gap:12px;align-items:center;background:#f7f9fd;border:1px solid var(--nursapp-border);border-radius:18px;padding:14px}
.nursapp-manager-alert-list strong{display:flex;align-items:center;justify-content:center;font-size:24px;color:#ff5151;background:#fff;border-radius:14px;min-height:48px}
.nursapp-manager-alert-list span{color:#556388;font-weight:700;line-height:1.45}
.nursapp-manager-create .nursapp-help{margin-top:0;margin-bottom:14px}
.nursapp-manager-card .nursapp-responsive-table{border:0;box-shadow:none;background:transparent}
.nursapp-manager-card .nursapp-table thead th{background:#242f65;color:#fff;border:0}
.nursapp-manager-card .nursapp-table{border-collapse:separate;border-spacing:0}
.nursapp-manager-card .nursapp-table th:first-child{border-top-left-radius:16px}.nursapp-manager-card .nursapp-table th:last-child{border-top-right-radius:16px}
.nursapp-manager-card .nursapp-table td{background:#fff}
@media(max-width:1100px){.nursapp-manager-layout{grid-template-columns:1fr}.nursapp-manager-sidebar{border-right:0;border-bottom:1px solid var(--nursapp-border)}.nursapp-manager-main{padding:18px}.nursapp-manager-overview-grid{grid-template-columns:1fr}.nursapp-manager-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.nursapp-manager-hero-banner h1{font-size:38px}}
@media(max-width:700px){.nursapp-manager-topbar{padding:12px 16px;flex-direction:column;align-items:flex-start}.nursapp-manager-topbrand span{font-size:24px}.nursapp-manager-toplinks{gap:4px}.nursapp-manager-hero-banner{padding:22px 16px 18px;margin-top:12px;border-radius:18px;flex-direction:column}.nursapp-manager-hero-banner h1{font-size:30px}.nursapp-manager-layout{border-radius:0 0 18px 18px}.nursapp-manager-sidebar{padding:14px}.nursapp-manager-main{padding:14px}.nursapp-manager-kpis{grid-template-columns:1fr}.nursapp-manager-actions{display:grid;grid-template-columns:1fr}.nursapp-manager-card{padding:16px;border-radius:18px}.nursapp-manager-card-head h3{font-size:22px}.nursapp-manager-mini-stats{grid-template-columns:1fr}.nursapp-manager-alert-list li{grid-template-columns:1fr}}


/* v1.7.1: make Agency Manager dashboard full-width on laptop/desktop screens */
@media(min-width:1024px){
  .nursapp-manager-shell{
    width:100vw;
    max-width:none!important;
    margin-left:calc(50% - 50vw)!important;
    margin-right:calc(50% - 50vw)!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  body:has(.nursapp-manager-shell) .site-main,
  body:has(.nursapp-manager-shell) .content-area,
  body:has(.nursapp-manager-shell) .entry-content,
  body:has(.nursapp-manager-shell) .container,
  body:has(.nursapp-manager-shell) .wp-site-blocks{
    max-width:none!important;
  }
  .nursapp-manager-topbar{
    border-radius:0;
    padding-left:clamp(24px,3vw,54px);
    padding-right:clamp(24px,3vw,54px);
  }
  .nursapp-manager-hero-banner{
    border-radius:0;
    margin-top:0;
    padding-left:clamp(28px,3.5vw,64px);
    padding-right:clamp(28px,3.5vw,64px);
  }
  .nursapp-manager-layout{
    border-left:0;
    border-right:0;
    border-radius:0;
    min-height:calc(100vh - 220px);
    grid-template-columns:320px minmax(0,1fr);
  }
  .nursapp-manager-sidebar{
    padding-left:clamp(18px,2vw,34px);
  }
  .nursapp-manager-main{
    padding-right:clamp(24px,3vw,54px);
  }
  .nursapp-manager-card,
  .nursapp-manager-kpis > div{
    box-shadow:0 18px 48px rgba(36,47,101,.09);
  }
}
@media(min-width:1440px){
  .nursapp-manager-layout{
    grid-template-columns:340px minmax(0,1fr);
  }
  .nursapp-manager-kpis{
    grid-template-columns:repeat(5,minmax(180px,1fr));
  }
}


/* v1.8.0: production polish for manager workspace */
.nursapp-manager-shell{--manager-bg:#f6f8fc;--manager-line:#dde6f5}
.nursapp-manager-card{border-color:var(--manager-line)}
.nursapp-manager-card .nursapp-table{width:100%}
.nursapp-manager-card .nursapp-table tbody tr{transition:background .16s ease, transform .16s ease}
.nursapp-manager-card .nursapp-table tbody tr:hover td{background:#f8fbff}
.nursapp-manager-card .nursapp-table td,.nursapp-manager-card .nursapp-table th{padding:14px 16px;vertical-align:middle}
.nursapp-manager-card .nursapp-table td:first-child{font-weight:800;color:var(--nursapp-navy)}
.nursapp-status-pill{display:inline-flex;align-items:center;justify-content:center;min-width:84px;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:900;letter-spacing:.02em;text-transform:capitalize}
.nursapp-status-available{background:rgba(81,162,254,.15);color:#1f5fa8}
.nursapp-status-awarded,.nursapp-status-approved,.nursapp-status-assigned,.nursapp-status-requested{background:rgba(36,47,101,.10);color:#242f65}
.nursapp-status-completed,.nursapp-status-worked,.nursapp-status-submitted,.nursapp-status-paid{background:rgba(26,164,105,.13);color:#117245}
.nursapp-status-cancelled,.nursapp-status-rejected,.nursapp-status-expired,.nursapp-status-invalid,.nursapp-status-unpaid{background:rgba(255,81,81,.13);color:#9d2525}
.nursapp-status-pending{background:rgba(255,185,80,.18);color:#8a5200}
.nursapp-manager-nav-item{cursor:pointer;position:relative}
.nursapp-manager-nav-item.active{box-shadow:0 16px 32px rgba(36,47,101,.18)}
.nursapp-manager-actions button{display:inline-flex;align-items:center;gap:8px}
.nursapp-manager-actions button::before{content:'';width:8px;height:8px;border-radius:50%;background:#51a2fe;box-shadow:0 0 0 4px rgba(81,162,254,.18)}
.nursapp-manager-kpis > div{position:relative;overflow:hidden}
.nursapp-manager-kpis > div::after{content:'';position:absolute;right:-22px;top:-22px;width:78px;height:78px;border-radius:50%;background:rgba(81,162,254,.10)}
.nursapp-manager-kpi-alert::after{background:rgba(255,81,81,.10)!important}
.nursapp-manager-nav-filter:focus,.nursapp-form-grid input:focus,.nursapp-form-grid select:focus{border-color:#51a2fe;box-shadow:0 0 0 4px rgba(81,162,254,.16);outline:none}
.nursapp-manager-card-head{border-bottom:1px solid #edf2fb;padding-bottom:14px}
.nursapp-manager-card .nursapp-responsive-table{margin-top:14px}
.nursapp-manager-card .nursapp-table tbody tr:last-child td{border-bottom:0}
@media(max-width:700px){.nursapp-manager-card .nursapp-table td,.nursapp-manager-card .nursapp-table th{padding:12px}.nursapp-status-pill{min-width:70px}}


/* v1.9.0: manager CRUD actions for employees and facilities */
.nursapp-manager-edit-employee,
.nursapp-manager-edit-facility,
.nursapp-manager-delete-employee,
.nursapp-manager-delete-facility{
  border:0;
  border-radius:999px;
  padding:9px 12px;
  margin:2px;
  background:#edf4ff;
  color:#24356f;
  font-weight:900;
  cursor:pointer;
}
.nursapp-manager-delete-employee.danger,
.nursapp-manager-delete-facility.danger{
  background:rgba(255,81,81,.13);
  color:#9d2525;
}
.nursapp-manager-delete-employee.danger:hover,
.nursapp-manager-delete-facility.danger:hover{
  background:#ff5151;
  color:#fff;
}
.nursapp-manager-edit-employee:hover,
.nursapp-manager-edit-facility:hover{
  background:#51a2fe;
  color:#fff;
}
.nursapp-form-grid small{
  color:#6a7699;
  font-weight:700;
}
.nursapp-manager-form-reset{
  background:#242f65!important;
}


/* v2.0.0: production app-shell design pass */
.nursapp-manager-menu-toggle{
  display:none;
  border:0;
  border-radius:12px;
  background:rgba(255,255,255,.12);
  color:#fff;
  width:42px;
  height:42px;
  font-size:22px;
  font-weight:900;
}
.nursapp-manager-commandbar{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  background:#fff;
  border:1px solid var(--nursapp-border);
  border-radius:18px;
  padding:14px 16px;
  margin-bottom:16px;
  box-shadow:0 12px 34px rgba(36,47,101,.07);
}
.nursapp-manager-commandbar div{
  display:flex;
  flex-direction:column;
  gap:3px;
}
.nursapp-manager-commandbar strong{
  color:var(--nursapp-navy);
  font-size:15px;
}
.nursapp-manager-commandbar span{
  color:#667394;
  font-size:13px;
  font-weight:700;
}
.nursapp-manager-table-search{
  width:min(360px,42vw);
  border:1px solid var(--nursapp-border);
  border-radius:999px;
  padding:11px 14px;
  background:#f8fbff;
  color:var(--nursapp-navy);
}
.nursapp-manager-table-search:focus{
  outline:none;
  border-color:#51a2fe;
  box-shadow:0 0 0 4px rgba(81,162,254,.16);
  background:#fff;
}
body.nursapp-busy::before{
  content:'';
  position:fixed;
  inset:0;
  background:rgba(255,255,255,.35);
  z-index:99998;
  pointer-events:none;
}
body.nursapp-busy::after{
  content:'Saving…';
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:99999;
  background:#242f65;
  color:#fff;
  border-radius:999px;
  padding:12px 18px;
  font-weight:900;
  box-shadow:0 18px 46px rgba(36,47,101,.28);
}
.nursapp-manager-main{
  position:relative;
}
.nursapp-manager-sidebar{
  scrollbar-width:thin;
  scrollbar-color:#b7c7e5 transparent;
}
.nursapp-manager-sidebar::-webkit-scrollbar{width:8px}
.nursapp-manager-sidebar::-webkit-scrollbar-thumb{background:#b7c7e5;border-radius:999px}
@media(min-width:1101px){
  .nursapp-manager-sidebar{
    position:sticky;
    top:0;
    align-self:start;
    max-height:calc(100vh - 40px);
    overflow:auto;
  }
  .nursapp-manager-main{
    min-height:720px;
  }
}
@media(max-width:1100px){
  .nursapp-manager-topbar{
    flex-direction:row;
    align-items:center;
  }
  .nursapp-manager-menu-toggle{
    display:inline-flex;
    align-items:center;
    justify-content:center;
  }
  .nursapp-manager-layout{
    position:relative;
  }
  .nursapp-manager-sidebar{
    position:fixed;
    top:0;
    left:0;
    bottom:0;
    width:min(340px,88vw);
    z-index:10000;
    transform:translateX(-105%);
    transition:transform .22s ease;
    overflow:auto;
    box-shadow:22px 0 60px rgba(36,47,101,.28);
  }
  .nursapp-manager-shell.manager-menu-open .nursapp-manager-sidebar{
    transform:translateX(0);
  }
  .nursapp-manager-shell.manager-menu-open::after{
    content:'';
    position:fixed;
    inset:0;
    background:rgba(36,47,101,.42);
    z-index:9999;
  }
  .nursapp-manager-main{
    padding:16px;
  }
}
@media(max-width:700px){
  .nursapp-manager-commandbar{
    flex-direction:column;
    align-items:stretch;
  }
  .nursapp-manager-table-search{
    width:100%;
  }
  body.nursapp-busy::after{
    left:14px;
    right:14px;
    text-align:center;
  }
}


/* v2.0.1: keep Agency Manager KPI summary cards horizontal */
.nursapp-manager-kpis{
  display:grid !important;
  grid-template-columns:repeat(5, minmax(0, 1fr)) !important;
  gap:16px !important;
  align-items:stretch;
}
.nursapp-manager-kpis > div{
  min-width:0;
  width:100%;
}
@media(max-width:1200px){
  .nursapp-manager-kpis{
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  }
}
@media(max-width:900px){
  .nursapp-manager-kpis{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }
}
@media(max-width:700px){
  .nursapp-manager-kpis{
    grid-template-columns:1fr !important;
  }
}


/* v2.0.2: clearer breathing room between KPI cards and manager quick actions */
.nursapp-manager-kpis{
  margin-bottom:28px !important;
}
.nursapp-manager-actions{
  margin-top:18px !important;
  margin-bottom:22px !important;
  padding-top:4px;
}
@media(max-width:700px){
  .nursapp-manager-kpis{
    margin-bottom:22px !important;
  }
  .nursapp-manager-actions{
    margin-top:14px !important;
    margin-bottom:18px !important;
  }
}


/* v2.1.0: production design refinement */
.nursapp-manager-tools{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex:1}
.nursapp-density-toggle{border:1px solid var(--nursapp-border);border-radius:999px;background:#fff;color:var(--nursapp-navy);padding:10px 14px;font-weight:900;cursor:pointer;white-space:nowrap}
.nursapp-density-toggle:hover,.nursapp-density-toggle[aria-pressed="true"]{background:#242f65;border-color:#242f65;color:#fff}
.nursapp-manager-footerline{display:flex;justify-content:space-between;gap:12px;margin-top:24px;padding:14px 18px;border:1px solid var(--nursapp-border);border-radius:18px;background:rgba(255,255,255,.72);color:#647194;font-size:13px;font-weight:800}
.nursapp-manager-footerline span:first-child{color:var(--nursapp-navy)}
.nursapp-manager-shell.nursapp-compact-mode .nursapp-manager-hero-banner{padding-top:20px;padding-bottom:20px}
.nursapp-manager-shell.nursapp-compact-mode .nursapp-manager-hero-banner h1{font-size:34px}
.nursapp-manager-shell.nursapp-compact-mode .nursapp-manager-card{padding:16px;margin-bottom:14px}
.nursapp-manager-shell.nursapp-compact-mode .nursapp-manager-kpis{gap:12px!important;margin-bottom:22px!important}
.nursapp-manager-shell.nursapp-compact-mode .nursapp-manager-kpis > div{padding:14px}
.nursapp-manager-shell.nursapp-compact-mode .nursapp-manager-kpis strong{font-size:24px}
.nursapp-manager-shell.nursapp-compact-mode .nursapp-manager-actions{gap:10px;margin-top:12px!important;margin-bottom:18px!important}
.nursapp-manager-shell.nursapp-compact-mode .nursapp-manager-actions button{padding:10px 13px}
.nursapp-manager-shell.nursapp-compact-mode .nursapp-manager-card .nursapp-table td,.nursapp-manager-shell.nursapp-compact-mode .nursapp-manager-card .nursapp-table th{padding:10px 12px}
.nursapp-manager-shell.nursapp-compact-mode .nursapp-manager-nav-item{padding:10px;margin-bottom:8px}
.nursapp-manager-shell.nursapp-compact-mode .nursapp-manager-nav-copy small{display:none}
.nursapp-manager-card,.nursapp-manager-kpis > div,.nursapp-manager-commandbar,.nursapp-manager-nav-item{backdrop-filter:saturate(130%) blur(6px)}
.nursapp-manager-main .nursapp-panel{animation:nursappPanelIn .18s ease}
@keyframes nursappPanelIn{from{opacity:.72;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:900px){.nursapp-manager-tools{width:100%;flex-direction:column;align-items:stretch}.nursapp-density-toggle{width:100%}}
@media(max-width:700px){.nursapp-manager-footerline{flex-direction:column}}


/* v2.2.0: CRUD workflow polish */
.nursapp-crud-intro{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:center;
  background:linear-gradient(135deg,rgba(81,162,254,.10),rgba(36,47,101,.04));
  border:1px solid var(--nursapp-border);
  border-radius:18px;
  padding:13px 15px;
  margin:6px 0 16px;
}
.nursapp-crud-intro strong{
  color:var(--nursapp-navy);
  font-size:15px;
}
.nursapp-crud-intro span{
  color:#667394;
  font-size:13px;
  font-weight:700;
  line-height:1.4;
}
.nursapp-form-grid.nursapp-form-editing{
  background:rgba(81,162,254,.06);
  border:1px solid rgba(81,162,254,.25);
  border-radius:20px;
  padding:14px;
}
.nursapp-form-grid.nursapp-form-editing button[type="submit"]{
  background:#51a2fe;
}
.nursapp-manager-card .nursapp-responsive-table{
  border-radius:20px;
}
.nursapp-manager-card .nursapp-table tbody td:last-child{
  white-space:nowrap;
}
.nursapp-manager-card .nursapp-table a{
  color:#1f5fa8;
  font-weight:900;
}
.nursapp-manager-card .nursapp-table a:hover{
  color:#ff5151;
}
.nursapp-manager-edit-employee,
.nursapp-manager-edit-facility,
.nursapp-manager-delete-employee,
.nursapp-manager-delete-facility,
.nursapp-manager-approve,
.nursapp-manager-doc-action{
  transition:transform .15s ease, background .15s ease, color .15s ease, box-shadow .15s ease;
}
.nursapp-manager-edit-employee:hover,
.nursapp-manager-edit-facility:hover,
.nursapp-manager-delete-employee:hover,
.nursapp-manager-delete-facility:hover,
.nursapp-manager-approve:hover,
.nursapp-manager-doc-action:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 24px rgba(36,47,101,.16);
}
@media(max-width:700px){
  .nursapp-crud-intro{
    flex-direction:column;
    align-items:flex-start;
  }
  .nursapp-manager-card .nursapp-table tbody td:last-child{
    white-space:normal;
  }
}


/* v2.3.0: operational readiness and workflow polish */
.nursapp-manager-readiness{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  margin:0 0 22px;
  padding:16px 18px;
  background:linear-gradient(135deg,rgba(81,162,254,.10),rgba(36,47,101,.05));
  border:1px solid var(--nursapp-border);
  border-radius:20px;
  box-shadow:0 14px 40px rgba(36,47,101,.08);
}
.nursapp-manager-readiness div{
  display:flex;
  flex-direction:column;
  gap:4px;
  min-width:0;
}
.nursapp-manager-readiness strong{
  color:var(--nursapp-navy);
  font-size:16px;
}
.nursapp-manager-readiness span{
  color:#657294;
  font-size:13px;
  font-weight:700;
  line-height:1.45;
}
.nursapp-manager-readiness button{
  border:0;
  border-radius:999px;
  background:#fff;
  color:#242f65;
  padding:10px 14px;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 8px 22px rgba(36,47,101,.08);
  white-space:nowrap;
}
.nursapp-manager-readiness button:hover{
  background:#242f65;
  color:#fff;
}
.nursapp-manager-subtitle{
  display:block;
  margin-top:5px;
  color:#677496;
  font-size:13px;
  font-weight:700;
  line-height:1.45;
  max-width:760px;
}
.nursapp-manager-card-head{
  align-items:flex-start;
}
.nursapp-manager-shell.nursapp-compact-mode .nursapp-manager-subtitle{
  display:none;
}
.nursapp-manager-shell.nursapp-compact-mode .nursapp-manager-readiness{
  padding:12px 14px;
  margin-bottom:16px;
}
.nursapp-manager-shell.nursapp-compact-mode .nursapp-manager-readiness span{
  display:none;
}
@media(max-width:900px){
  .nursapp-manager-readiness{
    flex-direction:column;
    align-items:stretch;
  }
  .nursapp-manager-readiness button{
    width:100%;
  }
}


/* v2.4.0: activity, workflow health and printable console polish */
.nursapp-manager-health{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin:0 0 22px;
}
.nursapp-manager-health > div{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:3px 12px;
  align-items:center;
  background:#fff;
  border:1px solid var(--nursapp-border);
  border-radius:18px;
  padding:14px 16px;
  box-shadow:0 12px 34px rgba(36,47,101,.07);
}
.nursapp-manager-health strong{
  color:var(--nursapp-navy);
  font-size:14px;
}
.nursapp-manager-health span{
  color:#667394;
  font-size:12px;
  font-weight:800;
}
.nursapp-manager-health em{
  grid-row:1 / span 2;
  grid-column:2;
  font-style:normal;
  font-size:24px;
  font-weight:900;
  color:#51a2fe;
}
.nursapp-manager-overview-bottom{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(340px,.55fr);
  gap:18px;
  align-items:start;
}
.nursapp-activity-feed{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:14px;
}
.nursapp-activity-feed li{
  display:grid;
  grid-template-columns:18px minmax(0,1fr);
  gap:10px;
  align-items:start;
}
.nursapp-activity-dot{
  width:12px;
  height:12px;
  margin-top:5px;
  border-radius:50%;
  background:#51a2fe;
  box-shadow:0 0 0 5px rgba(81,162,254,.14);
}
.nursapp-activity-feed strong{
  display:block;
  color:var(--nursapp-navy);
  line-height:1.35;
}
.nursapp-activity-feed small{
  display:block;
  color:#687698;
  font-weight:700;
  margin-top:2px;
}
.nursapp-activity-feed p{
  margin:6px 0 0;
  color:#5f6d8f;
  font-size:13px;
}
.nursapp-manager-print{
  border:1px solid var(--nursapp-border);
  border-radius:999px;
  background:#fff;
  color:var(--nursapp-navy);
  padding:10px 14px;
  font-weight:900;
  cursor:pointer;
  white-space:nowrap;
}
.nursapp-manager-print:hover{
  background:#51a2fe;
  border-color:#51a2fe;
  color:#fff;
}
@media(max-width:1150px){
  .nursapp-manager-health{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .nursapp-manager-overview-bottom{
    grid-template-columns:1fr;
  }
}
@media(max-width:700px){
  .nursapp-manager-health{
    grid-template-columns:1fr;
  }
  .nursapp-manager-health > div{
    border-radius:15px;
  }
}
@media print{
  .nursapp-manager-topbar,
  .nursapp-manager-sidebar,
  .nursapp-manager-commandbar,
  .nursapp-manager-actions,
  .nursapp-manager-readiness,
  .nursapp-manager-footerline{
    display:none!important;
  }
  .nursapp-manager-shell{
    width:auto!important;
    margin:0!important;
  }
  .nursapp-manager-layout{
    display:block!important;
    border:0!important;
    background:#fff!important;
  }
  .nursapp-manager-main{
    padding:0!important;
  }
  .nursapp-manager-card,
  .nursapp-manager-kpis > div,
  .nursapp-manager-health > div{
    box-shadow:none!important;
    break-inside:avoid;
  }
}


/* v2.4.1: manager earnings and availability sections */
.nursapp-availability-summary,
.nursapp-earnings-summary{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin:0 0 18px;
}
.nursapp-earnings-summary{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.nursapp-availability-summary > div,
.nursapp-earnings-summary > div{
  background:#f8fbff;
  border:1px solid var(--nursapp-border);
  border-radius:18px;
  padding:14px 15px;
}
.nursapp-availability-summary strong,
.nursapp-earnings-summary strong{
  display:block;
  color:var(--nursapp-navy);
  font-size:22px;
  line-height:1.1;
  margin-bottom:5px;
}
.nursapp-availability-summary span,
.nursapp-earnings-summary span{
  color:#657294;
  font-weight:800;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.03em;
}
@media(max-width:900px){
  .nursapp-availability-summary,
  .nursapp-earnings-summary{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:520px){
  .nursapp-availability-summary,
  .nursapp-earnings-summary{
    grid-template-columns:1fr;
  }
}


/* v2.5.0: role-based earnings and holiday request workflow */
.nursapp-manager-earnings-role-tabs{
  display:flex;
  gap:10px;
  margin:8px 0 18px;
  flex-wrap:wrap;
}
.nursapp-manager-earnings-role-tabs button{
  border:1px solid var(--nursapp-border);
  border-radius:999px;
  background:#fff;
  color:var(--nursapp-navy);
  padding:10px 16px;
  font-weight:900;
  cursor:pointer;
}
.nursapp-manager-earnings-role-tabs button.active,
.nursapp-manager-earnings-role-tabs button:hover{
  background:#242f65;
  border-color:#242f65;
  color:#fff;
}
.nursapp-manager-earnings-role-panel{display:none}
.nursapp-manager-earnings-role-panel.active{display:block}
.nursapp-employee-select-label{
  display:block;
  max-width:560px;
  margin:0 0 18px;
}
.nursapp-employee-select-label span{
  display:block;
  color:#667394;
  font-size:13px;
  font-weight:900;
  margin-bottom:7px;
}
.nursapp-employee-select-label select,
.nursapp-holiday-request-form input,
.nursapp-holiday-request-form textarea{
  width:100%;
  border:1px solid var(--nursapp-border);
  border-radius:14px;
  padding:11px 12px;
  background:#fff;
}
.nursapp-employee-payroll-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  margin:6px 0 14px;
  padding:14px 16px;
  border-radius:18px;
  background:linear-gradient(135deg,rgba(81,162,254,.10),rgba(36,47,101,.05));
  border:1px solid var(--nursapp-border);
}
.nursapp-employee-payroll-head strong{
  display:block;
  color:var(--nursapp-navy);
  font-size:18px;
}
.nursapp-employee-payroll-head span{
  color:#667394;
  font-weight:800;
}
.nursapp-employee-earnings-metrics{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:0 0 20px;
}
.nursapp-employee-earnings-metrics > div{
  border:1px solid var(--nursapp-border);
  background:#f8fbff;
  border-radius:18px;
  padding:14px 15px;
}
.nursapp-employee-earnings-metrics strong{
  display:block;
  color:var(--nursapp-navy);
  font-size:22px;
  line-height:1.15;
}
.nursapp-employee-earnings-metrics span{
  display:block;
  margin-top:5px;
  color:#667394;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.03em;
}
.nursapp-section-mini-title{
  color:var(--nursapp-navy);
  margin:20px 0 10px;
}
.nursapp-holiday-request-box{
  border:1px solid var(--nursapp-border);
  border-radius:20px;
  background:#fff;
  padding:16px;
  margin:18px 0;
  box-shadow:0 12px 34px rgba(36,47,101,.06);
}
.nursapp-holiday-request-box h4{margin:0 0 4px;color:var(--nursapp-navy)}
.nursapp-holiday-request-box p{margin:0 0 12px;color:#667394;font-weight:700}
.nursapp-holiday-request-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.nursapp-holiday-request-form label{
  display:grid;
  gap:6px;
  color:#3b4568;
  font-weight:800;
}
.nursapp-holiday-request-form label:nth-child(4),
.nursapp-holiday-request-form button{
  grid-column:1/-1;
}
.nursapp-holiday-request-form button,
.nursapp-manager-holiday-action{
  border:0;
  border-radius:999px;
  background:#51a2fe;
  color:#fff;
  padding:11px 15px;
  font-weight:900;
  cursor:pointer;
}
.nursapp-manager-holiday-action.danger{
  background:rgba(255,81,81,.13);
  color:#9d2525;
  margin-left:6px;
}
.nursapp-manager-holiday-action.danger:hover{background:#ff5151;color:#fff}
.nursapp-muted{color:#667394;font-weight:800}
.nursapp-empty-state.compact{padding:14px;margin:8px 0}
@media(max-width:900px){
  .nursapp-employee-earnings-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
  .nursapp-employee-earnings-metrics,
  .nursapp-holiday-request-form{grid-template-columns:1fr}
}


/* v2.5.1: manager role-based availability calendar workflow */
.nursapp-manager-availability-role-tabs{
  display:flex;
  gap:10px;
  margin:8px 0 18px;
  flex-wrap:wrap;
}
.nursapp-manager-availability-role-tabs button{
  border:1px solid var(--nursapp-border);
  border-radius:999px;
  background:#fff;
  color:var(--nursapp-navy);
  padding:10px 16px;
  font-weight:900;
  cursor:pointer;
}
.nursapp-manager-availability-role-tabs button.active,
.nursapp-manager-availability-role-tabs button:hover{
  background:#242f65;
  border-color:#242f65;
  color:#fff;
}
.nursapp-manager-availability-role-panel{display:none}
.nursapp-manager-availability-role-panel.active{display:block}
.nursapp-employee-payroll-head em{
  font-style:normal;
  color:#51a2fe;
  font-weight:900;
  white-space:nowrap;
}
.nursapp-availability-keyline{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin:0 0 14px;
}
.nursapp-availability-keyline span{
  display:inline-flex;
  border-radius:999px;
  background:#edf4ff;
  color:#24356f;
  padding:7px 10px;
  font-size:12px;
  font-weight:900;
}
.nursapp-availability-calendar{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin-top:14px;
}
.nursapp-calendar-month{
  border:1px solid var(--nursapp-border);
  background:#fff;
  border-radius:20px;
  padding:16px;
  box-shadow:0 12px 34px rgba(36,47,101,.06);
}
.nursapp-calendar-month h4{
  margin:0 0 12px;
  color:var(--nursapp-navy);
}
.nursapp-calendar-weekdays,
.nursapp-calendar-grid{
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  gap:8px;
}
.nursapp-calendar-weekdays span{
  color:#667394;
  font-size:11px;
  font-weight:900;
  text-align:center;
  text-transform:uppercase;
}
.nursapp-calendar-grid{
  margin-top:8px;
}
.nursapp-calendar-empty{
  min-height:72px;
}
.nursapp-calendar-day{
  min-height:72px;
  border:1px solid #e2ebf7;
  border-radius:14px;
  background:#f8fbff;
  padding:8px;
  display:flex;
  flex-direction:column;
  gap:3px;
  color:var(--nursapp-navy);
}
.nursapp-calendar-day strong{
  font-size:15px;
  line-height:1;
}
.nursapp-calendar-day span{
  font-size:11px;
  font-weight:900;
  text-transform:capitalize;
}
.nursapp-calendar-day small{
  font-size:10px;
  color:#667394;
  font-weight:800;
  line-height:1.25;
}
.nursapp-calendar-day .muted,
.nursapp-calendar-day span.muted{
  color:#a2acc4;
}
.nursapp-calendar-day.today{
  box-shadow:0 0 0 3px rgba(81,162,254,.16);
  border-color:#51a2fe;
}
.nursapp-calendar-day.has-record.nursapp-status-available{
  background:rgba(81,162,254,.14);
  border-color:rgba(81,162,254,.35);
}
.nursapp-calendar-day.has-record.nursapp-status-unavailable{
  background:rgba(255,81,81,.10);
  border-color:rgba(255,81,81,.28);
}
.nursapp-availability-calendar.readonly .nursapp-calendar-day{
  cursor:default;
}
@media(max-width:1100px){
  .nursapp-availability-calendar{
    grid-template-columns:1fr;
  }
}
@media(max-width:640px){
  .nursapp-calendar-weekdays,
  .nursapp-calendar-grid{
    gap:5px;
  }
  .nursapp-calendar-day,
  .nursapp-calendar-empty{
    min-height:58px;
  }
  .nursapp-calendar-day{
    padding:6px;
    border-radius:11px;
  }
  .nursapp-calendar-day small{
    display:none;
  }
}


/* v2.5.2: enforce role-tabbed manager availability calendar */
.nursapp-manager-availability-card > .nursapp-availability-summary,
.nursapp-manager-availability-card > .nursapp-responsive-table{
  display:none!important;
}
.nursapp-manager-availability-role-tabs{
  display:flex;
  gap:10px;
  margin:8px 0 18px;
  flex-wrap:wrap;
}
.nursapp-manager-availability-role-tabs button{
  border:1px solid var(--nursapp-border);
  border-radius:999px;
  background:#fff;
  color:var(--nursapp-navy);
  padding:10px 16px;
  font-weight:900;
  cursor:pointer;
}
.nursapp-manager-availability-role-tabs button.active,
.nursapp-manager-availability-role-tabs button:hover{
  background:#242f65;
  border-color:#242f65;
  color:#fff;
}
.nursapp-manager-availability-role-panel{display:none}
.nursapp-manager-availability-role-panel.active{display:block}
.nursapp-availability-keyline{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin:0 0 14px;
}
.nursapp-availability-keyline span{
  display:inline-flex;
  border-radius:999px;
  background:#edf4ff;
  color:#24356f;
  padding:7px 10px;
  font-size:12px;
  font-weight:900;
}
.nursapp-availability-calendar{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin-top:14px;
}
.nursapp-calendar-month{
  border:1px solid var(--nursapp-border);
  background:#fff;
  border-radius:20px;
  padding:16px;
  box-shadow:0 12px 34px rgba(36,47,101,.06);
}
.nursapp-calendar-month h4{
  margin:0 0 12px;
  color:var(--nursapp-navy);
}
.nursapp-calendar-weekdays,
.nursapp-calendar-grid{
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  gap:8px;
}
.nursapp-calendar-weekdays span{
  color:#667394;
  font-size:11px;
  font-weight:900;
  text-align:center;
  text-transform:uppercase;
}
.nursapp-calendar-grid{margin-top:8px}
.nursapp-calendar-empty{min-height:72px}
.nursapp-calendar-day{
  min-height:72px;
  border:1px solid #e2ebf7;
  border-radius:14px;
  background:#f8fbff;
  padding:8px;
  display:flex;
  flex-direction:column;
  gap:3px;
  color:var(--nursapp-navy);
}
.nursapp-calendar-day strong{font-size:15px;line-height:1}
.nursapp-calendar-day span{font-size:11px;font-weight:900;text-transform:capitalize}
.nursapp-calendar-day small{font-size:10px;color:#667394;font-weight:800;line-height:1.25}
.nursapp-calendar-day span.muted{color:#a2acc4}
.nursapp-calendar-day.today{
  box-shadow:0 0 0 3px rgba(81,162,254,.16);
  border-color:#51a2fe;
}
.nursapp-calendar-day.has-record.nursapp-cal-available{
  background:rgba(81,162,254,.14);
  border-color:rgba(81,162,254,.35);
}
.nursapp-calendar-day.has-record.nursapp-cal-unavailable{
  background:rgba(255,81,81,.10);
  border-color:rgba(255,81,81,.28);
}
@media(max-width:1100px){
  .nursapp-availability-calendar{grid-template-columns:1fr}
}
@media(max-width:640px){
  .nursapp-calendar-weekdays,.nursapp-calendar-grid{gap:5px}
  .nursapp-calendar-day,.nursapp-calendar-empty{min-height:58px}
  .nursapp-calendar-day{padding:6px;border-radius:11px}
  .nursapp-calendar-day small{display:none}
}


/* v2.6.0: replicate manager earnings/availability format in WP Admin */
.nursapp-admin-role-console{
  margin-top:22px;
  max-width:100%;
}
.nursapp-admin-earnings-settings{
  margin-bottom:18px;
  background:#fff;
  border:1px solid var(--nursapp-border);
  border-radius:18px;
  padding:16px;
}
.wp-admin .nursapp-admin-role-console .nursapp-manager-card-head{
  border-bottom:1px solid #edf2fb;
  margin-bottom:16px;
}
.wp-admin .nursapp-admin-role-console .nursapp-responsive-table{
  overflow:auto;
}
.wp-admin .nursapp-admin-role-console .widefat.nursapp-table{
  border-radius:14px;
  overflow:hidden;
  border:1px solid #dde6f5;
}
.wp-admin .nursapp-admin-role-console .nursapp-manager-holiday-action.danger{
  border-color:rgba(255,81,81,.35)!important;
}


/* v2.6.1: availability calendar available-date colour */
.nursapp-calendar-day.has-record.nursapp-cal-available,
.nursapp-calendar-day.has-record.nursapp-status-available,
.nursapp-availability-calendar .nursapp-status-available,
.nursapp-calendar .nursapp-status-available{
  background:#a8ddb4 !important;
  border-color:#7fcf91 !important;
  color:#173f22 !important;
}
.nursapp-calendar-day.has-record.nursapp-cal-available span,
.nursapp-calendar-day.has-record.nursapp-status-available span,
.nursapp-calendar-day.has-record.nursapp-cal-available small,
.nursapp-calendar-day.has-record.nursapp-status-available small{
  color:#173f22 !important;
}


/* v2.7.0: production design stage - cross-dashboard polish */
:root{
  --nursapp-success:#a8ddb4;
  --nursapp-success-border:#7fcf91;
  --nursapp-warning:#ffe4ad;
  --nursapp-danger-soft:#ffe1e1;
  --nursapp-card-shadow:0 18px 46px rgba(36,47,101,.08);
}
.nursapp-manager-shell,
.nursapp-admin-wrap,
.nursapp-dashboard{
  text-rendering:optimizeLegibility;
}
.nursapp-status-legend{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.nursapp-status-legend span{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:7px 10px;
  border-radius:999px;
  background:#fff;
  border:1px solid var(--nursapp-border);
  color:#596789;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.03em;
  white-space:nowrap;
}
.nursapp-status-legend span::before{
  content:'';
  width:8px;
  height:8px;
  border-radius:50%;
  background:#51a2fe;
}
.nursapp-status-legend .available::before{background:#a8ddb4}
.nursapp-status-legend .pending::before{background:#ffe4ad}
.nursapp-status-legend .approved::before{background:#242f65}
.nursapp-status-legend .blocked::before{background:#ff5151}
.nursapp-manager-card,
.nursapp-holiday-request-box,
.nursapp-calendar-month,
.nursapp-manager-commandbar,
.nursapp-manager-readiness,
.nursapp-manager-health > div,
.nursapp-employee-earnings-metrics > div,
.nursapp-availability-summary > div,
.nursapp-earnings-summary > div{
  box-shadow:var(--nursapp-card-shadow);
}
.nursapp-manager-card-head,
.nursapp-production-head{
  position:relative;
}
.nursapp-manager-card-head::after,
.nursapp-production-head::after{
  content:'';
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:1px;
  background:linear-gradient(90deg,rgba(81,162,254,.55),rgba(36,47,101,.12),transparent);
}
.nursapp-table{
  border-collapse:separate;
  border-spacing:0;
}
.nursapp-table thead th{
  position:sticky;
  top:0;
  z-index:2;
}
.nursapp-table tbody tr.nursapp-row-focused td,
.nursapp-table tbody tr:focus td{
  background:#f3f8ff!important;
  outline:none;
}
.nursapp-table tbody tr:focus{
  outline:3px solid rgba(81,162,254,.20);
  outline-offset:-3px;
}
.nursapp-responsive-table{
  border:1px solid var(--nursapp-border);
  border-radius:20px;
  overflow:auto;
  background:#fff;
}
.nursapp-responsive-table .nursapp-table{
  min-width:780px;
}
.nursapp-employee-earnings-metrics > div,
.nursapp-manager-health > div,
.nursapp-availability-summary > div,
.nursapp-earnings-summary > div{
  transition:transform .16s ease, box-shadow .16s ease;
}
.nursapp-employee-earnings-metrics > div:hover,
.nursapp-manager-health > div:hover,
.nursapp-availability-summary > div:hover,
.nursapp-earnings-summary > div:hover{
  transform:translateY(-2px);
  box-shadow:0 24px 54px rgba(36,47,101,.12);
}
.nursapp-calendar-month h4{
  display:flex;
  justify-content:space-between;
  align-items:center;
}
.nursapp-calendar-month h4::after{
  content:'Availability';
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.04em;
  color:#667394;
  background:#edf4ff;
  border-radius:999px;
  padding:5px 8px;
}
.nursapp-calendar-day.has-record.nursapp-cal-available,
.nursapp-calendar-day.has-record.nursapp-status-available{
  background:#a8ddb4!important;
  border-color:#7fcf91!important;
  color:#173f22!important;
}
.nursapp-calendar-day.has-record.nursapp-cal-unavailable,
.nursapp-calendar-day.has-record.nursapp-status-unavailable{
  background:#ffe1e1!important;
  border-color:#ffb3b3!important;
  color:#641f1f!important;
}
.nursapp-calendar-day.has-record.nursapp-cal-unavailable span,
.nursapp-calendar-day.has-record.nursapp-status-unavailable span,
.nursapp-calendar-day.has-record.nursapp-cal-unavailable small,
.nursapp-calendar-day.has-record.nursapp-status-unavailable small{
  color:#641f1f!important;
}
.nursapp-empty-state{
  background:linear-gradient(135deg,#fff,#f8fbff);
}
.nursapp-empty-state strong{
  color:var(--nursapp-navy);
}
.nursapp-manager-shell.nursapp-compact-mode .nursapp-status-legend{
  display:none;
}
@media(max-width:1200px){
  .nursapp-status-legend{
    width:100%;
    order:3;
  }
}
@media(max-width:700px){
  .nursapp-responsive-table{
    border-radius:16px;
  }
  .nursapp-responsive-table .nursapp-table{
    min-width:680px;
  }
  .nursapp-status-legend span{
    flex:1;
    justify-content:center;
  }
}


/* v2.8.0: role-tabbed submitted timesheets for manager and admin */
.nursapp-role-timesheets-console{
  margin-top:8px;
}
.nursapp-role-tabs,
.nursapp-timesheet-role-tabs{
  display:flex;
  gap:10px;
  margin:8px 0 18px;
  flex-wrap:wrap;
}
.nursapp-role-tabs button,
.nursapp-timesheet-role-tabs button{
  border:1px solid var(--nursapp-border);
  border-radius:999px;
  background:#fff;
  color:var(--nursapp-navy);
  padding:10px 16px;
  font-weight:900;
  cursor:pointer;
}
.nursapp-role-tabs button.active,
.nursapp-role-tabs button:hover,
.nursapp-timesheet-role-tabs button.active,
.nursapp-timesheet-role-tabs button:hover{
  background:#242f65;
  border-color:#242f65;
  color:#fff;
}
.nursapp-role-panel,
.nursapp-timesheet-role-panel{
  display:none;
}
.nursapp-role-panel.active,
.nursapp-timesheet-role-panel.active{
  display:block;
}
.nursapp-timesheet-summary{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:0 0 18px;
}
.nursapp-timesheet-summary > div{
  border:1px solid var(--nursapp-border);
  background:#f8fbff;
  border-radius:18px;
  padding:14px 15px;
  box-shadow:0 12px 34px rgba(36,47,101,.06);
}
.nursapp-timesheet-summary strong{
  display:block;
  color:var(--nursapp-navy);
  font-size:24px;
  line-height:1.1;
}
.nursapp-timesheet-summary span{
  display:block;
  margin-top:5px;
  color:#667394;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.03em;
}
.nursapp-admin-wrap .nursapp-role-timesheets-console{
  max-width:1400px;
}
.nursapp-admin-wrap .nursapp-employee-select-label select{
  max-width:640px;
}
@media(max-width:760px){
  .nursapp-timesheet-summary{
    grid-template-columns:1fr;
  }
}


/* v2.8.1: comfort-view command bar toolbar must stay horizontal on desktop/laptop */
@media(min-width:1024px){
  .nursapp-manager-shell:not(.nursapp-compact-mode) .nursapp-manager-commandbar{
    display:grid !important;
    grid-template-columns:minmax(220px,auto) minmax(0,1fr) !important;
    align-items:center !important;
    gap:18px !important;
  }
  .nursapp-manager-shell:not(.nursapp-compact-mode) .nursapp-manager-tools{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:10px !important;
    width:100% !important;
    min-width:0 !important;
  }
  .nursapp-manager-shell:not(.nursapp-compact-mode) .nursapp-status-legend{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:8px !important;
    width:auto !important;
    order:0 !important;
    flex:0 0 auto !important;
  }
  .nursapp-manager-shell:not(.nursapp-compact-mode) .nursapp-status-legend span{
    flex:0 0 auto !important;
    white-space:nowrap !important;
  }
  .nursapp-manager-shell:not(.nursapp-compact-mode) .nursapp-density-toggle,
  .nursapp-manager-shell:not(.nursapp-compact-mode) .nursapp-manager-print{
    flex:0 0 auto !important;
    width:auto !important;
    white-space:nowrap !important;
  }
  .nursapp-manager-shell:not(.nursapp-compact-mode) .nursapp-manager-table-search{
    flex:1 1 360px !important;
    width:auto !important;
    min-width:280px !important;
    max-width:520px !important;
  }
}
@media(min-width:1024px) and (max-width:1350px){
  .nursapp-manager-shell:not(.nursapp-compact-mode) .nursapp-manager-commandbar{
    grid-template-columns:1fr !important;
  }
  .nursapp-manager-shell:not(.nursapp-compact-mode) .nursapp-manager-tools{
    justify-content:flex-start !important;
    overflow-x:auto;
    padding-bottom:4px;
  }
  .nursapp-manager-shell:not(.nursapp-compact-mode) .nursapp-manager-table-search{
    min-width:320px !important;
  }
}


/* v2.9.0: SaaS subscription and service control design */
.nursapp-subscription-wrap .description{
  max-width:980px;
  color:#5f6d8f;
  font-weight:700;
}
.nursapp-subscription-grid{
  display:grid;
  grid-template-columns:minmax(300px,.42fr) minmax(0,1fr);
  gap:22px;
  align-items:start;
  margin-top:20px;
}
.nursapp-subscription-card{
  background:#fff;
  border:1px solid #dce6f6;
  border-radius:22px;
  padding:20px;
  box-shadow:0 18px 46px rgba(36,47,101,.08);
}
.nursapp-subscription-card h2{
  margin:0 0 14px;
  color:#242f65;
}
.nursapp-subscription-card label{
  display:grid;
  gap:7px;
  margin-bottom:13px;
  color:#3b4568;
  font-weight:900;
}
.nursapp-subscription-card input,
.nursapp-subscription-card select{
  width:100%;
  max-width:100%;
  border:1px solid #dce6f6;
  border-radius:12px;
  padding:10px 12px;
}
.nursapp-module-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.nursapp-module-toggle{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr);
  gap:10px!important;
  align-items:start;
  padding:14px;
  margin:0!important;
  border:1px solid #dce6f6;
  border-radius:16px;
  background:#f8fbff;
}
.nursapp-module-toggle input{
  width:auto!important;
  margin-top:4px;
}
.nursapp-module-toggle strong{
  display:block;
  color:#242f65;
}
.nursapp-module-toggle small{
  display:block;
  color:#667394;
  font-weight:700;
  line-height:1.35;
  margin-top:3px;
}
.nursapp-service-disabled{
  display:flex;
  flex-direction:column;
  gap:5px;
  padding:22px;
  border:1px solid rgba(255,81,81,.28);
  background:linear-gradient(135deg,#fff,#fff3f3);
  border-radius:20px;
  color:#7d1f1f;
}
.nursapp-service-disabled strong{
  color:#9d2525;
  font-size:18px;
}
.nursapp-service-disabled span{
  color:#7d4a4a;
  font-weight:700;
}
@media(max-width:980px){
  .nursapp-subscription-grid,
  .nursapp-module-grid{
    grid-template-columns:1fr;
  }
}


/* v3.0.0: monetisation stage two - billing readiness and plan limits */
.nursapp-billing-summary{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr)) auto;
  gap:14px;
  align-items:center;
  margin:20px 0;
  padding:18px;
  border:1px solid #dce6f6;
  border-radius:22px;
  background:linear-gradient(135deg,#fff,#f8fbff);
  box-shadow:0 18px 46px rgba(36,47,101,.08);
}
.nursapp-billing-summary > div{
  display:flex;
  flex-direction:column;
  gap:4px;
}
.nursapp-billing-summary strong{
  color:#242f65;
  font-size:16px;
}
.nursapp-billing-summary span{
  color:#667394;
  font-weight:800;
}
.nursapp-billing-summary.suspended,
.nursapp-billing-summary.expired{
  border-color:#ffb3b3;
  background:linear-gradient(135deg,#fff,#fff3f3);
}
.nursapp-renewal-alert{
  padding:12px 14px;
  margin:0 0 16px;
  border-radius:14px;
  font-weight:900;
}
.nursapp-renewal-alert.warning{
  background:#fff8e8;
  border:1px solid #ffe4ad;
  color:#7a4d00;
}
.nursapp-renewal-alert.expired{
  background:#fff3f3;
  border:1px solid #ffb3b3;
  color:#9d2525;
}
.nursapp-usage-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin:0 0 20px;
}
.nursapp-usage-card{
  background:#fff;
  border:1px solid #dce6f6;
  border-radius:18px;
  padding:15px;
  box-shadow:0 12px 34px rgba(36,47,101,.06);
}
.nursapp-usage-card strong{
  display:block;
  color:#242f65;
  font-size:24px;
  line-height:1.1;
}
.nursapp-usage-card span{
  display:block;
  color:#667394;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.03em;
  margin-top:4px;
}
.nursapp-usage-card small{
  display:block;
  color:#5f6d8f;
  font-weight:800;
  margin:10px 0 8px;
}
.nursapp-usage-card em{
  display:block;
  height:8px;
  border-radius:999px;
  background:#edf4ff;
  overflow:hidden;
}
.nursapp-usage-card em i{
  display:block;
  height:100%;
  background:#51a2fe;
  border-radius:999px;
}
.nursapp-subscription-card label small{
  color:#667394;
  font-weight:700;
}
@media(max-width:1100px){
  .nursapp-billing-summary,
  .nursapp-usage-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:700px){
  .nursapp-billing-summary,
  .nursapp-usage-grid{
    grid-template-columns:1fr;
  }
}


/* v3.1.0: tenant identity and licensing readiness */
.nursapp-tenant-badge{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  padding:14px 16px;
  margin:16px 0;
  border:1px solid #dce6f6;
  border-radius:18px;
  background:linear-gradient(135deg,#fff,#f8fbff);
  box-shadow:0 12px 34px rgba(36,47,101,.06);
}
.nursapp-tenant-badge strong{
  display:block;
  color:#242f65;
  font-size:16px;
}
.nursapp-tenant-badge span{
  display:block;
  color:#667394;
  font-weight:800;
  margin-top:3px;
}
.nursapp-tenant-badge em{
  font-style:normal;
  border-radius:999px;
  padding:8px 12px;
  font-weight:900;
  background:#edf4ff;
  color:#242f65;
  white-space:nowrap;
}
.nursapp-tenant-badge em.valid{
  background:#a8ddb4;
  color:#173f22;
}
.nursapp-tenant-badge em.missing{
  background:#fff8e8;
  color:#7a4d00;
}
.nursapp-tenant-badge em.manual{
  background:#edf4ff;
  color:#242f65;
}
.nursapp-tenant-fingerprint{
  display:grid;
  grid-template-columns:150px minmax(0,1fr);
  gap:8px 12px;
  padding:14px;
  border:1px solid #dce6f6;
  border-radius:16px;
  background:#f8fbff;
  margin:0 0 14px;
}
.nursapp-tenant-fingerprint strong{
  color:#242f65;
}
.nursapp-tenant-fingerprint span{
  color:#667394;
  font-weight:800;
  overflow-wrap:anywhere;
}
.nursapp-manager-tenant-strip{
  margin-bottom:16px;
}
.nursapp-manager-tenant-strip .nursapp-tenant-badge{
  margin:0;
}
.nursapp-subscription-lockdown{
  margin-top:12px;
}
@media(max-width:700px){
  .nursapp-tenant-badge{
    flex-direction:column;
    align-items:flex-start;
  }
  .nursapp-tenant-fingerprint{
    grid-template-columns:1fr;
  }
}


/* v3.2.0: Subscription & Service Control admin directory */
.nursapp-subcontrol-tabs{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin:18px 0;
  padding:10px;
  background:#f8fbff;
  border:1px solid #dce6f6;
  border-radius:18px;
}
.nursapp-subcontrol-tabs a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  border-radius:999px;
  padding:10px 14px;
  color:#242f65;
  font-weight:900;
  background:#fff;
  border:1px solid #dce6f6;
}
.nursapp-subcontrol-tabs a.active,
.nursapp-subcontrol-tabs a:hover{
  background:#242f65;
  border-color:#242f65;
  color:#fff;
}
.nursapp-subcontrol-dashboard,
.nursapp-plan-template-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:18px;
}
.nursapp-plan-template-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.nursapp-subcontrol-card{
  background:#fff;
  border:1px solid #dce6f6;
  border-radius:22px;
  padding:20px;
  box-shadow:0 18px 46px rgba(36,47,101,.08);
}
.nursapp-subcontrol-card h2{
  margin:0 0 12px;
  color:#242f65;
}
.nursapp-subcontrol-card p{
  color:#667394;
  font-weight:700;
}
.nursapp-subcontrol-card p strong{
  color:#242f65;
}
.nursapp-plan-module-list{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:12px;
}
.nursapp-plan-module-list span{
  display:inline-flex;
  border-radius:999px;
  background:#edf4ff;
  color:#24356f;
  padding:7px 10px;
  font-size:12px;
  font-weight:900;
}
@media(max-width:1100px){
  .nursapp-subcontrol-dashboard,
  .nursapp-plan-template-grid{
    grid-template-columns:1fr;
  }
}
@media(max-width:700px){
  .nursapp-subcontrol-tabs a{
    width:100%;
  }
}


/* v3.2.1: monetisation menu is now a visible Nursapp submenu group */
.nursapp-subcontrol-wrap .description{
  max-width:980px;
}


/* v3.2.2: force-visible monetisation menu pages */
.nursapp-subcontrol-tabs{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin:18px 0;
  padding:10px;
  background:#f8fbff;
  border:1px solid #dce6f6;
  border-radius:18px;
}
.nursapp-subcontrol-tabs a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  border-radius:999px;
  padding:10px 14px;
  color:#242f65;
  font-weight:900;
  background:#fff;
  border:1px solid #dce6f6;
}
.nursapp-subcontrol-tabs a.active,
.nursapp-subcontrol-tabs a:hover{
  background:#242f65;
  border-color:#242f65;
  color:#fff;
}


/* v3.2.3: monetisation menu uses correct nursapp-dashboard parent slug */
.nursapp-subcontrol-tabs{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin:18px 0;
  padding:10px;
  background:#f8fbff;
  border:1px solid #dce6f6;
  border-radius:18px;
}
.nursapp-subcontrol-tabs a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  border-radius:999px;
  padding:10px 14px;
  color:#242f65;
  font-weight:900;
  background:#fff;
  border:1px solid #dce6f6;
}
.nursapp-subcontrol-tabs a.active,
.nursapp-subcontrol-tabs a:hover{
  background:#242f65;
  border-color:#242f65;
  color:#fff;
}


/* v3.3.0: commercial billing operations */
.nursapp-billing-kpis{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin:18px 0;
}
.nursapp-billing-kpis > div{
  background:#fff;
  border:1px solid #dce6f6;
  border-radius:18px;
  padding:16px;
  box-shadow:0 12px 34px rgba(36,47,101,.06);
}
.nursapp-billing-kpis strong{
  display:block;
  color:#242f65;
  font-size:26px;
}
.nursapp-billing-kpis span{
  color:#667394;
  font-weight:900;
  text-transform:uppercase;
  font-size:12px;
}
.nursapp-billing-form{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.nursapp-billing-form label{
  display:grid;
  gap:6px;
  color:#3b4568;
  font-weight:900;
}
.nursapp-billing-form input,
.nursapp-billing-form select,
.nursapp-billing-form textarea{
  width:100%;
  border:1px solid #dce6f6;
  border-radius:12px;
  padding:10px 12px;
}
.nursapp-billing-form .wide,
.nursapp-billing-form button{
  grid-column:1/-1;
}
.nursapp-inline-form{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
}
@media(max-width:900px){
  .nursapp-billing-kpis,
  .nursapp-billing-form{
    grid-template-columns:1fr;
  }
}


/* v3.4.0: payment-provider readiness */
.nursapp-payment-status{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:center;
  margin:18px 0;
  padding:16px 18px;
  border:1px solid #dce6f6;
  border-radius:18px;
  background:#f8fbff;
  box-shadow:0 12px 34px rgba(36,47,101,.06);
}
.nursapp-payment-status strong{color:#242f65;font-size:18px}
.nursapp-payment-status span{color:#667394;font-weight:800}
.nursapp-payment-status.ready{background:#f0fff4;border-color:#a8ddb4}
.nursapp-payment-status.missing{background:#fff8e8;border-color:#ffe4ad}
.nursapp-payment-status.partial{background:#edf4ff}
.nursapp-payment-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:13px;
}
.nursapp-payment-form label{
  display:grid;
  gap:7px;
  color:#3b4568;
  font-weight:900;
}
.nursapp-payment-form input,
.nursapp-payment-form select{
  width:100%;
  border:1px solid #dce6f6;
  border-radius:12px;
  padding:10px 12px;
}
.nursapp-payment-form .wide,
.nursapp-payment-form button{grid-column:1/-1}
.nursapp-payment-form small{color:#667394;font-weight:700}
@media(max-width:760px){
  .nursapp-payment-status{flex-direction:column;align-items:flex-start}
  .nursapp-payment-form{grid-template-columns:1fr}
}


/* v3.5.0: subscription automation rules */
.nursapp-automation-card{
  margin-top:18px;
}
.nursapp-dunning-state{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:center;
  padding:14px 16px;
  border-radius:16px;
  border:1px solid #dce6f6;
  background:#f8fbff;
  margin:10px 0 14px;
}
.nursapp-dunning-state strong{
  color:#242f65;
  font-size:17px;
}
.nursapp-dunning-state span{
  color:#667394;
  font-weight:800;
}
.nursapp-dunning-state.upcoming,
.nursapp-dunning-state.grace{
  background:#fff8e8;
  border-color:#ffe4ad;
}
.nursapp-dunning-state.overdue{
  background:#fff3f3;
  border-color:#ffb3b3;
}
.nursapp-dunning-state.ok{
  background:#f0fff4;
  border-color:#a8ddb4;
}
.nursapp-inline-form select{
  min-width:260px;
}
@media(max-width:760px){
  .nursapp-dunning-state{
    flex-direction:column;
    align-items:flex-start;
  }
  .nursapp-inline-form select{
    min-width:100%;
  }
}

/* v3.6.0: Stripe live integration layer */
.nursapp-stripe-live-card{margin-top:18px}
.nursapp-stripe-actions{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0 14px}
.nursapp-stripe-actions form{margin:0}
.nursapp-payment-form label:nth-child(n+9):nth-child(-n+14){background:#f8fbff;border:1px solid #dce6f6;border-radius:14px;padding:12px}
@media(max-width:760px){.nursapp-stripe-actions{flex-direction:column}.nursapp-stripe-actions .button{width:100%;text-align:center}}

/* v3.7.0: client-facing billing and plan selection */
.nursapp-client-billing{max-width:1180px;margin:0 auto;padding:24px}
.nursapp-billing-hero{display:grid;grid-template-columns:1.5fr .9fr;gap:22px;align-items:stretch;margin-bottom:18px}
.nursapp-billing-hero>div{background:linear-gradient(135deg,#242f65,#51a2fe);color:#fff;border-radius:28px;padding:34px;box-shadow:0 22px 55px rgba(36,47,101,.20)}
.nursapp-billing-hero span{text-transform:uppercase;font-weight:900;letter-spacing:.08em;opacity:.9}
.nursapp-billing-hero h1{font-size:38px;line-height:1.05;margin:12px 0;color:#fff}
.nursapp-billing-hero p{font-size:16px;max-width:650px;color:rgba(255,255,255,.88)}
.nursapp-billing-hero aside .nursapp-tenant-badge{height:100%;margin:0}
.nursapp-current-plan{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0}
.nursapp-current-plan>div{background:#fff;border:1px solid #dce6f6;border-radius:20px;padding:18px;box-shadow:0 14px 36px rgba(36,47,101,.07)}
.nursapp-current-plan strong{display:block;color:#242f65;font-size:22px}
.nursapp-current-plan span{display:block;color:#667394;font-weight:900;text-transform:uppercase;font-size:12px;margin-top:4px}
.nursapp-plan-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:22px 0}
.nursapp-plan-card{background:#fff;border:1px solid #dce6f6;border-radius:24px;padding:20px;box-shadow:0 16px 44px rgba(36,47,101,.08);display:flex;flex-direction:column;gap:16px}
.nursapp-plan-card.current{border-color:#51a2fe;box-shadow:0 18px 54px rgba(81,162,254,.18)}
.nursapp-plan-card header{display:flex;justify-content:space-between;align-items:center;gap:10px}
.nursapp-plan-card header span{font-size:20px;font-weight:900;color:#242f65}
.nursapp-plan-card header em{font-style:normal;border-radius:999px;background:#edf4ff;color:#242f65;padding:6px 9px;font-size:12px;font-weight:900}
.nursapp-plan-limits{display:grid;gap:8px}
.nursapp-plan-limits p{display:flex;justify-content:space-between;gap:10px;margin:0;padding:8px 0;border-bottom:1px solid #eef3fb}
.nursapp-plan-limits strong{color:#242f65}
.nursapp-plan-limits span{color:#667394;font-weight:800}
.nursapp-plan-modules{display:flex;flex-wrap:wrap;gap:6px}
.nursapp-plan-modules span{background:#f8fbff;border:1px solid #dce6f6;color:#3b4568;border-radius:999px;padding:6px 9px;font-size:12px;font-weight:900}
.nursapp-plan-card form{margin-top:auto}
.nursapp-plan-card .nursapp-btn{width:100%;border:0;border-radius:14px;background:#242f65;color:#fff;font-weight:900;padding:12px 14px;cursor:pointer}
.nursapp-plan-card .nursapp-btn.secondary{background:#51a2fe}
.nursapp-plan-card .nursapp-btn:disabled{background:#d8deea;color:#6f7890;cursor:not-allowed}
.nursapp-billing-help,.nursapp-billing-banner{background:#fff;border:1px solid #dce6f6;border-radius:22px;padding:20px;box-shadow:0 14px 36px rgba(36,47,101,.07);margin-top:18px}
.nursapp-billing-banner.success{border-color:#a8ddb4;background:#f0fff4}
.nursapp-billing-banner.cancel{border-color:#ffe4ad;background:#fff8e8}
.nursapp-billing-banner strong,.nursapp-billing-banner span{display:block}
@media(max-width:1100px){.nursapp-plan-grid{grid-template-columns:repeat(2,1fr)}.nursapp-billing-hero{grid-template-columns:1fr}.nursapp-current-plan{grid-template-columns:1fr}}
@media(max-width:700px){.nursapp-client-billing{padding:14px}.nursapp-plan-grid{grid-template-columns:1fr}.nursapp-billing-hero h1{font-size:30px}.nursapp-billing-hero>div{padding:24px}}

/* v3.8.0: production readiness hardening */
.nursapp-readiness-hero{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  border-radius:24px;
  padding:22px;
  margin:18px 0;
  color:#fff;
  box-shadow:0 20px 54px rgba(36,47,101,.16);
  background:linear-gradient(135deg,#ff5151,#242f65);
}
.nursapp-readiness-hero.review{background:linear-gradient(135deg,#ffb347,#242f65)}
.nursapp-readiness-hero.ready{background:linear-gradient(135deg,#51a2fe,#242f65)}
.nursapp-readiness-hero strong{display:block;font-size:46px;line-height:1}
.nursapp-readiness-hero span{display:block;font-weight:900;text-transform:uppercase;letter-spacing:.08em;margin-top:6px}
.nursapp-readiness-hero p{margin:0;color:rgba(255,255,255,.92);font-weight:800;text-align:right}
.nursapp-readiness-settings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0}
.nursapp-readiness-settings h2,
.nursapp-readiness-settings button{grid-column:1/-1}
.nursapp-readiness-settings label{display:grid;gap:7px;color:#3b4568;font-weight:900}
.nursapp-readiness-settings input,
.nursapp-readiness-settings select{width:100%;border:1px solid #dce6f6;border-radius:12px;padding:10px 12px}
.nursapp-readiness-group{margin-top:18px}
.nursapp-readiness-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.nursapp-readiness-item{border:1px solid #dce6f6;border-radius:16px;padding:14px;background:#f8fbff}
.nursapp-readiness-item b{display:block;color:#242f65;font-size:15px}
.nursapp-readiness-item span{display:inline-flex;margin:8px 0;border-radius:999px;padding:5px 9px;font-weight:900;text-transform:uppercase;font-size:11px;background:#edf4ff;color:#242f65}
.nursapp-readiness-item p{margin:0;color:#667394;font-weight:700}
.nursapp-readiness-item.pass{border-color:#a8ddb4;background:#f0fff4}
.nursapp-readiness-item.warn{border-color:#ffe4ad;background:#fff8e8}
.nursapp-readiness-item.fail{border-color:#ffb3b3;background:#fff3f3}
.nursapp-readiness-item.pass span{background:#a8ddb4;color:#173f22}
.nursapp-readiness-item.warn span{background:#ffe4ad;color:#7a4d00}
.nursapp-readiness-item.fail span{background:#ff5151;color:#fff}
@media(max-width:900px){
  .nursapp-readiness-hero{flex-direction:column;align-items:flex-start}
  .nursapp-readiness-hero p{text-align:left}
  .nursapp-readiness-settings,.nursapp-readiness-list{grid-template-columns:1fr}
}

/* v3.9.0: security and compliance hardening */
.nursapp-security-score{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:10px 18px;
  align-items:center;
  background:linear-gradient(135deg,#242f65,#51a2fe);
  color:#fff;
  border-radius:24px;
  padding:22px;
  margin:18px 0;
  box-shadow:0 20px 54px rgba(36,47,101,.16);
}
.nursapp-security-score strong{
  font-size:48px;
  line-height:1;
}
.nursapp-security-score span{
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.nursapp-security-score p{
  grid-column:1/-1;
  margin:0;
  color:rgba(255,255,255,.9);
  font-weight:800;
}
.nursapp-security-settings{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin:18px 0;
}
.nursapp-security-settings h2,
.nursapp-security-settings button{
  grid-column:1/-1;
}
.nursapp-security-settings label{
  display:grid;
  gap:7px;
  color:#3b4568;
  font-weight:900;
}
.nursapp-security-settings input,
.nursapp-security-settings select{
  width:100%;
  border:1px solid #dce6f6;
  border-radius:12px;
  padding:10px 12px;
}
.nursapp-privacy-export{
  margin-top:18px;
}
.nursapp-payment-form small{
  display:block;
  color:#667394;
  font-weight:700;
  margin-top:4px;
}
@media(max-width:900px){
  .nursapp-security-settings{
    grid-template-columns:1fr;
  }
  .nursapp-security-score{
    grid-template-columns:1fr;
  }
}

/* v4.0.0: End-to-End QA & Test Mode Toolkit */
.nursapp-qa-hero{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  border-radius:24px;
  padding:22px;
  margin:18px 0;
  color:#fff;
  box-shadow:0 20px 54px rgba(36,47,101,.16);
  background:linear-gradient(135deg,#242f65,#51a2fe);
}
.nursapp-qa-hero strong{display:block;font-size:48px;line-height:1}
.nursapp-qa-hero span{display:block;font-weight:900;text-transform:uppercase;letter-spacing:.08em;margin-top:6px}
.nursapp-qa-hero p{margin:0;color:rgba(255,255,255,.92);font-weight:800;text-align:right}
.nursapp-qa-settings{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin:18px 0;
}
.nursapp-qa-settings h2,.nursapp-qa-settings button{grid-column:1/-1}
.nursapp-qa-settings label{display:grid;gap:7px;color:#3b4568;font-weight:900}
.nursapp-qa-settings input,.nursapp-qa-settings select{width:100%;border:1px solid #dce6f6;border-radius:12px;padding:10px 12px}
.nursapp-qa-actions{margin-top:18px}
.nursapp-qa-actions>div{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.nursapp-qa-actions form{margin:0}
.nursapp-qa-scenarios{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.nursapp-qa-scenarios details{border:1px solid #dce6f6;border-radius:16px;background:#f8fbff;padding:14px}
.nursapp-qa-scenarios summary{cursor:pointer;color:#242f65;font-weight:900}
.nursapp-qa-scenarios ol{margin:12px 0 0 20px;color:#3b4568;font-weight:700}
.nursapp-qa-scenarios li{margin:7px 0}
@media(max-width:900px){
  .nursapp-qa-hero{flex-direction:column;align-items:flex-start}
  .nursapp-qa-hero p{text-align:left}
  .nursapp-qa-settings,.nursapp-qa-scenarios{grid-template-columns:1fr}
  .nursapp-qa-actions>div{flex-direction:column;align-items:stretch}
  .nursapp-qa-actions .button,.nursapp-qa-actions select{width:100%}
}

/* v4.1.0: SaaS tenant provisioning */
.nursapp-provisioning-hero{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  border-radius:24px;
  padding:22px;
  margin:18px 0;
  color:#fff;
  box-shadow:0 20px 54px rgba(36,47,101,.16);
  background:linear-gradient(135deg,#ff5151,#242f65);
}
.nursapp-provisioning-hero.progress{background:linear-gradient(135deg,#ffb347,#242f65)}
.nursapp-provisioning-hero.ready{background:linear-gradient(135deg,#51a2fe,#242f65)}
.nursapp-provisioning-hero strong{display:block;font-size:48px;line-height:1}
.nursapp-provisioning-hero span{display:block;font-weight:900;text-transform:uppercase;letter-spacing:.08em;margin-top:6px}
.nursapp-provisioning-hero p{margin:0;color:rgba(255,255,255,.92);font-weight:800;text-align:right}
.nursapp-provisioning-form{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin:18px 0;
}
.nursapp-provisioning-form h2,
.nursapp-provisioning-form .wide,
.nursapp-provisioning-form button{grid-column:1/-1}
.nursapp-provisioning-form label{display:grid;gap:7px;color:#3b4568;font-weight:900}
.nursapp-provisioning-form input:not([type=checkbox]),
.nursapp-provisioning-form select,
.nursapp-provisioning-form textarea{width:100%;border:1px solid #dce6f6;border-radius:12px;padding:10px 12px}
.nursapp-provisioning-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.nursapp-provisioning-checklist label{
  display:flex;
  align-items:flex-start;
  gap:10px;
  border:1px solid #dce6f6;
  border-radius:16px;
  padding:14px;
  background:#f8fbff;
}
.nursapp-provisioning-checklist input{margin-top:4px}
.nursapp-provisioning-checklist span{display:grid;gap:4px}
.nursapp-provisioning-checklist strong{color:#242f65}
.nursapp-provisioning-checklist em{font-style:normal;color:#667394;font-weight:700}
.nursapp-provisioning-actions{margin-top:18px}
.nursapp-provisioning-actions>div{display:flex;flex-wrap:wrap;gap:10px}
.nursapp-handoff-card{background:#fff;border:1px solid #dce6f6;border-radius:24px;padding:22px;box-shadow:0 18px 46px rgba(36,47,101,.08);margin-top:18px}
.nursapp-handoff-card h2{margin-top:0;color:#242f65}
.nursapp-handoff-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.nursapp-handoff-grid div{border:1px solid #dce6f6;border-radius:16px;padding:13px;background:#f8fbff}
.nursapp-handoff-grid strong{display:block;color:#242f65;font-size:12px;text-transform:uppercase;letter-spacing:.05em}
.nursapp-handoff-grid span{display:block;color:#3b4568;font-weight:800;margin-top:5px;overflow-wrap:anywhere}
@media(max-width:1000px){
  .nursapp-provisioning-form,.nursapp-provisioning-checklist,.nursapp-handoff-grid{grid-template-columns:1fr}
  .nursapp-provisioning-hero{flex-direction:column;align-items:flex-start}
  .nursapp-provisioning-hero p{text-align:left}
}
