/* THRS V14.39 — Work Schedules / Approval Requests / Executive Finish
   Cosmetic-only layer: preserves the existing layout sections, controls,
   10/20/50 pagination, status filtering, request review flow and brand colors. */
html[data-theme="light"] .work-schedules-pro .ws-requests-panel{
  --wse39-paper:#fff;
  --wse39-soft:#f7f9fc;
  --wse39-surface:#f2f5f9;
  --wse39-ink:#14304a;
  --wse39-muted:#60768b;
  --wse39-line:#dbe5ef;
  --wse39-gold:#be9053;
  --wse39-gold-haze:rgba(190,144,83,.11);
  --wse39-shadow:0 3px 9px rgba(9,38,66,.038),0 21px 46px rgba(9,38,66,.09);
}
html[data-theme="dark"] .work-schedules-pro .ws-requests-panel{
  --wse39-paper:#15354e;
  --wse39-soft:#1a3b54;
  --wse39-surface:#24445e;
  --wse39-ink:#f0f6fe;
  --wse39-muted:#c0d0df;
  --wse39-line:#385a73;
  --wse39-gold:#e9c18b;
  --wse39-gold-haze:rgba(233,193,139,.14);
  --wse39-shadow:0 4px 13px rgba(0,9,25,.20),0 24px 55px rgba(0,9,25,.28);
}
html[data-theme] .work-schedules-pro .ws-requests-panel{
  background:var(--wse39-paper)!important;
  border:1px solid color-mix(in srgb,var(--wse39-gold) 34%,var(--wse39-line))!important;
  border-radius:20px!important;
  box-shadow:var(--wse39-shadow)!important;
  overflow:hidden!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel>.thrs-card-header{
  min-height:68px!important;
  padding:20px 25px!important;
  background:linear-gradient(115deg,var(--wse39-paper),var(--wse39-soft))!important;
  border-bottom:1px solid var(--wse39-line)!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel>.thrs-card-header h3{
  color:var(--wse39-ink)!important;
  font-size:18px!important;
  font-weight:900!important;
  line-height:1.45!important;
  letter-spacing:-.019em!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel>.thrs-card-header+div{
  background:var(--wse39-paper)!important;
  padding:22px 24px 25px!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-dashboard{
  display:flex!important;
  flex-direction:column!important;
  gap:18px!important;
  min-width:0!important;
  color:var(--wse39-ink)!important;
}
/* Intro: same top section, with restrained THRS navy/gold finish. */
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-overview{
  position:relative!important;
  min-height:91px!important;
  padding:19px 22px!important;
  gap:18px!important;
  border:1px solid rgba(227,189,138,.46)!important;
  border-radius:16px!important;
  background:
    radial-gradient(ellipse at 88% -60%,rgba(240,202,149,.23),transparent 62%),
    linear-gradient(112deg,#09283e 0%,#123a55 63%,#102f48 100%)!important;
  box-shadow:0 13px 26px rgba(8,36,62,.15),inset 0 1px 0 rgba(255,255,255,.10)!important;
  overflow:hidden!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-overview::after{
  content:"";
  position:absolute;
  inset-inline-start:21px;
  inset-block-end:0;
  height:3px;width:58px;
  border-radius:4px 4px 0 0;
  background:linear-gradient(90deg,#e8c58c,#bd8c4e);
  opacity:.95;pointer-events:none;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-overview-text{
  gap:6px!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-overview-text strong{
  color:#fff!important;
  font-size:18px!important;
  font-weight:920!important;
  letter-spacing:-.021em!important;
  line-height:1.3!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-overview-text span{
  font-size:12.2px!important;
  color:#dce9f2!important;
  font-weight:620!important;
  line-height:1.65!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-total{
  min-height:43px!important;
  padding:9px 14px!important;
  background:rgba(255,255,255,.11)!important;
  border:1px solid rgba(236,206,163,.46)!important;
  border-radius:12px!important;
  color:#ffe3b9!important;
  font-size:12.6px!important;
  font-weight:870!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
  font-variant-numeric:tabular-nums!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-total svg{
  color:#f1cf9d!important;
}
/* Filter segments: even sizing on desktop, deliberate scrolling on phones. */
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-statusbar{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:7px!important;
  padding:7px!important;
  background:var(--wse39-soft)!important;
  border:1px solid var(--wse39-line)!important;
  border-radius:14px!important;
  box-shadow:inset 0 1px 3px rgba(9,38,65,.045)!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-status-option{
  display:flex!important;
  min-width:0!important;
  min-height:47px!important;
  gap:7px!important;
  padding:10px 9px!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid transparent!important;
  border-radius:10px!important;
  background:transparent!important;
  color:var(--wse39-muted)!important;
  font-size:12px!important;
  font-weight:790!important;
  line-height:1.3!important;
  white-space:normal!important;
  text-align:center!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-status-option:hover:not(.active){
  border-color:var(--wse39-line)!important;
  background:var(--wse39-paper)!important;
  box-shadow:0 3px 8px rgba(11,43,69,.04)!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-status-option.active{
  border-color:rgba(218,179,118,.74)!important;
  background:linear-gradient(128deg,#143e59,#0b2d48)!important;
  box-shadow:0 6px 13px rgba(7,37,64,.14),inset 0 1px 0 rgba(255,255,255,.06)!important;
  color:#fff!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-status-option strong{
  display:grid!important;
  place-items:center!important;
  min-width:27px!important;
  min-height:25px!important;
  padding:3px 7px!important;
  border:1px solid var(--wse39-line)!important;
  border-radius:8px!important;
  background:var(--wse39-paper)!important;
  color:var(--wse39-muted)!important;
  font-size:11px!important;
  font-weight:920!important;
  font-variant-numeric:tabular-nums!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-status-option.active strong{
  border-color:rgba(239,209,165,.37)!important;
  background:rgba(255,255,255,.14)!important;
  color:#f8d9a9!important;
}
/* Filter/search toolbar: consistent control height and a quiet shared surface. */
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-toolbar{
  display:grid!important;
  grid-template-columns:minmax(220px,1fr) auto auto!important;
  align-items:center!important;
  gap:12px!important;
  padding:12px!important;
  border:1px solid var(--wse39-line)!important;
  border-radius:13px!important;
  background:var(--wse39-soft)!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-search{
  height:46px!important;
  padding:0 14px!important;
  border:1px solid var(--wse39-line)!important;
  border-radius:10px!important;
  background:var(--wse39-paper)!important;
  color:var(--wse39-gold)!important;
  box-shadow:0 2px 6px rgba(10,41,67,.026)!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-search input{
  height:43px!important;
  color:var(--wse39-ink)!important;
  -webkit-text-fill-color:var(--wse39-ink)!important;
  font-size:12.7px!important;
  font-weight:680!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-search input::placeholder{
  color:var(--wse39-muted)!important;
  -webkit-text-fill-color:var(--wse39-muted)!important;
  opacity:.88!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-search:focus-within{
  border-color:var(--wse39-gold)!important;
  box-shadow:0 0 0 3px var(--wse39-gold-haze)!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-page-size{
  color:var(--wse39-muted)!important;
  gap:9px!important;
  font-size:12px!important;
  font-weight:800!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-page-size select{
  min-width:115px!important;
  height:46px!important;
  padding:0 11px!important;
  border:1px solid var(--wse39-line)!important;
  border-radius:10px!important;
  background:var(--wse39-paper)!important;
  color:var(--wse39-ink)!important;
  font-size:12px!important;
  font-weight:830!important;
}
html[data-theme="dark"] .work-schedules-pro .ws-requests-panel .ws-requests-page-size select{
  color-scheme:dark!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-result-count{
  display:inline-flex!important;
  min-height:32px!important;
  align-items:center!important;
  padding:6px 10px!important;
  border-radius:8px!important;
  border:1px solid var(--wse39-line)!important;
  background:var(--wse39-paper)!important;
  color:var(--wse39-muted)!important;
  font-size:11.8px!important;
  font-weight:810!important;
  white-space:nowrap!important;
}
/* A single restrained surface contains the 10 request rows. */
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-list{
  display:flex!important;
  flex-direction:column!important;
  gap:9px!important;
  min-width:0!important;
  padding:11px!important;
  border:1px solid var(--wse39-line)!important;
  border-radius:15px!important;
  background:var(--wse39-soft)!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-compact{
  border:1px solid var(--wse39-line)!important;
  border-radius:12px!important;
  background:var(--wse39-paper)!important;
  box-shadow:0 1px 4px rgba(11,39,67,.025)!important;
  overflow:hidden!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-compact:hover{
  border-color:color-mix(in srgb,var(--wse39-gold) 58%,var(--wse39-line))!important;
  background:color-mix(in srgb,var(--wse39-gold) 3%,var(--wse39-paper))!important;
  box-shadow:0 7px 19px rgba(10,39,65,.075)!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-compact.is-expanded{
  border-color:color-mix(in srgb,var(--wse39-gold) 74%,var(--wse39-line))!important;
  box-shadow:0 9px 21px rgba(10,39,65,.09)!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-summary{
  display:grid!important;
  grid-template-columns:44px minmax(0,1fr) auto!important;
  gap:14px!important;
  align-items:center!important;
  min-height:78px!important;
  padding:14px 16px!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-mini-avatar{
  flex:0 0 44px!important;
  width:44px!important;
  height:44px!important;
  border-radius:12px!important;
  border:1px solid color-mix(in srgb,var(--wse39-gold) 35%,var(--wse39-line))!important;
  background:linear-gradient(145deg,color-mix(in srgb,var(--wse39-gold) 15%,var(--wse39-paper)),var(--wse39-soft))!important;
  color:var(--wse39-gold)!important;
  font-size:12.4px!important;
  font-weight:930!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07)!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-summary-main{
  display:flex!important;
  flex-direction:column!important;
  gap:5px!important;
  min-width:0!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-summary-title{
  color:var(--wse39-ink)!important;
  font-size:13.8px!important;
  font-weight:920!important;
  line-height:1.45!important;
  letter-spacing:-.012em!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-summary-sub{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:4px 8px!important;
  min-width:0!important;
  color:var(--wse39-muted)!important;
  font-size:11.6px!important;
  font-weight:680!important;
  line-height:1.45!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-row-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:wrap!important;
  gap:9px!important;
  min-width:0!important;
  width:auto!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-status-pill{
  display:inline-flex!important;
  min-height:30px!important;
  align-items:center!important;
  padding:6px 11px!important;
  border-radius:999px!important;
  font-size:11px!important;
  font-weight:850!important;
  line-height:1.35!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07)!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-status-pill::before{
  content:"";
  display:inline-block;
  width:6px;height:6px;
  margin-inline-end:6px;
  border-radius:50%;
  background:currentColor;
  opacity:.72;
}
html[data-theme="dark"] .work-schedules-pro .ws-requests-panel .ws-request-status-pill{
  color:var(--wse39-ink)!important;
  background:var(--wse39-surface)!important;
  border-color:var(--wse39-line)!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-expand{
  min-height:38px!important;
  padding:8px 13px!important;
  border:1px solid var(--wse39-line)!important;
  border-radius:9px!important;
  background:var(--wse39-soft)!important;
  color:var(--wse39-ink)!important;
  font-size:11.8px!important;
  font-weight:820!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-expand:hover{
  background:var(--wse39-paper)!important;
  border-color:var(--wse39-gold)!important;
  box-shadow:0 3px 9px rgba(9,39,64,.045)!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-row-actions .thrs-btn{
  min-height:38px!important;
  padding:9px 13px!important;
  border-radius:9px!important;
  font-size:11.7px!important;
  font-weight:850!important;
  box-shadow:0 3px 9px rgba(9,39,64,.065)!important;
}
/* Expandable details are visually grouped without removing any information. */
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-detail{
  display:flex!important;
  flex-direction:column!important;
  gap:14px!important;
  padding:17px 19px!important;
  border-top:1px solid var(--wse39-line)!important;
  background:var(--wse39-soft)!important;
  color:var(--wse39-ink)!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-detail-top{
  display:flex!important;
  gap:9px 19px!important;
  flex-wrap:wrap!important;
  color:var(--wse39-muted)!important;
  font-size:12px!important;
  line-height:1.55!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel :is(.ws-request-detail-top strong,.ws-request-reason strong,.ws-request-schedule-detail>strong){
  color:var(--wse39-ink)!important;
  font-size:12px!important;
  font-weight:900!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-reason p{
  padding:13px 15px!important;
  background:var(--wse39-paper)!important;
  color:var(--wse39-muted)!important;
  border:1px solid var(--wse39-line)!important;
  border-radius:10px!important;
  font-size:12.7px!important;
  line-height:1.7!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-schedule-detail .ws-chip{
  padding:8px 10px!important;
  border:1px solid var(--wse39-line)!important;
  border-radius:9px!important;
  background:var(--wse39-paper)!important;
  color:var(--wse39-ink)!important;
  font-size:11.6px!important;
  font-weight:740!important;
}
/* Pagination keeps exactly the existing controls. */
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-pagination{
  min-height:62px!important;
  gap:12px!important;
  padding:12px 16px!important;
  background:var(--wse39-soft)!important;
  border:1px solid var(--wse39-line)!important;
  border-radius:12px!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-pagination>span{
  color:var(--wse39-muted)!important;
  font-size:12px!important;
  font-weight:850!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-pagination button{
  min-width:36px!important;
  height:36px!important;
  border-radius:9px!important;
  border:1px solid var(--wse39-line)!important;
  color:var(--wse39-ink)!important;
  background:var(--wse39-paper)!important;
  font-size:12px!important;
  font-weight:850!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-pagination button.is-current{
  color:#fff!important;
  border-color:#c79b5f!important;
  background:linear-gradient(130deg,#173f5c,#0a2c46)!important;
  box-shadow:0 5px 12px rgba(9,39,67,.13)!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-pagination button:not(:disabled):hover{
  border-color:var(--wse39-gold)!important;
  box-shadow:0 3px 10px rgba(9,39,67,.065)!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-pagination button:disabled{
  opacity:.45!important;
}
html[data-theme] .work-schedules-pro .ws-requests-panel :is(button,input,select):focus-visible{
  outline:2px solid var(--wse39-gold)!important;
  outline-offset:2px!important;
}
@media(max-width:1160px){
  html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-summary{
    grid-template-columns:42px minmax(0,1fr)!important;
    row-gap:9px!important;
  }
  html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-row-actions{
    grid-column:2/-1!important;
    justify-content:flex-start!important;
  }
  html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-statusbar{
    display:flex!important;
    overflow-x:auto!important;
    scrollbar-width:thin!important;
    scrollbar-color:var(--wse39-gold) transparent!important;
  }
  html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-status-option{
    flex:1 0 auto!important;
    min-width:max-content!important;
    white-space:nowrap!important;
  }
}
@media(max-width:800px){
  html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-toolbar{
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:10px!important;
  }
  html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-result-count{
    grid-column:1/-1!important;
    justify-self:start!important;
  }
}
@media(max-width:560px){
  html[data-theme] .work-schedules-pro .ws-requests-panel>.thrs-card-header{
    min-height:60px!important;
    padding:15px 16px!important;
  }
  html[data-theme] .work-schedules-pro .ws-requests-panel>.thrs-card-header h3{
    font-size:15px!important;
  }
  html[data-theme] .work-schedules-pro .ws-requests-panel>.thrs-card-header+div{
    padding:12px!important;
  }
  html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-dashboard{
    gap:12px!important;
  }
  html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-overview{
    padding:15px!important;
    min-height:90px!important;
    gap:10px!important;
    flex-wrap:wrap!important;
  }
  html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-overview-text strong{
    font-size:16px!important;
  }
  html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-overview-text span{
    font-size:11.3px!important;
  }
  html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-total{
    padding:7px 10px!important;
    min-height:34px!important;
    font-size:11px!important;
  }
  html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-toolbar{
    grid-template-columns:minmax(0,1fr)!important;
    padding:10px!important;
  }
  html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-result-count{
    grid-column:auto!important;
  }
  html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-list{
    padding:7px!important;
    gap:7px!important;
  }
  html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-summary{
    grid-template-columns:38px minmax(0,1fr)!important;
    gap:9px!important;
    padding:11px!important;
  }
  html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-mini-avatar{
    width:38px!important;
    height:38px!important;
    flex-basis:38px!important;
  }
  html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-summary-title{
    font-size:12.8px!important;
    white-space:normal!important;
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
  }
  html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-summary-sub{
    font-size:10.7px!important;
  }
  html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-row-actions{
    grid-column:1/-1!important;
    justify-content:flex-start!important;
    gap:7px!important;
  }
  html[data-theme] .work-schedules-pro .ws-requests-panel .ws-requests-pagination{
    padding:10px!important;
    min-height:54px!important;
  }
  html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-detail{
    padding:13px!important;
  }
}
@media(prefers-reduced-motion:reduce){
  html[data-theme] .work-schedules-pro .ws-requests-panel :is(.ws-request-compact,.ws-request-expand,.ws-requests-status-option,.ws-requests-pagination button){
    transition:none!important;
  }
}
@media(max-width:360px){
  html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-row-actions{gap:5px!important;}
  html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-status-pill{padding:5px 7px!important;font-size:10px!important;min-height:32px!important;}
  html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-expand{padding:6px 8px!important;font-size:10.5px!important;min-height:33px!important;}
  html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-row-actions .thrs-btn{padding:7px 9px!important;font-size:10.5px!important;min-height:33px!important;}
  html[data-theme] .work-schedules-pro .ws-requests-panel .ws-request-summary{gap:8px!important;}
}
