/* Per-child leave allocations reuse the operational balance cards without crowding the overview. */
.aor-staff .aor-staff-parental-balances { margin: 0 0 24px; padding: 16px; background: #fff; border: 1px solid #d7dde2; border-radius: 12px; }
.aor-staff .aor-staff-parental-balances > summary { cursor: pointer; font-weight: 700; color: #202126; }
.aor-staff .aor-staff-parental-balances[open] > summary { margin-bottom: 16px; }
.aor-staff .aor-staff-balance-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,240px),1fr)); gap: 16px; }
/* Guest sign-in: retain native fields, nonces, password controls and authentication hooks. */
.aor-account-auth #main {
  --aor-brand-red: #c71b38; --aor-brand-red-strong: #9e1830; --aor-brand-gold: #f4b524;
  --aor-canvas-light: #f5f7f8; --aor-surface-light: #fff; --aor-ink-light: #202126; --aor-muted-light: #66707a; --aor-line-light: #d7dde2;
  background: var(--aor-canvas-light); color: var(--aor-ink-light); font: 14px/1.5 Lato, Arial, sans-serif;
}
.aor-account-auth #main * { box-sizing: border-box; }
.aor-account-auth #main:has(.woocommerce-form-login) .page-title { display: none; }
.aor-account-auth #main .my-account { padding: 48px 20px 64px; }
.aor-account-auth #main .account-container {
  width: 100%; max-width: 480px; margin: 0 auto; padding: 32px;
  background: var(--aor-surface-light); border: 1px solid var(--aor-line-light); border-top: 3px solid var(--aor-brand-red); border-radius: 14px;
}
.aor-account-auth #main .account-container:has(.woocommerce-form-register) { max-width: 960px; }
.aor-account-auth #main .account-login-inner > h2 { display: none; }
.aor-account-auth #main .aor-account-login-intro { margin: 0 0 28px; }
.aor-account-auth #main .aor-account-login-intro .aor-account-eyebrow { margin: 0 0 8px; color: var(--aor-brand-red-strong); font-size: 11px; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.aor-account-auth #main .aor-account-login-intro h1 { margin: 0 0 10px; color: var(--aor-ink-light); font: 900 30px/1.15 Lato, Arial, sans-serif; letter-spacing: -.035em; }
.aor-account-auth #main .aor-account-login-intro > p:last-child { margin: 0; color: var(--aor-muted-light); font-size: 14px; line-height: 1.55; text-wrap: pretty; }
.aor-account-auth #main .woocommerce-form-login { margin: 0; }
.aor-account-auth #main .woocommerce-form-login > .form-row { margin: 0 0 20px; padding: 0; }
.aor-account-auth #main .woocommerce-form-login label { display: block; margin: 0 0 7px; color: var(--aor-ink-light); font: 700 13px/1.45 Lato, Arial, sans-serif; text-transform: none; }
.aor-account-auth #main .woocommerce-form-login input:not([type=hidden]):not([type=checkbox]):not([type=radio]) { width: 100%; min-height: 48px; margin: 0; padding: 11px 13px; border: 1px solid var(--aor-line-light); border-radius: 8px; box-shadow: none; background: white; color: var(--aor-ink-light); font: 400 16px/1.4 Lato, Arial, sans-serif; }
.aor-account-auth #main .woocommerce-form-login input:-webkit-autofill { -webkit-box-shadow: 0 0 0 1000px #f8fafb inset; -webkit-text-fill-color: #202126; }
.aor-account-auth #main .woocommerce-form-login .password-input input { padding-right: 46px; }
.aor-account-auth #main .woocommerce-form-login .show-password-input { top: 50%; right: 13px; transform: translateY(-50%); }
.aor-account-auth #main .woocommerce-form-login .woocommerce-form-login__rememberme { display: flex; align-items: center; gap: 9px; min-height: 32px; margin: 0 0 16px; cursor: pointer; }
.aor-account-auth #main .woocommerce-form-login input[type=checkbox] { flex: 0 0 17px; width: 17px; min-width: 17px; height: 17px; margin: 0; padding: 0; accent-color: var(--aor-brand-red); }
.aor-account-auth #main .woocommerce-form-login .woocommerce-form-login__submit { display: block; width: 100%; min-height: 48px; margin: 0; padding: 12px 20px; border: 0; border-radius: 999px; background: var(--aor-brand-red); color: white; font: 900 14px/1.5 Lato, Arial, sans-serif; letter-spacing: 0; text-transform: none; cursor: pointer; transition: background .2s; }
.aor-account-auth #main .woocommerce-form-login .woocommerce-form-login__submit:hover { background: var(--aor-brand-red-strong); }
.aor-account-auth #main .woocommerce-form-login .woocommerce-form-login__submit:active { transform: translateY(1px); }
.aor-account-auth #main .woocommerce-LostPassword { margin: 0; text-align: center; }
.aor-account-auth #main .woocommerce-LostPassword a { color: var(--aor-brand-red-strong); font-size: 13px; font-weight: 700; text-underline-offset: 3px; }
.aor-account-auth #main :is(input,button,a):focus-visible { outline: 3px solid var(--aor-brand-gold); outline-offset: 3px; }
.aor-account-auth #main .woocommerce-notices-wrapper { max-width: 480px; margin: 0 auto 20px; }
.aor-account-auth #main .woocommerce-error { border-left-color: var(--aor-brand-red); font-size: 14px; }
/* Simba inserts its native OTP controls before the WooCommerce intro and hides
   original paragraphs inline. Restore only our own intro, never native fields. */
.aor-account-auth #main .aor-login-verification { display: none; }
.aor-account-auth #main .woocommerce-form-login:has(#simba_two_factor_auth) { display: flex; flex-direction: column; align-items: stretch; }
.aor-account-auth #main .woocommerce-form-login:has(#simba_two_factor_auth) .aor-account-login-intro { order: -1; margin-bottom: 24px; }
.aor-account-auth #main .woocommerce-form-login:has(#simba_two_factor_auth) .aor-account-login-intro > p { visibility: visible !important; position: static !important; }
.aor-account-auth #main .woocommerce-form-login:has(#simba_two_factor_auth) .aor-login-primary { display: none; }
.aor-account-auth #main .woocommerce-form-login:has(#simba_two_factor_auth) .aor-login-verification { display: inline; }
.aor-account-auth #main .woocommerce-form-login:has(#simba_two_factor_auth) > label { margin-bottom: 8px; }
.aor-account-auth #main .woocommerce-form-login #simba_two_factor_auth { letter-spacing: .12em; font-variant-numeric: tabular-nums; }
.aor-account-auth #main .woocommerce-form-login:has(#simba_two_factor_auth) > .forgetmenot { margin: 8px 0 22px; color: var(--aor-muted-light); font: 400 13px/1.5 Lato, Arial, sans-serif; }
.aor-account-auth #main .woocommerce-form-login:has(#simba_two_factor_auth) > .submit { margin: 0; padding: 0; }
.aor-account-auth #main .woocommerce-form-login input#tfa_login_btn[type=submit] { min-height: 48px; padding: 12px 20px; border: 0; border-radius: 999px; background: var(--aor-brand-red); color: white; font: 900 14px/1.5 Lato, Arial, sans-serif; letter-spacing: 0; text-transform: none; cursor: pointer; transition: background .2s; }
.aor-account-auth #main .woocommerce-form-login input#tfa_login_btn[type=submit]:hover { background: var(--aor-brand-red-strong); }
.aor-account-auth #main .woocommerce-form-login input#tfa_login_btn[type=submit]:active { transform: translateY(1px); }
@media(max-width:600px) {
  .aor-account-auth #main .my-account { padding: 24px 16px 40px; }
  .aor-account-auth #main .my-account > .container { padding: 0; }
  .aor-account-auth #main .account-container { padding: 24px 20px; border-radius: 12px; }
  .aor-account-auth #main .aor-account-login-intro h1 { font-size: 28px; }
}

/* Approved My Account presentation. Native WooCommerce endpoints and access gates remain intact. */
.aor-account-design #main {
  --aor-brand-red: #c71b38; --aor-brand-red-strong: #9e1830; --aor-brand-red-soft: #fff1f3;
  --aor-canvas-light: #f5f7f8; --aor-ink-light: #202126; --aor-muted-light: #66707a; --aor-line-light: #d7dde2;
  background: #f7f7f7; color: var(--aor-ink-light); font: 14px/1.5 Lato, Arial, sans-serif;
}
.aor-account-design #main * { box-sizing: border-box; }
/* Match the approved native Staff Requests header across signed-in account endpoints.
   Keep the theme's shared container width and responsive header alignment. */
.aor-account-design #main .page-title { background: #f7f7f7; border-bottom: 1px solid #ececec; color: #4a4a4a; font: 16px/1.6 Lato, sans-serif; }
.aor-account-design #main .page-title h1 { color: #555; font: 700 1.7em/1.2 Lato, sans-serif; letter-spacing: .05em; text-transform: uppercase; }
.aor-account-design #main .my-account { padding: 30px 0 64px; max-width: none; margin: auto; }
.aor-account-dashboard #main .aor-account-breadcrumb { display: none; }
@media(max-width:549px) {
  .aor-account-design #main .page-title h1 { font-size: 1.4em; }
}
.aor-account-design #main .vertical-tabs { display: grid; grid-template-columns: 232px minmax(0, 1fr); gap: 32px; margin: 0; width: 100%; max-width: none; align-items: start; }
.aor-account-design #main .vertical-tabs > .col { padding: 0; width: auto; max-width: none; min-width: 0; flex-basis: auto; }
.aor-account-sidebar #main .vertical-tabs > .col-border { --aor-brand-red-soft: #fff1f3; --aor-brand-red-strong: #9e1830; box-sizing: border-box; border: 1px solid #e2e7ea; background: white; border-radius: 12px; padding: 22px 12px 14px; font-family: Lato, Arial, sans-serif; align-self: flex-start; }
.aor-account-sidebar #main .woocommerce-MyAccount-navigation { width: 100%; float: none; }
.aor-account-sidebar #main .account-user { display: flex; align-items: center; gap: 12px; margin: 0 0 20px; padding: 0 9px; }
.aor-account-sidebar #main .account-user .image { width: 44px; height: 44px; margin: 0; flex-shrink: 0; }
.aor-account-sidebar #main .account-user img { width: 44px; height: 44px; border-radius: 12px; }
.aor-account-sidebar #main .user-name { font-size: 15px; font-weight: 700; }
.aor-account-sidebar #main .user-id { display: none; }
.aor-account-sidebar #main #my-account-nav { display: grid; gap: 4px; margin: 0; }
.aor-account-sidebar #main #my-account-nav li { margin: 0; border: 0; }
.aor-account-sidebar #main #my-account-nav li::before { display: none; }
.aor-account-sidebar #main #my-account-nav a::before { display: none; }
.aor-account-sidebar #main #my-account-nav a { display: flex; align-items: center; min-height: 44px; padding: 11px 12px; border-radius: 8px; font: 700 12px/1.5 Lato, Arial, sans-serif; color: #53616a; text-transform: none; letter-spacing: 0; }
.aor-account-sidebar #main #my-account-nav a:hover { background: #f5f7f8; }
.aor-account-sidebar #main #my-account-nav .is-active a { background: var(--aor-brand-red-soft); color: var(--aor-brand-red-strong); font-weight: 900; }
.aor-account-sidebar #main #my-account-nav a:focus-visible { outline: 3px solid #f4b524; outline-offset: 3px; }
.aor-account-sidebar #main #my-account-nav .woocommerce-MyAccount-navigation-link--customer-logout { margin-top: 18px; border-top: 1px solid #e8ecef; padding-top: 10px; }
.aor-account-design #main .woocommerce-MyAccount-content { width: 100%; float: none; }
.aor-account-dashboard #main .woocommerce-MyAccount-content > p,
.aor-account-dashboard #main .dashboard-links { display: none; }
.aor-account-design #main :is(a,button,input,select,textarea):focus-visible { outline: 3px solid #f4b524; outline-offset: 3px; }
.aor-account-home h1,.aor-account-home h2,.aor-account-home h3,.aor-account-home p { margin-top: 0; font-family: Lato, Arial, sans-serif; }
.aor-account-home svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; }
.aor-account-home a { text-decoration: none; }
.aor-account-breadcrumb { display: flex; gap: 9px; color: #6b7780; font-size: 11px; margin-bottom: 22px; }
.aor-account-breadcrumb span { color: #89929a; }
.aor-account-welcome { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; margin-bottom: 28px; }
.aor-account-home .aor-account-eyebrow { color: var(--aor-brand-red-strong); font-size: 10px; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; margin-bottom: 7px; }
.aor-account-home .aor-account-welcome h1 { margin: 0 0 9px; font-size: 32px; font-weight: 900; line-height: 1.15; letter-spacing: -.035em; color: var(--aor-ink-light); }
.aor-account-welcome div > p:last-child { color: var(--aor-muted-light); font-size: 14px; max-width: 530px; margin: 0; }
.aor-account-role { white-space: nowrap; border: 1px solid #e0e6e9; background: white; border-radius: 7px; padding: 7px 9px; font-size: 10px; font-weight: 700; color: #59666e; }
.aor-account-staff { display: flex; align-items: center; gap: 16px; padding: 24px; background: white; border: 1px solid #e3e8eb; border-left: 3px solid var(--aor-brand-red); border-radius: 12px; margin-bottom: 30px; }
.aor-account-staff > div { min-width: 0; }
.aor-account-staff-icon { display: grid; place-items: center; width: 44px; height: 44px; flex-shrink: 0; border-radius: 10px; background: var(--aor-brand-red-soft); color: var(--aor-brand-red-strong); }
.aor-account-staff h2 { font-size: 18px; font-weight: 900; line-height: 1.3; letter-spacing: -.02em; color: var(--aor-ink-light); margin-bottom: 6px; }
.aor-account-staff div > p:last-child { font-size: 12px; color: var(--aor-muted-light); max-width: 320px; margin: 0; }
.aor-account-primary { display: inline-flex; align-items: center; justify-content: center; gap: 9px; margin-left: auto; padding: 11px 17px; min-height: 44px; border-radius: 999px; background: var(--aor-brand-red); color: white!important; font-size: 12px; font-weight: 900; white-space: nowrap; }
.aor-account-primary:hover { background: var(--aor-brand-red-strong); }
.aor-account-primary svg { width: 16px; height: 16px; }
.aor-account-section-title { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-bottom: 14px; }
.aor-account-section-title h2 { margin: 0; font-size: 16px; font-weight: 900; color: var(--aor-ink-light); }
.aor-account-section-title span { color: #6b7780; font-size: 10px; white-space: nowrap; flex-shrink: 0; }
.aor-account-cards { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.aor-account-card { display: flex; align-items: center; gap: 14px; min-height: 112px; padding: 22px 20px; background: white; border: 1px solid #e1e7eb; border-radius: 12px; color: var(--aor-ink-light); }
.aor-account-card:hover { border-color: #cbb9be; background: #fffdfd; color: var(--aor-ink-light); }
.aor-account-card-icon { display: grid; place-items: center; width: 40px; height: 40px; background: #f3f6f7; border-radius: 9px; color: #53626d; flex-shrink: 0; }
.aor-account-card h3 { font-size: 15px; font-weight: 900; margin: 0 0 5px; color: var(--aor-ink-light); }
.aor-account-card p { font-size: 12px; color: var(--aor-muted-light); margin: 0; max-width: 195px; }
.aor-account-card > svg { width: 16px; height: 16px; margin-left: auto; color: #6b7780; }
.aor-account-shop { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-top: 24px; padding: 22px 2px; border-top: 1px solid var(--aor-line-light); }
.aor-account-shop > div { display: flex; align-items: center; gap: 14px; }
.aor-account-shop > div > svg { color: #6b7882; width: 24px; height: 24px; }
.aor-account-shop h3 { font-size: 13px; font-weight: 900; margin-bottom: 3px; color: var(--aor-ink-light); }
.aor-account-shop p { font-size: 12px; color: var(--aor-muted-light); margin: 0; }
.aor-account-shop > a { display: inline-flex; align-items: center; gap: 7px; font-size: 12px; font-weight: 900; color: var(--aor-brand-red-strong); white-space: nowrap; }
.aor-account-shop > a > svg { width: 16px; height: 16px; }
.aor-account-design:not(.aor-account-dashboard) #main .woocommerce-MyAccount-content { background: white; border: 1px solid #e1e7eb; border-radius: 12px; padding: 26px; }
.aor-account-design #main .woocommerce-MyAccount-content :is(input:not([type=checkbox]):not([type=radio]),select,textarea) { border: 1px solid #d7dfe4; border-radius: 8px; min-height: 46px; box-shadow: none; font-family: Lato, Arial, sans-serif; }
.aor-account-design #main .woocommerce-MyAccount-content :is(button,.button) { background: var(--aor-brand-red); color: white; border-radius: 999px; text-transform: none; letter-spacing: 0; font-family: Lato, Arial, sans-serif; }
.aor-account-design #main .woocommerce-MyAccount-content .button:hover { background: var(--aor-brand-red-strong); }
@media(max-width:1050px) {
  .aor-account-design #main .vertical-tabs { grid-template-columns: 205px minmax(0,1fr); gap: 24px; }
  .aor-account-staff { flex-wrap: wrap; }
  .aor-account-staff .aor-account-primary { margin-left: 60px; }
  .aor-account-role { display: none; }
}
@media(max-width:760px) {
  .aor-account-design #main .my-account { padding: 22px 0 48px; }
  .aor-account-design #main .vertical-tabs { display: block; }
  .aor-account-sidebar #main .vertical-tabs > .col-border { padding: 0; border: 0; background: none; margin-bottom: 24px; }
  .aor-account-sidebar:not(.aor-account-design) #main .vertical-tabs > .col-border { padding: 0 15px; }
  .aor-account-sidebar #main .account-user { display: none; }
  .aor-account-sidebar #main #my-account-nav { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: flex-start; align-items: stretch; gap: 5px; overflow: visible; padding: 0; }
  .aor-account-sidebar #main #my-account-nav li { width: auto; flex: 0 0 auto; }
  .aor-account-sidebar #main #my-account-nav a { font-size: 11px; padding: 9px 12px; min-height: 40px; background: white; border: 1px solid #e0e6e9; }
  .aor-account-sidebar #main #my-account-nav .woocommerce-MyAccount-navigation-link--customer-logout { margin: 0; padding: 0; border: 0; }
  .aor-account-home .aor-account-welcome h1 { font-size: 29px; }
  .aor-account-welcome { margin-bottom: 24px; }
  .aor-account-staff { padding: 20px; gap: 12px; }
  .aor-account-staff-icon { width: 36px; height: 36px; }
  .aor-account-staff > div { flex: 1; }
  .aor-account-staff h2 { font-size: 17px; }
  .aor-account-staff .aor-account-primary { margin: 5px 0 0; width: 100%; flex: 0 0 100%; }
  .aor-account-shop { flex-wrap: wrap; }
  .aor-account-shop > a { margin-left: 38px; }
  .aor-account-design:not(.aor-account-dashboard) #main .woocommerce-MyAccount-content { padding: 20px; }
}
@media(max-width:520px) {
  .aor-account-cards { grid-template-columns: 1fr; gap: 10px; }
  .aor-account-card { min-height: 92px; padding: 18px 15px; gap: 10px; }
  .aor-account-card-icon { width: 32px; height: 32px; }
  .aor-account-card-icon svg { width: 18px; height: 18px; }
  .aor-account-card h3 { font-size: 14px; }
  .aor-account-card p { font-size: 11px; }
  .aor-account-staff .aor-account-primary { margin-left: 0; width: 100%; }
  .aor-account-staff h2 { font-size: 16px; }
  .aor-account-welcome div > p:last-child { font-size: 13px; }
}

/* Block themes may apply their narrow post-content max-width to the shortcode root. */
body .aor-staff {
  --aor-brand-red: #c71b38;
  --aor-brand-red-strong: #9e1830;
  --aor-brand-red-soft: #fff1f3;
  --aor-brand-gold: #f4b524;
  --aor-danger-light: #b4233b;
  --aor-focus-ring: 3px solid var(--aor-brand-gold);
  --aor-canvas-light: #f5f7f8;
  --aor-surface-light: #fff;
  --aor-ink-light: #202126;
  --aor-muted-light: #66707a;
  --aor-line-light: #d7dde2;
  box-sizing: border-box;
  width: min(100%, 1160px);
  max-width: 1160px;
  margin: 0 auto;
  padding: 32px 20px 64px;
  color: var(--aor-ink-light);
  font-family: Lato, Arial, sans-serif;
}
.aor-staff * { box-sizing: border-box; }
.aor-staff [hidden] { display: none !important; }
.aor-staff-head {
  margin-bottom: 28px;
  padding: clamp(30px, 5vw, 56px);
  border-radius: 24px;
  background: linear-gradient(112deg, #151819 0%, #27171c 58%, #5d1929 100%);
  color: #fff;
}
.aor-staff-eyebrow {
  margin: 0 0 8px;
  color: #9e1830;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.aor-staff-head .aor-staff-eyebrow { color: #f4b524; }
.aor-staff .aor-staff-title { margin: 0 0 12px; color: #fff; font-family: Lato, Arial, sans-serif; font-size: clamp(36px, 4.8vw, 60px); font-weight: 800; letter-spacing: -.035em; line-height: 1.04; }
.aor-staff h2 { margin: 0 0 18px; font-family: Lato, Arial, sans-serif; font-size: 22px; font-weight: 800; line-height: 1.2; }
.aor-staff p { line-height: 1.5; }
.aor-staff-head p:last-child { max-width: 680px; margin-bottom: 0; color: #e4e0df; font-size: 17px; }
.aor-staff-workspace-nav { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: start; gap: 12px; margin: 0 0 20px; }
.aor-staff-submenu { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; min-width: 0; margin: 0; padding: 4px; border: 1px solid var(--aor-line-light); border-radius: 10px; background: #fff; }
.aor-staff-submenu a { display: inline-flex; align-items: center; gap: 6px; min-height: 40px; padding: 9px 14px; border-radius: 7px; color: var(--aor-ink-light); font-size: 12px; font-weight: 800; line-height: 1.2; text-decoration: none; white-space: nowrap; }
.aor-staff-submenu a:hover { background: #f5f7f8; }
.aor-staff-submenu a.is-active { background: var(--aor-brand-red); color: #fff; }
.aor-staff-nav-count { display: inline-grid; min-width: 20px; height: 20px; place-items: center; padding: 0 5px; border-radius: 99px; background: #eef1f3; color: #49545c; font-size: 10px; font-variant-numeric: tabular-nums; }
.aor-staff-submenu a.is-active .aor-staff-nav-count { background: #fff; color: var(--aor-brand-red-strong); }
.aor-staff-create { position: relative; min-width: 0; }
.aor-staff-create summary { display: flex; align-items: center; justify-content: center; gap: 10px; width: fit-content; max-width: 100%; min-height: 50px; margin: 0 0 0 auto; padding: 8px 16px 8px 10px; border: 1px solid var(--aor-brand-red); border-radius: 999px; background: var(--aor-brand-red); color: #fff; font: 800 14px Lato, Arial, sans-serif; cursor: pointer; list-style: none; white-space: nowrap; box-shadow: 0 3px 8px rgba(158, 24, 48, .16); transition: background .18s ease, box-shadow .18s ease; }
.aor-staff-create summary::-webkit-details-marker { display: none; }
.aor-staff-create-icon { display: inline-grid; flex: none; width: 28px; height: 28px; place-items: center; border-radius: 50%; background: rgba(255, 255, 255, .16); font-size: 22px; font-weight: 400; line-height: 1; }
.aor-staff-create-chevron { flex: none; width: 16px; height: 16px; transition: transform .18s ease; }
.aor-staff-create[open] .aor-staff-create-chevron { transform: rotate(180deg); }
.aor-staff-create summary:hover, .aor-staff-create.is-active summary, .aor-staff-create[open] summary { background: var(--aor-brand-red-strong); }
.aor-staff-create summary:active { box-shadow: 0 1px 3px rgba(158, 24, 48, .18); }
.aor-staff-create summary:focus-visible { outline: var(--aor-focus-ring); outline-offset: 3px; }
.aor-staff-create-menu { position: absolute; z-index: 20; top: calc(100% + 8px); right: 0; width: min(310px, 90vw); padding: 8px; border: 1px solid var(--aor-line-light); border-radius: 12px; background: #fff; box-shadow: 0 16px 38px rgba(18, 28, 35, .14); }
.aor-staff-create-menu p { margin: 10px 10px 4px; color: var(--aor-muted-light); font-size: 10px; font-weight: 900; letter-spacing: .07em; text-transform: uppercase; }
.aor-staff-create-menu a { display: block; min-height: 38px; padding: 9px 10px; border-radius: 7px; color: var(--aor-ink-light); font-size: 12px; font-weight: 700; text-decoration: none; }
.aor-staff-create-menu a:hover, .aor-staff-create-menu a.is-active { background: #fff1f3; color: var(--aor-brand-red-strong); }
.aor-staff-view { min-width: 0; container-type: inline-size; }
.aor-staff-view > h2 { margin-top: 0; }
.aor-staff-view > .aor-staff-panel + .aor-staff-panel { margin-top: 20px; }
.aor-staff-side { min-width: 0; }
.aor-staff-side .aor-staff-calendar, .aor-staff-view .aor-staff-assessment { margin-top: 0; }
.aor-staff-help { color: var(--aor-muted-light); }
.aor-staff .aor-staff-booking-location { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 12px; margin: 18px 0; padding: 10px 12px; border-radius: 8px; background: var(--aor-canvas-light); font-size: 13px; }
.aor-staff-booking-location span { color: var(--aor-muted-light); }
.aor-staff-booking-location strong { color: var(--aor-ink-light); font-weight: 700; }
.aor-staff-balances { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-bottom: 24px; }
.aor-staff-balance, .aor-staff-panel {
  background: var(--aor-surface-light);
  border: 1px solid var(--aor-line-light);
  border-radius: 12px;
  padding: 24px;
}
.aor-staff-balance strong { display: block; color: #9e1830; font-family: Lato, Arial, sans-serif; font-size: 27px; font-weight: 800; line-height: 1.2; }
.aor-staff-balance p { margin: 6px 0 0; color: var(--aor-muted-light); }
.aor-staff-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, 335px); gap: 18px; align-items: start; }
.aor-staff-panel { min-width: 0; }
.aor-staff form label { display: block; margin: 0 0 16px; font-size: 11px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.aor-staff form input:not([type=hidden]):not([type=checkbox]):not([type=radio]), .aor-staff form select, .aor-staff form textarea {
  display: block;
  width: 100%;
  margin-top: 6px;
  min-height: 46px;
  padding: 11px 13px;
  border: 1px solid #e1d5cf;
  border-radius: 10px;
  color: var(--aor-ink-light);
  background: #fbfaf8;
  font-family: Lato, Arial, sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: normal;
  text-transform: none;
}
.aor-staff form input[type=file] { padding: 8px; }
.aor-staff form input:is([type=checkbox], [type=radio]) { display: inline-block; flex: 0 0 17px; box-sizing: border-box; width: 17px; min-width: 17px; max-width: 17px; height: 17px; min-height: 17px; max-height: 17px; margin: 2px 0 0; padding: 0; vertical-align: top; appearance: auto; accent-color: var(--aor-brand-red); box-shadow: none; }
.aor-staff form label:has(> input:is([type=checkbox], [type=radio])):not(.aor-staff-setup-choice) { display: flex; align-items: flex-start; gap: 8px; min-height: 24px; margin: 10px 0 14px; font-size: 12px; font-weight: 700; letter-spacing: normal; line-height: 1.45; text-transform: none; cursor: pointer; }
.aor-staff form .aor-staff-confirm { display: flex; align-items: flex-start; gap: 8px; margin: 10px 0 14px; font-size: 12px; font-weight: 700; letter-spacing: normal; line-height: 1.35; text-transform: none; }
.aor-staff form .aor-staff-confirm input[type=checkbox] { display: inline-block; flex: 0 0 auto; width: 17px; height: 17px; min-height: 0; margin: 0; padding: 0; accent-color: var(--aor-brand-red); }
.aor-staff form input:focus-visible, .aor-staff form select:focus-visible, .aor-staff form textarea:focus-visible, .aor-staff a:focus-visible, .aor-staff button:focus-visible { outline: 3px solid var(--aor-brand-gold); outline-offset: 2px; }
.aor-staff-form-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.aor-staff-external-fields { margin: 4px 0 18px; padding-top: 17px; border-top: 1px solid var(--aor-line-light); }
.aor-staff-external-fields > .aor-staff-help { margin: 0 0 14px; font-size: 13px; line-height: 1.45; }
.aor-staff form .aor-staff-setup { min-width: 0; margin: 0 0 16px; padding: 13px 14px 12px; border: 1px solid var(--aor-line-light); border-radius: var(--aor-radius-panel); background: var(--aor-surface-light-raised); }
.aor-staff form .aor-staff-setup legend { padding: 0 5px; color: var(--aor-ink-light); font: 800 11px Lato, Arial, sans-serif; letter-spacing: .07em; text-transform: uppercase; }
.aor-staff form .aor-staff-setup .aor-staff-help { margin: 2px 0 10px; font-size: 12px; line-height: 1.4; }
.aor-staff-setup-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 14px; row-gap: 8px; }
.aor-staff form .aor-staff-setup-choice { display: flex; align-items: flex-start; gap: 8px; min-width: 0; margin: 0; font-size: 12px; font-weight: 700; letter-spacing: normal; line-height: 1.35; text-transform: none; }
.aor-staff form .aor-staff-setup-choice input[type=checkbox] { display: inline-block; flex: 0 0 auto; width: 17px; height: 17px; min-height: 0; margin: 0; padding: 0; accent-color: var(--aor-brand-red); }
.aor-staff .aor-staff-inventory { --aor-radius-control: 8px; --aor-radius-panel: 12px; --aor-surface-light-raised: #f7f8fa; margin: 18px 0 0; }
.aor-staff .aor-staff-inventory > summary { display: flex; align-items: center; justify-content: flex-start; gap: 8px; width: 100%; min-height: 48px; margin: 0 0 12px; padding: 12px 14px; border: 1px solid var(--aor-line-light); border-radius: var(--aor-radius-control); background: var(--aor-surface-light-raised); color: var(--aor-ink-light); font: 800 14px Lato, Arial, sans-serif; white-space: normal; box-shadow: none; cursor: pointer; list-style: none; }
.aor-staff .aor-staff-inventory > summary:hover { background: var(--aor-canvas-light); }
.aor-staff-inventory > summary::-webkit-details-marker { display: none; }
.aor-staff-inventory-chevron { margin-left: auto; font-size: 20px; }
.aor-staff-inventory[open] .aor-staff-inventory-chevron { transform: rotate(180deg); }
.aor-staff-inventory > .aor-staff-help { margin: 0 0 16px; font-size: 13px; line-height: 1.5; }
.aor-staff form .aor-staff-inventory .aor-staff-setup-choice { padding: 10px; border: 1px solid var(--aor-line-light); border-radius: var(--aor-radius-control); background: var(--aor-surface-light); cursor: pointer; }
.aor-staff-inventory .aor-staff-setup-choice > span { min-width: 0; }
.aor-staff-inventory .aor-staff-setup-choice strong, .aor-staff-inventory .aor-staff-setup-choice small { display: block; overflow-wrap: anywhere; }
.aor-staff-inventory .aor-staff-setup-choice small { margin-top: 4px; color: var(--aor-muted-light); font-size: 12px; font-weight: 400; line-height: 1.5; }
.aor-staff-inventory .aor-staff-setup-choice:has(input:checked) { border-color: var(--aor-brand-red); background: var(--aor-brand-red-soft); }
.aor-staff form button[type=submit] {
  border: 0;
  border-radius: 999px;
  padding: 12px 22px;
  background: var(--aor-brand-red);
  color: #fff;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}
.aor-staff form button[value=declined] { background: #343839; }
.aor-staff-notice { padding: 12px 16px; border-left: 4px solid var(--aor-brand-red); background: #fff1f3; margin-bottom: 20px; }
.aor-staff-assessment { margin-top: 20px; }
.aor-staff-assessment-intro { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1fr); gap: 24px; align-items: end; margin-bottom: 20px; }
.aor-staff-assessment-intro h2 { margin-bottom: 0; }
.aor-staff-assessment-intro > p { margin: 0; color: var(--aor-muted-light); }
.aor-staff-assessment .aor-staff-form-pair { gap: 20px; }
.aor-staff-account-note { display: flex; flex-wrap: wrap; gap: 8px 16px; align-items: baseline; margin-bottom: 20px; padding: 12px 14px; border-left: 3px solid var(--aor-brand-gold); background: #f7f8fa; }
.aor-staff-account-note strong { font-size: 11px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.aor-staff-account-note span { color: var(--aor-muted-light); font-size: 14px; }
.aor-staff-optional { color: var(--aor-muted-light); font-size: 10px; font-weight: 400; letter-spacing: normal; text-transform: none; }
.aor-staff-table-wrap { width: 100%; overflow-x: auto; }
.aor-staff-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.aor-staff-table th, .aor-staff-table td { padding: 13px 10px; border-bottom: 1px solid var(--aor-line-light); text-align: left; vertical-align: top; }
.aor-staff-table th { color: var(--aor-muted-light); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.aor-staff-table small { display: block; margin-top: 5px; color: var(--aor-muted-light); }
.aor-staff-table form { min-width: 160px; }
.aor-staff-table form label { margin-bottom: 7px; }
.aor-staff-table form input[type=number] { min-height: 36px; }
.aor-staff-table form button { margin: 3px 3px 3px 0; padding: 7px 10px; font-size: 12px; }
.aor-staff-status { display: inline-block; padding: 4px 7px; border-radius: 99px; font-size: 11px; font-weight: 800; }
.aor-staff-status-pending { color: #24669c; background: #e8f3fc; }
.aor-staff-status-approved { color: #16704b; background: #e2f6eb; }
.aor-staff-status-declined { color: #a3273d; background: #fff0f1; }
.aor-staff-status-scheduled { color: #24669c; background: #e8f3fc; }
.aor-staff-status-completed { color: #16704b; background: #e2f6eb; }
.aor-staff-status-received, .aor-staff-status-checked { color: #24669c; background: #e8f3fc; }
.aor-staff-status-submitted { color: #16704b; background: #e2f6eb; }
.aor-staff-status-paid { color: #16704b; background: #e2f6eb; }
.aor-staff-money { font-variant-numeric: tabular-nums; white-space: nowrap; font-weight: 900; }
.aor-staff-claims-table { min-width: 700px; }
.aor-staff-claims-table td small { display: block; margin-top: 5px; color: var(--aor-muted-light); font-size: 11px; line-height: 1.4; }
.aor-staff-claims-table td .aor-staff-overdue { color: var(--aor-danger-light); font-weight: 800; }
.aor-staff-claims-table form { margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--aor-line-light); }
.aor-staff-claims-table form button { margin: 3px 4px 3px 0; }
.aor-staff-calendar { margin-top: 20px; overflow-x: auto; }
.aor-staff-calendar-head { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 16px; }
.aor-staff-calendar-head nav { display: flex; gap: 12px; }
.aor-staff-calendar-head a { color: var(--aor-brand-red); font-weight: 800; }
.aor-staff-calendar-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); min-width: 560px; gap: 1px; background: var(--aor-line-light); border: 1px solid var(--aor-line-light); }
.aor-staff-calendar-grid > b { padding: 9px; background: #edf0f2; text-align: center; font-size: 11px; }
.aor-staff-calendar-day, .aor-staff-calendar-empty { min-height: 88px; padding: 8px; background: #fff; }
.aor-staff-calendar-day > strong { display: block; margin-bottom: 5px; font-size: 12px; }
.aor-staff-calendar-day > span { display: block; margin: 3px 0; padding: 4px 5px; border-radius: 5px; background: #e8f3fc; font-size: 11px; line-height: 1.2; }
.aor-staff-calendar-day > span.aor-staff-holiday { background: #fff1f3; color: #9e1830; font-weight: 700; }
.aor-staff-school-break, .aor-staff-calendar-day > span.aor-staff-school-break { background: #eef0f2; color: #202126; }
.aor-staff-school-flex, .aor-staff-calendar-day > span.aor-staff-school-flex { background: #fff5dd; color: #8d5b0a; }
.aor-staff-school-term, .aor-staff-calendar-day > span.aor-staff-school-term { background: #fff1f3; color: #9e1830; }
.aor-staff-school-note { margin: 12px 0; font-size: 12px; line-height: 1.5; }
.aor-staff-school-note summary { cursor: pointer; font-weight: 800; }
.aor-staff-school-note p { margin: 8px 0; font-size: 12px; }
.aor-staff-admin { max-width: none; }
.aor-staff-admin .aor-staff-table { background: #fff; }
@container (max-width: 720px) {
  .aor-staff-layout { grid-template-columns: minmax(0, 1fr); }
  .aor-staff-side { grid-row: 1; }
}
@media (max-width: 780px) {
  .aor-staff { padding: 24px 16px 48px; }
  .aor-staff-workspace-nav { grid-template-columns: minmax(0, 1fr); }
  .aor-staff-submenu { flex-wrap: nowrap; }
  .aor-staff-submenu a { flex: 1; justify-content: center; min-width: 0; min-height: 44px; padding: 8px 6px; font-size: 11px; }
  .aor-staff-create summary { width: fit-content; min-height: 48px; border-radius: 999px; }
  .aor-staff-create-menu { position: static; width: 100%; margin-top: 7px; box-shadow: none; }
  .aor-staff-create-menu a { min-height: 44px; }
  .aor-staff-layout { grid-template-columns: 1fr; }
  .aor-staff-side { grid-row: 1; }
  .aor-staff-balances { grid-template-columns: 1fr; }
  .aor-staff-assessment-intro { grid-template-columns: 1fr; gap: 10px; }
  .aor-staff-panel, .aor-staff-balance { padding: 18px; }
  .aor-staff-calendar-day, .aor-staff-calendar-empty { min-height: 58px; padding: 4px; }
  .aor-staff-calendar-day > span { font-size: 9px; overflow-wrap: anywhere; }
}
@media (max-width: 430px) {
  .aor-staff-form-pair { grid-template-columns: 1fr; gap: 0; }
  .aor-staff-calendar-grid > b { padding: 5px 0; font-size: 9px; }
  .aor-staff-calendar-head { flex-direction: column; gap: 0; }
}

/* My Account is the staff entry point; keep WooCommerce's existing navigation and shell. */
body .woocommerce-MyAccount-content .aor-staff {
  width: 100%;
  max-width: none;
  padding: 0 0 40px;
  margin: 0;
}
.aor-staff-account-entry {
  margin: 20px 0;
  padding: 18px 20px;
  border: 1px solid #d7dde2;
  border-left: 4px solid #c71b38;
  border-radius: 10px;
  background: #f5f7f8;
  font-family: Lato, Arial, sans-serif;
}
.aor-staff-account-entry strong { display: block; color: #202126; font-size: 18px; }
.aor-staff-account-entry p { margin: 5px 0 10px; color: #66707a; }
.aor-staff-account-entry a { color: #c71b38; font-weight: 800; }
.aor-staff-head {
  margin-bottom: 16px;
  padding: 20px 24px;
  border: 1px solid var(--aor-line-light);
  border-top: 4px solid var(--aor-brand-red);
  border-radius: 12px;
  background: var(--aor-canvas-light);
  color: var(--aor-ink-light);
}
.aor-staff-head .aor-staff-eyebrow { color: #9e1830; }
.aor-staff .aor-staff-title { margin-bottom: 4px; color: var(--aor-ink-light); font-size: clamp(27px, 3vw, 36px); line-height: 1.15; }
.aor-staff-head p:last-child { color: var(--aor-muted-light); font-size: 14px; }
.aor-staff-workspace-nav { margin-bottom: 18px; }
.aor-staff-notice { border-color: #16704b; border-radius: 8px; background: #e2f6eb; }
.aor-staff-notice strong { display: block; color: #145a3d; font-size: 16px; }
.aor-staff-notice p { margin: 4px 0 0; color: #234b39; }
.aor-staff-notice.aor-staff-notice-error { border-color: var(--aor-danger-light); background: #fff0f2; }
.aor-staff-notice.aor-staff-notice-error strong,
.aor-staff-notice.aor-staff-notice-error p { color: #8f1730; }
.aor-staff-dashboard { margin-bottom: 22px; }
.aor-staff-dashboard-heading { display: flex; align-items: end; justify-content: space-between; flex-wrap: wrap; gap: 8px 16px; margin-bottom: 12px; }
.aor-staff-dashboard-heading .aor-staff-eyebrow { margin-bottom: 2px; }
.aor-staff-dashboard-heading h2 { margin-bottom: 0; }
.aor-staff-dashboard-heading > p { margin: 0; color: var(--aor-muted-light); font-size: 13px; }
.aor-staff-dashboard-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 210px), 1fr)); gap: 12px; }
.aor-staff-dashboard-card { display: flex; min-width: 0; flex-direction: column; gap: 5px; padding: 17px; border: 1px solid var(--aor-line-light); border-radius: 10px; background: #fff; color: var(--aor-ink-light); text-decoration: none; }
.aor-staff-dashboard-card:hover { border-color: var(--aor-brand-red); background: #fffafb; }
.aor-staff-dashboard-card strong { color: #202126; font-size: 16px; }
.aor-staff-dashboard-card span { color: var(--aor-muted-light); font-size: 13px; }
.aor-staff-dashboard-card em { margin-top: auto; color: #9e1830; font-size: 12px; font-style: normal; font-weight: 800; }
.aor-staff-mc-documents { margin-bottom: 22px; }
.aor-staff-mc-documents h3 { margin: 0 0 8px; font-size: 18px; }
.aor-staff-file-link { color: var(--aor-brand-red-strong); font-weight: 800; text-underline-offset: 3px; }
.aor-staff-file-link:focus-visible { outline: var(--aor-focus-ring); outline-offset: 3px; }
.aor-staff-file-unavailable { color: var(--aor-danger-light); font-weight: 700; }
.aor-staff-section-title { margin: 0 0 10px; font-size: 16px; }
.aor-staff-balance, .aor-staff-panel { padding: 20px; }
.aor-staff form input:not([type=hidden]):not([type=checkbox]):not([type=radio]), .aor-staff form select, .aor-staff form textarea { border-radius: 8px; background: #fff; }
.aor-staff form button[type=submit] { border-radius: 8px; }
.aor-staff-view { scroll-margin-top: 128px; }
@media (max-width: 780px) {
  .aor-staff-head { padding: 18px; }
  body .woocommerce-MyAccount-content .aor-staff { padding-bottom: 28px; }
}

/* Approved staff workspace, adapted to the existing WooCommerce My Account shell. */
body:has(.woocommerce-MyAccount-content .aor-staff) .woocommerce { width: min(100%, 1320px); max-width: 1320px; }
body:has(.woocommerce-MyAccount-content .aor-staff) .woocommerce-MyAccount-navigation { width: 210px; }
body:has(.woocommerce-MyAccount-content .aor-staff) .woocommerce-MyAccount-content { width: calc(100% - 238px); }
/* Flatsome already places account navigation in a separate outer column. */
body .row.vertical-tabs > .col > .woocommerce > .woocommerce-MyAccount-content:has(.aor-staff) { width: 100%; float: none; }
.aor-staff { container: aor-workspace / inline-size; }
body:has(.woocommerce-MyAccount-content .aor-staff) .woocommerce-MyAccount-navigation ul { display: grid; gap: 3px; margin: 0; padding: 0; list-style: none; }
body:has(.woocommerce-MyAccount-content .aor-staff) .woocommerce-MyAccount-navigation li { margin: 0; padding: 0; }
body:has(.woocommerce-MyAccount-content .aor-staff) .woocommerce-MyAccount-navigation li a { display: block; min-height: 39px; padding: 10px 12px; border: 0; border-radius: 8px; color: #58656e; font-family: Lato, Arial, sans-serif; font-size: 12px; font-weight: 800; line-height: 1.4; text-decoration: none; }
body:has(.woocommerce-MyAccount-content .aor-staff) .woocommerce-MyAccount-navigation li a:hover { background: #f5f7f8; color: var(--aor-brand-red-strong); }
body:has(.woocommerce-MyAccount-content .aor-staff) .woocommerce-MyAccount-navigation li.is-active a { background: #fff1f3; color: var(--aor-brand-red-strong); }
.aor-staff-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; border: 0; border-radius: 0; background: transparent; padding: 8px 0 22px; }
.aor-staff-head > div:first-child { min-width: 0; }
.aor-staff-head .aor-staff-eyebrow { margin-bottom: 5px; }
.aor-staff .aor-staff-title { margin: 0 0 7px; font-size: clamp(28px, 3.2vw, 43px); font-weight: 900; letter-spacing: -.04em; text-wrap: balance; }
.aor-staff-period { color: var(--aor-brand-red); }
.aor-staff-head p:last-child { margin: 0; font-size: 14px; }
.aor-staff-date-chip { flex: none; padding: 9px 12px; border: 1px solid var(--aor-line-light); border-radius: 8px; background: #fff; color: #53606a; font-size: 11px; font-weight: 800; white-space: nowrap; }
.aor-staff-workspace-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, 335px); gap: 18px; align-items: start; margin-bottom: 24px; }
.aor-staff-workspace-main, .aor-staff-workspace-rail { display: grid; min-width: 0; gap: 17px; }
.aor-staff-summary-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.aor-staff-summary-card { min-width: 0; min-height: 118px; padding: 15px; border: 1px solid var(--aor-line-light); border-radius: 12px; background: #fff; }
.aor-staff-summary-card:first-child { border-top: 3px solid var(--aor-brand-red); }
.aor-staff-summary-card span, .aor-staff-summary-card small { display: block; }
.aor-staff-summary-card span { color: #62707a; font-size: 11px; font-weight: 800; }
.aor-staff-summary-card strong { display: block; margin: 8px 0 3px; color: var(--aor-ink-light); font-size: clamp(21px, 2.2vw, 30px); font-weight: 900; font-variant-numeric: tabular-nums; line-height: 1.05; }
.aor-staff-summary-card small { color: #7f8b93; font-size: 10px; line-height: 1.35; }
.aor-staff-dashboard-panel, .aor-staff-overview-calendar, .aor-staff-upcoming { min-width: 0; border: 1px solid var(--aor-line-light); border-radius: 12px; background: #fff; }
.aor-staff-dashboard-panel, .aor-staff-upcoming { padding: 19px; }
.aor-staff-overview-calendar { padding: 18px 15px 15px; }
.aor-staff-panel-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 10px; margin-bottom: 13px; }
.aor-staff-panel-heading .aor-staff-eyebrow { margin-bottom: 3px; font-size: 10px; }
.aor-staff-panel-heading h3 { margin: 0; color: var(--aor-ink-light); font-size: 18px; font-weight: 900; letter-spacing: -.02em; line-height: 1.2; }
.aor-staff-count { padding: 5px 8px; border-radius: 6px; background: #fff7e5; color: #8d5b0a; font-size: 10px; font-weight: 900; white-space: nowrap; }
.aor-staff-empty { margin: 0; color: var(--aor-muted-light); font-size: 13px; }
.aor-staff-attention-row { display: flex; align-items: center; gap: 10px; padding: 11px 0; border-top: 1px solid #e8edef; color: inherit; text-decoration: none; }
.aor-staff-attention-row:first-of-type { border-top: 0; }
.aor-staff-attention-mark { display: grid; place-items: center; flex: none; width: 32px; height: 32px; border-radius: 8px; background: #fff1f3; color: var(--aor-brand-red-strong); font-size: 15px; font-weight: 900; }
.aor-staff-attention-row > span:nth-child(2) { min-width: 0; flex: 1; }
.aor-staff-attention-row strong, .aor-staff-attention-row small { display: block; }
.aor-staff-attention-row strong { color: #273038; font-size: 12px; }
.aor-staff-attention-row small { margin-top: 2px; color: #79858e; font-size: 10px; }
.aor-staff-attention-row em { color: #24669c; font-size: 10px; font-style: normal; font-weight: 800; }
.aor-staff-quick-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.aor-staff-quick-actions a { display: inline-flex; align-items: center; gap: 9px; min-height: 36px; padding: 8px 10px; border: 1px solid #e2d6d8; border-radius: 8px; color: var(--aor-brand-red-strong); font-size: 11px; font-weight: 900; text-decoration: none; transition: background .2s, border-color .2s, transform .2s; }
.aor-staff-quick-actions a:hover { border-color: var(--aor-brand-red); background: #fff1f3; transform: translateY(-1px); }
.aor-staff-recent-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 11px 0; border-top: 1px solid #e8edef; }
.aor-staff-recent-row strong, .aor-staff-recent-row small { display: block; }
.aor-staff-recent-row strong { font-size: 12px; }
.aor-staff-recent-row small { margin-top: 2px; color: #79858e; font-size: 10px; }
.aor-staff-state { flex: none; padding: 5px 7px; border-radius: 6px; background: #e8f3fc; color: #24669c; font-size: 10px; font-weight: 900; }
.aor-staff-state-approved, .aor-staff-state-completed { background: #e2f6eb; color: #16704b; }
.aor-staff-state-declined { background: #fff0f1; color: #a3273d; }
.aor-staff-calendar-today, .aor-staff-overview-month nav a { display: inline-grid; place-items: center; min-height: 29px; padding: 5px 8px; border: 1px solid #dbe1e5; border-radius: 7px; color: #53616a; font-size: 10px; font-weight: 900; text-decoration: none; }
.aor-staff-calendar-today:hover, .aor-staff-overview-month nav a:hover { background: #f5f7f8; }
.aor-staff-overview-month { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin: 17px 0 10px; }
.aor-staff-overview-month strong { font-size: 14px; font-weight: 900; }
.aor-staff-overview-month nav { display: flex; gap: 5px; }
.aor-staff-overview-month nav a { min-width: 29px; font-size: 18px; line-height: 1; }
.aor-staff-overview-days, .aor-staff-overview-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 2px; }
.aor-staff-overview-days { color: #87949c; font-size: 9px; font-weight: 900; text-align: center; }
.aor-staff-overview-days span { padding: 3px 0 6px; }
.aor-staff-overview-day, .aor-staff-overview-blank { min-width: 0; min-height: 52px; border: 1px solid transparent; border-radius: 7px; }
.aor-staff-overview-day { position: relative; background: #f8fafb; transition: background .18s, border-color .18s; }
.aor-staff-overview-day.is-empty:hover, .aor-staff-overview-day.is-empty:focus-within { border-color: var(--aor-brand-red); background: #fff1f3; }
.aor-staff-overview-day.is-today { border-color: #e2bf71; background: #fffaf0; }
.aor-staff .aor-staff-day-pick { position: static; display: grid; place-items: center; flex: none; width: 24px; height: 28px; min-height: 28px; margin: 0; padding: 0; border: 0; border-radius: 6px; background: transparent; color: #39454e; font-size: 10px; font-weight: 800; line-height: 1; cursor: pointer; }
.aor-staff-day-head { display: flex; align-items: center; justify-content: space-between; gap: 1px; min-height: 32px; padding: 0 2px 0 5px; }
.aor-staff-day-number { color: #39454e; font-size: 10px; font-weight: 800; }
.aor-staff .aor-staff-day-pick:hover { background: #fff1f3; }
.aor-staff .is-empty > .aor-staff-day-pick { position: absolute; inset: 0; display: flex; align-items: flex-start; width: 100%; height: 100%; min-height: 44px; padding: 4px 5px; text-align: left; }
.aor-staff .is-empty > .aor-staff-day-pick:hover { background: transparent; }
.aor-staff-day-pick:focus-visible { outline: 2px solid var(--aor-brand-gold); outline-offset: -2px; }
.aor-staff-day-add { color: var(--aor-brand-red); font-size: 16px; line-height: 1; }
.is-empty .aor-staff-day-add { position: absolute; top: 2px; right: 4px; opacity: 0; transition: opacity .18s; }
.aor-staff-overview-day:hover .aor-staff-day-add, .aor-staff-day-pick:focus-visible .aor-staff-day-add { opacity: 1; }
@media (hover: none) { .aor-staff-day-add { opacity: .6; } }
.aor-staff-event, .aor-staff-calendar-more { display: block; width: calc(100% - 4px); overflow: hidden; margin: 1px 2px 2px; padding: 2px 3px; border: 0; border-left: 2px solid #24669c; border-radius: 2px; background: #e8f3fc; color: #24669c; font-size: 8px; font-weight: 900; line-height: 1.3; text-align: left; text-overflow: ellipsis; white-space: nowrap; }
.aor-staff-event-studio { border-color: #21865a; background: #e2f6eb; color: #16704b; }
.aor-staff-event-leave { border-color: var(--aor-brand-red); background: #fff1f3; color: var(--aor-brand-red-strong); }
.aor-staff-event-pending { border-color: #24669c; background: #e8f3fc; color: #24669c; }
.aor-staff-event-holiday { border-color: #8d5b0a; background: #fff7e5; color: #8d5b0a; }
.aor-staff button[data-aor-note] { cursor: pointer; }
.aor-staff button[data-aor-note]:hover { box-shadow: inset 0 0 0 1px currentColor; }
.aor-staff-calendar-more { border: 0; text-align: center; }
.aor-staff-calendar-legend { display: flex; flex-wrap: wrap; gap: 8px 13px; margin-top: 13px; color: #71808a; font-size: 9px; font-weight: 800; }
.aor-staff-calendar-legend span::before { content: ''; display: inline-block; width: 7px; height: 7px; margin-right: 4px; border-radius: 2px; background: #21865a; }
.aor-staff-calendar-legend span:nth-child(2)::before { background: var(--aor-brand-red); }
.aor-staff-calendar-legend span:nth-child(3)::before { background: #24669c; }
.aor-staff-calendar-hint { margin: 10px 0 0; color: #738089; font-size: 10px; line-height: 1.45; }
.aor-staff-overview-calendar[aria-busy="true"] .aor-staff-overview-grid { opacity: .55; }
.aor-staff-calendar-feedback { margin: 12px 0 0; color: var(--aor-muted-light); font-size: 12px; }
.aor-staff .aor-staff-calendar-feedback button { min-height: 36px; margin: 4px 0 0; padding: 6px 10px; border: 1px solid var(--aor-line-light); border-radius: 8px; background: #fff; color: var(--aor-brand-red-strong); font-size: 12px; }
.aor-staff-calendar-announcement { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.aor-staff-upcoming-row { display: flex; width: 100%; align-items: center; gap: 11px; padding: 10px 0; border: 0; border-top: 1px solid #e8edef; border-radius: 0; background: transparent; color: inherit; text-align: left; }
.aor-staff-upcoming-date { display: grid; place-items: center; flex: none; width: 36px; min-height: 40px; border-radius: 7px; background: #fff1f3; color: var(--aor-brand-red-strong); font-size: 15px; font-weight: 900; line-height: 1; }
.aor-staff-upcoming-date small { display: block; font-size: 9px; }
.aor-staff-upcoming-row strong, .aor-staff-upcoming-row small { display: block; }
.aor-staff-upcoming-row strong { font-size: 11px; }
.aor-staff-upcoming-row small { margin-top: 2px; color: #79858e; font-size: 10px; }
.aor-staff-calendar-dialog { position: fixed; inset: 0 0 0 auto; width: min(100%, 520px); max-width: 520px; height: 100dvh; max-height: 100dvh; margin: 0 0 0 auto; padding: 0; overflow: auto; border: 0; border-radius: 16px 0 0 16px; background: #fff; color: var(--aor-ink-light); box-shadow: -14px 0 40px rgba(24, 28, 33, .18); }
.aor-staff-calendar-dialog::backdrop { background: rgba(12, 16, 20, .42); }
.aor-staff-dialog-head { display: flex; justify-content: space-between; align-items: center; gap: 15px; padding: 18px 24px; border-bottom: 1px solid var(--aor-line-light); color: var(--aor-brand-red-strong); font-size: 11px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.aor-staff-dialog-head button { width: 32px; height: 32px; border: 0; background: #f3f5f6; color: #465159; font-size: 22px; line-height: 1; }
.aor-staff-dialog-body { padding: 24px; }
.aor-staff-dialog-body > h2 { margin-bottom: 12px; font-size: 27px; }
.aor-staff-dialog-selector { display: block; margin: 17px 0; color: #45515a; font-size: 11px; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.aor-staff-dialog-selector select { display: block; width: 100%; min-height: 44px; margin-top: 6px; padding: 9px 11px; border: 1px solid var(--aor-line-light); border-radius: 8px; background: #fff; color: var(--aor-ink-light); font-size: 14px; letter-spacing: normal; text-transform: none; }
.aor-staff-drawer-form { padding-top: 5px; }
.aor-staff-event-details { display: grid; grid-template-columns: 100px minmax(0, 1fr); gap: 10px 15px; padding: 18px; border-radius: 10px; background: var(--aor-canvas-light); font-size: 13px; }
.aor-staff-event-details dt { color: var(--aor-muted-light); font-weight: 800; }
.aor-staff-event-details dd { margin: 0; overflow-wrap: anywhere; }
.aor-staff-calendar-dialog .aor-staff-event-details :is(dt, dd) { text-transform: none; letter-spacing: normal; line-height: 1.5; }
.aor-staff-calendar-dialog [data-aor-dialog-heading]:focus-visible { outline: var(--aor-focus-ring); outline-offset: 4px; }
@media (max-width: 420px) {
  .aor-staff-event-details { grid-template-columns: minmax(0, 1fr); gap: 5px; padding: 16px; }
  .aor-staff-event-details dd { margin-bottom: 12px; }
  .aor-staff-event-details dd:last-child { margin-bottom: 0; }
}
.aor-staff [data-aor-review-source][hidden], .aor-staff [data-aor-review-open][hidden], .aor-staff [data-aor-dialog-review][hidden] { display: none !important; }
.aor-staff-calendar-dialog .aor-staff-dialog-head { position: sticky; top: 0; z-index: 2; background: var(--aor-surface-light); }
.aor-staff-calendar-dialog .aor-staff-dialog-head button { width: 44px; height: 44px; min-height: 44px; margin: 0; }
.aor-staff-review-summary dd { text-transform: none; }
.aor-staff-review-summary dd small { display: block; margin-top: 6px; color: var(--aor-muted-light); }
.aor-staff-review-summary dd strong { display: block; font-weight: 800; }
.aor-staff-review-content { margin-top: 22px; }
.aor-staff-calendar-dialog.aor-staff-document-dialog { width: min(100%, 840px); max-width: 840px; }
.aor-staff [data-aor-dialog-document][hidden], .aor-staff [data-aor-document-retry][hidden], .aor-staff [data-aor-document-pdf-hint][hidden] { display: none !important; }
.aor-staff-document-actions { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; margin: 18px 0; }
.aor-staff-document-actions .aor-staff-secondary-action { display: inline-flex; align-items: center; min-height: 44px; text-decoration: none; margin: 0; }
.aor-staff-document-viewer { min-height: 180px; background: var(--aor-canvas-light); border: 1px solid var(--aor-line-light); border-radius: 8px; overflow: hidden; }
.aor-staff-document-viewer:empty { display: none; }
.aor-staff-document-viewer img { display: block; width: 100%; max-width: 100%; height: auto; object-fit: contain; }
.aor-staff-document-viewer iframe { display: block; width: 100%; height: max(400px, 68dvh); margin: 0; border: 0; }
.aor-staff-review-content form { margin: 20px 0; padding-top: 18px; border-top: 1px solid var(--aor-line-light); }
.aor-staff-review-content form label { margin-bottom: 16px; }
.aor-staff-review-content form textarea { min-height: 80px; resize: vertical; }
.aor-staff-review-content form button { min-height: 44px; margin: 0 8px 8px 0; border-radius: var(--aor-radius-control); }
.aor-staff-review-content form button[value="declined"] { background: #30373b; }
.aor-staff-review-content .aor-staff-history { padding-top: 16px; border-top: 1px solid var(--aor-line-light); }
.aor-staff-approval-comment { padding: 12px 14px; border-radius: var(--aor-radius-control); background: var(--aor-canvas-light); color: var(--aor-ink-light); font-size: 13px; }
.aor-staff-approval-comment strong, .aor-staff-approval-comment span { display: block; }
.aor-staff-approval-comment span { margin-top: 6px; white-space: pre-line; overflow-wrap: anywhere; }
.aor-staff-invoice { margin-top: 16px; padding: 12px; border: 1px solid var(--aor-line-light); border-radius: 8px; min-width: 0; }
.aor-staff-invoice summary { cursor: pointer; color: var(--aor-brand-red-strong); font-weight: 800; line-height: 1.5; }
.aor-staff-invoice p { margin: 12px 0; font-size: 13px; line-height: 1.5; }
.aor-staff-invoice form { display: grid; gap: 12px; margin: 12px 0; }
.aor-staff-invoice label { display: block; font-size: 13px; }
.aor-staff-invoice input[type=email], .aor-staff-invoice input[type=number] { width: 100%; box-sizing: border-box; }
.aor-staff .aor-staff-secondary-action { min-height: 39px; padding: 8px 13px; border: 1px solid var(--aor-line-light); border-radius: 8px; background: #fff; color: var(--aor-ink-light); font: 800 12px Lato, Arial, sans-serif; cursor: pointer; }
.aor-staff-edit-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.aor-staff-time-control { min-width: 0; position: relative; }
.aor-staff form .aor-staff-time-control > label { margin-bottom: 5px; }
.aor-staff-time-field { position: relative; }
.aor-staff .aor-staff-time-field input { margin-bottom: 0; padding-right: 44px; border-color: var(--aor-line-light); border-radius: 8px; background: var(--aor-surface-light); font-variant-numeric: tabular-nums; }
.aor-staff .aor-staff-time-toggle { position: absolute; right: 1px; top: 1px; display: grid; place-items: center; width: 42px; height: calc(100% - 2px); min-height: 42px; margin: 0; padding: 0; border: 0; border-radius: 0 8px 8px 0; background: transparent; color: var(--aor-ink-light); font: 700 12px Lato, Arial, sans-serif; cursor: pointer; }
.aor-staff-time-toggle span { font-size: 17px; line-height: 1; }
.aor-staff-time-options { position: absolute; z-index: 20; top: 100%; left: 0; right: 0; display: grid; grid-template-columns: minmax(0, 1fr); gap: 2px; max-height: 224px; overflow-y: auto; margin-top: 5px; padding: 5px; border: 1px solid var(--aor-line-light); border-radius: 8px; background: var(--aor-surface-light); box-shadow: 0 8px 24px rgba(32,33,38,.12); scrollbar-width: thin; }
.aor-staff .aor-staff-time-options button { min-height: 42px; margin: 0; padding: 9px 11px; border: 0; border-radius: 6px; background: transparent; color: var(--aor-ink-light); font: 700 13px Lato, Arial, sans-serif; font-variant-numeric: tabular-nums; text-align: left; cursor: pointer; }
.aor-staff .aor-staff-time-options button[aria-selected="true"] { background: var(--aor-brand-red-soft); color: var(--aor-brand-red-strong); }
.aor-staff-booking-duration { margin: 8px 0 14px; color: var(--aor-muted-light); font-size: 12px; }
.aor-staff .aor-staff-time-options button:hover, .aor-staff .aor-staff-time-options button:focus-visible { background: #fff1f3; color: var(--aor-brand-red-strong); }
.aor-staff-date-field { display: block; position: relative; }
.aor-staff form .aor-staff-date-entry { margin-bottom: 0; padding-right: 46px !important; font-variant-numeric: tabular-nums; }
.aor-staff form input.aor-staff-date-native { position: absolute; bottom: 0; right: 20px; width: 1px !important; max-width: 1px; height: 1px !important; min-height: 0 !important; margin: 0; padding: 0 !important; border: 0; opacity: 0; pointer-events: none; }
.aor-staff form .aor-staff-date-toggle { position: absolute; top: 1px; right: 1px; display: grid; place-items: center; width: 42px; height: calc(100% - 2px); min-height: 42px; margin: 0; padding: 0; border: 0; border-radius: 0 8px 8px 0; background: transparent; color: var(--aor-ink-light); cursor: pointer; }
.aor-staff-date-toggle svg { width: 19px; height: 19px; }
.aor-staff form .aor-staff-date-toggle:hover { background: var(--aor-brand-red-soft); color: var(--aor-brand-red-strong); }
.aor-staff form .aor-staff-date-entry[aria-invalid="true"] { border-color: var(--aor-danger-light); }
.aor-staff-time-hint { display: block; margin: 6px 0 10px; color: var(--aor-muted-light); font-size: 11px; line-height: 1.35; }
.aor-staff-time-error { margin: -8px 0 12px; color: var(--aor-danger-light); font-size: 12px; font-weight: 700; }
.aor-staff :is(a, button, input, select, textarea):focus-visible { outline: var(--aor-focus-ring); outline-offset: 2px; }
@container aor-workspace (max-width: 720px) {
  .aor-staff-workspace-grid { grid-template-columns: minmax(0, 1fr); }
  .aor-staff-workspace-rail { grid-row: 1; }
}
@media (max-width: 780px) {
  body:has(.woocommerce-MyAccount-content .aor-staff) .woocommerce-MyAccount-navigation,
  body:has(.woocommerce-MyAccount-content .aor-staff) .woocommerce-MyAccount-content { float: none; width: 100%; }
  body:has(.woocommerce-MyAccount-content .aor-staff) .woocommerce-MyAccount-navigation ul { display: flex; gap: 4px; overflow-x: auto; margin-bottom: 16px; padding: 0 0 5px; scrollbar-width: thin; }
  body:has(.woocommerce-MyAccount-content .aor-staff) .woocommerce-MyAccount-navigation li { flex: none; }
  .aor-staff-head { align-items: flex-start; flex-direction: column; padding: 4px 0 18px; }
  .aor-staff-summary-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
.aor-staff-request-filter { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin: 16px 0; font-size: 14px; }
.aor-staff-request-filter select { width: auto; max-width: 100%; margin: 0; }
.aor-staff-request-filters { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 12px 18px; margin: 16px 0; }
.aor-staff-request-filters .aor-staff-request-filter { display: grid; gap: 5px; margin: 0; min-width: 0; color: var(--aor-ink-light); font-size: 12px; font-weight: 700; }
.aor-staff-request-filters select { min-height: 44px; padding: 8px 30px 8px 12px; border: 1px solid var(--aor-line-light); border-radius: 8px; background-color: #fff; font: inherit; }
.aor-staff-filter-result { padding-bottom: 12px; color: var(--aor-muted-light); font-size: 12px; }
.aor-staff-personal-balances .aor-staff-balances { gap: 12px; margin-bottom: 20px; }
.aor-staff-personal-balances .aor-staff-balance { padding: 16px; }
.aor-staff-personal-balances h4 { margin: 0 0 10px; color: var(--aor-ink-light); font-size: 14px; font-weight: 800; }
.aor-staff-personal-balances strong { color: var(--aor-ink-light); font-size: 25px; font-variant-numeric: tabular-nums; }
.aor-staff-personal-balances strong.aor-staff-balance-unverified { color: var(--aor-muted-light); font-size: 16px; line-height: 1.4; }
.aor-staff-personal-balances p { font-size: 12px; line-height: 1.5; }
.aor-staff-summary-grid-personal { grid-template-columns: 1fr; }
@media (max-width: 540px) {
  .aor-staff-request-filters .aor-staff-request-filter { width: 100%; }
  .aor-staff-request-filters select { width: 100%; }
  .aor-staff-filter-result { padding-bottom: 0; }
}
.aor-staff-history { margin: 10px 0; font-size: 13px; }
.aor-staff-history summary { cursor: pointer; color: var(--aor-brand-red, #c71b38); }
.aor-staff-history ul { margin: 8px 0; padding-left: 18px; }
.aor-staff-table tr[hidden] { display: none; }
.aor-staff-status-cancelled { color: #66707a; background: #f5f7f8; }
@media (max-width: 760px) {
  .aor-staff-table, .aor-staff-table tbody { display: block; width: 100%; }
  .aor-staff-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .aor-staff-table tbody tr { display: block; margin-bottom: 16px; padding: 8px; border: 1px solid var(--aor-line-light); border-radius: 12px; }
  .aor-staff-table td { display: grid; grid-template-columns: 105px minmax(0, 1fr); column-gap: 12px; min-width: 0; padding: 12px 8px; overflow-wrap: anywhere; }
  .aor-staff-table td::before { content: attr(data-aor-label); grid-column: 1; grid-row: 1 / span 20; color: var(--aor-muted-light); font-size: 11px; font-weight: 700; }
  .aor-staff-table td > * { grid-column: 2; min-width: 0; }
  .aor-staff-table td:last-child { border-bottom: 0; }
  .aor-staff-table form { min-width: 0; }
}
@media (max-width: 520px) {
  .aor-staff-summary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .aor-staff-summary-card:last-child { grid-column: 1 / -1; min-height: 88px; }
  .aor-staff-calendar-dialog { border-radius: 0; }
  .aor-staff-dialog-head, .aor-staff-dialog-body { padding-left: 18px; padding-right: 18px; }
  .aor-staff-setup-grid { grid-template-columns: 1fr; }
}
.aor-staff .aor-staff-email-focus { outline: 2px solid #c71b38; outline-offset: -2px; scroll-margin-top: 100px; }
.aor-staff .aor-staff-email-notice { margin: 0 0 18px; padding: 12px 16px; background: #fff1f3; border-left: 3px solid #c71b38; color: #202126; font-size: 14px; line-height: 1.5; }

/* Staff-only page canvas matches the live Flatsome My Account breadcrumb (#f7f7f7).
   White working surfaces and the internal reading hierarchy remain unchanged. */
body:has(.woocommerce-MyAccount-content .aor-staff) #main,
body.aor-staff-preview { background: #f7f7f7; }
body .aor-staff {
  --aor-canvas-light: #f0f3f5;
  --aor-muted-light: #53616c;
  --aor-line-light: #cbd5dd;
  --aor-control-line: #81919f;
}
.aor-staff :is(.aor-staff-balance, .aor-staff-panel, .aor-staff-summary-card,
  .aor-staff-dashboard-panel, .aor-staff-overview-calendar, .aor-staff-upcoming) {
  box-shadow: 0 2px 5px rgba(32, 33, 38, .035);
}
.aor-staff-panel-heading { padding-bottom: 12px; border-bottom: 1px solid var(--aor-line-light); }
.aor-staff-summary-card span,
.aor-staff-summary-card small,
.aor-staff-attention-row small,
.aor-staff-recent-row small,
.aor-staff-upcoming-row small { color: var(--aor-muted-light); font-size: 11px; line-height: 1.45; }
.aor-staff-overview-days { color: var(--aor-muted-light); font-size: 10px; }
.aor-staff-calendar-legend { color: var(--aor-muted-light); font-size: 10px; }
.aor-staff-calendar-hint { color: var(--aor-muted-light); font-size: 11px; }
.aor-staff-overview-day { background: var(--aor-canvas-light); }
.aor-staff-attention-row, .aor-staff-recent-row, .aor-staff-upcoming-row { border-top-color: var(--aor-line-light); }
.aor-staff-table th { background: var(--aor-canvas-light); color: var(--aor-muted-light); }
.aor-staff-table tbody tr:hover { background: #f7f9fa; }
.aor-staff .aor-staff-booking-location,
.aor-staff-event-details { border: 1px solid var(--aor-line-light); }
.aor-staff-calendar-dialog .aor-staff-dialog-head { background: var(--aor-canvas-light); }
.aor-staff form :is(input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not(.aor-staff-date-native), select, textarea),
.aor-staff-request-filters select,
.aor-staff-dialog-selector select { border-color: var(--aor-control-line); }
.aor-staff form :is(input, textarea)::placeholder { color: var(--aor-muted-light); opacity: 1; }
.aor-staff form .aor-staff-date-entry[aria-invalid="true"] { border-color: var(--aor-danger-light); }
@media (max-width: 760px) {
  .aor-staff-table tbody tr { background: #f7f9fa; }
}
.aor-staff-save-status { margin:16px 0 0; padding:12px 14px; border-radius:8px; background:#edf2f5; color:#202126; }
.aor-staff-save-status.is-error { background:#fff1f3; color:#9e1830; border:1px solid #c71b38; }
.aor-staff form[aria-busy="true"] button[type="submit"] { opacity:.65; cursor:wait; }
@media (max-width:600px) {
  body.aor-staff-workspace .grecaptcha-badge { visibility:hidden !important; }
}
.aor-staff .aor-staff-protection-note { margin:24px 0 0; font-size:12px; line-height:1.6; color:#66707a; }

/* Mobile account switcher. Native sidebar stays intact on desktop and without JS. */
.aor-account-menu-trigger { display: none; }
.aor-account-menu-sheet {
  position: fixed; inset: auto 0 0; width: 100%; max-width: 560px;
  max-height: calc(100dvh - 24px); margin: auto auto 0; padding: 0;
  border: 1px solid #d7dde2; border-bottom: 0; border-radius: 18px 18px 0 0;
  background: #fff; color: #202126; font: 14px/1.5 Lato, Arial, sans-serif;
  box-shadow: 0 -8px 32px rgba(32,33,38,.12); overflow-y: auto;
}
.aor-account-menu-sheet::backdrop { background: rgba(20,24,28,.42); }
.aor-account-menu-head { position: sticky; top: 0; display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 16px 20px; background: #fff; border-bottom: 1px solid #e4e8ec; }
.aor-account-menu-head h2 { margin: 0; color: #202126; font: 900 20px/1.3 Lato, Arial, sans-serif; }
.aor-account-menu-head .aor-account-menu-close { min-width: 60px; min-height: 44px; margin: 0; padding: 8px 12px; border: 1px solid #d7dde2; border-radius: 8px; background: #f7f8fa; color: #53616a; font: 700 13px Lato, Arial, sans-serif; text-transform: none; letter-spacing: 0; cursor: pointer; }
.aor-account-menu-sheet nav { padding: 12px 16px max(20px, env(safe-area-inset-bottom)); }
.aor-account-menu-sheet ul { list-style: none; margin: 0; padding: 0; }
.aor-account-menu-sheet li { margin: 0; }
.aor-account-menu-sheet a { display: flex; align-items: center; min-height: 48px; padding: 12px 16px; border-radius: 8px; color: #53616a; font-weight: 700; text-decoration: none; }
.aor-account-menu-sheet .is-active a { background: #fff1f3; color: #9e1830; font-weight: 900; }
.aor-account-menu-sheet a:hover { background: #f5f7f8; }
.aor-account-menu-sheet .aor-account-menu-logout { margin-top: 12px; padding-top: 12px; border-top: 1px solid #e4e8ec; }
.aor-account-menu-sheet .aor-account-menu-logout a { color: #9e1830; }
.aor-account-menu-sheet :is(a,button):focus-visible { outline: 3px solid #f4b524; outline-offset: 2px; }
body.aor-account-menu-open { overflow: hidden; }
@media(max-width:760px) {
  body.aor-account-sidebar #main #my-account-nav.aor-account-menu-ready { display: none; }
  body.aor-account-sidebar #main .aor-account-menu-trigger { display: flex; justify-content: space-between; align-items: center; gap: 16px; width: 100%; min-height: 64px; margin: 0; padding: 12px 16px; border: 1px solid #d7dde2; border-radius: 10px; background: #fff; color: #202126; font-family: Lato, Arial, sans-serif; text-align: left; text-transform: none; letter-spacing: 0; box-shadow: 0 2px 5px rgba(32,33,38,.035); cursor: pointer; }
  .aor-account-menu-trigger span { display: grid; gap: 3px; }
  .aor-account-menu-trigger small { color: #66707a; font-size: 11px; font-weight: 400; line-height: 1.4; }
  .aor-account-menu-trigger strong { color: #202126; font-size: 14px; font-weight: 900; line-height: 1.4; }
  .aor-account-menu-trigger i { color: #66707a; font-size: 18px; }
  .aor-account-menu-trigger:focus-visible { outline: 3px solid #f4b524; outline-offset: 3px; }
}
