/* Worker Tool request sheets: quiet surfaces, clear actions and readable history. */
body.employee-portal-page .employee-week-card { flex-wrap: wrap; }
body.employee-portal-page .employee-week-navigation { display: flex; justify-content: flex-end; align-items: center; gap: 6px; min-width: 0; max-width: 100%; }
body.employee-portal-page .employee-week-navigation .employee-week-picker-control { display: flex; justify-content: center; width: 50px; min-width: 50px; flex: 0 0 50px; margin: 0; padding: 5px; box-sizing: border-box; }
body.employee-portal-page .employee-week-navigation button { flex: 0 0 36px; }
@media (max-width: 600px) { body.employee-portal-page .employee-week-navigation { width: 100%; } }
body.employee-portal-page .employee-week-navigation button { min-height: 40px; min-width: 42px; border: 1px solid #b9ddd6; border-radius: 8px; background: #edf8f5; color: #176c61; padding: 7px 12px; font-weight: 700; cursor: pointer; }
body.employee-portal-page .employee-week-navigation button:focus-visible { outline: 2px solid #167a6d; outline-offset: 2px; }
body.employee-portal-page .shift-request-note { flex-basis: 100%; font-size: 12px; line-height: 1.5; color: #6c537f; }
body.employee-portal-page #timeOffModal,
body.employee-portal-page #requestsModal { --request-accent: #6949a0; --request-tint: #f0eafb; }
body.employee-portal-page #timeOffModal.is-callout-mode { --request-accent: #ac3c59; --request-tint: #fceaf0; }
body.employee-portal-page #requestsModal { --request-accent: #14786f; --request-tint: #e4f5f0; }
body.employee-portal-page #timeOffModal .mobile-modal,
body.employee-portal-page #requestsModal .mobile-modal {
  width: min(100%, 590px); max-height: min(90svh, 820px); border-radius: 20px;
  border: 1px solid #d6e3e6; background: #f8fafc; box-shadow: 0 20px 70px #14344433;
  overflow: hidden; display: flex; flex-direction: column; padding: 0;
}
body.employee-portal-page #timeOffModal .sheet-handle { display: none; }
body.employee-portal-page #timeOffModal .employee-modal-head,
body.employee-portal-page #timeOffModal.is-callout-mode .employee-modal-head,
body.employee-portal-page #requestsModal .employee-modal-head {
  min-height: 0; padding: 22px 20px; flex-shrink: 0;
  background: linear-gradient(115deg, var(--request-tint), #fff);
  border: 0; border-top: 5px solid var(--request-accent); border-bottom: 1px solid #e0e6ed;
}
body.employee-portal-page #timeOffModal .employee-modal-head h2,
body.employee-portal-page #requestsModal .employee-modal-head h2 { color: #203441; font-size: 25px; margin: 3px 0 6px; }
body.employee-portal-page #timeOffModal .employee-modal-head .eyebrow,
body.employee-portal-page #requestsModal .employee-modal-head .eyebrow { color: var(--request-accent); opacity: 1; font-size: 10px; letter-spacing: .1em; }
body.employee-portal-page #timeOffModal .employee-modal-head small,
body.employee-portal-page #requestsModal .employee-modal-head small { color: #64717f; line-height: 1.5; }
body.employee-portal-page #timeOffModal .modal-back-btn,
body.employee-portal-page #requestsModal .modal-back-btn { background: #fff; color: var(--request-accent); border: 1px solid #d8dfE8; border-radius: 10px; min-width: 44px; min-height: 44px; box-shadow: none; }
body.employee-portal-page #timeOffModal .employee-modal-scroll,
body.employee-portal-page #requestsModal .employee-modal-scroll { padding: 16px; overflow-y: auto; min-height: 0; }
body.employee-portal-page #timeOffModal .request-form { display: grid; gap: 12px; }
body.employee-portal-page #timeOffModal .employee-modal-section {
  background: #fff; border: 1px solid #e0e5ed; border-radius: 12px; padding: 14px; box-shadow: none;
}
body.employee-portal-page #timeOffModal label { color: #52616f; font-size: 10px; letter-spacing: .06em; }
body.employee-portal-page #timeOffModal input,
body.employee-portal-page #timeOffModal select,
body.employee-portal-page #timeOffModal textarea { background: #f8fafc; border: 1px solid #dce3eb; border-radius: 8px; color: #243944; font-size: 16px; }
body.employee-portal-page #timeOffModal input:focus-visible,
body.employee-portal-page #timeOffModal select:focus-visible,
body.employee-portal-page #timeOffModal textarea:focus-visible { outline: 2px solid var(--request-accent); outline-offset: 2px; }
body.employee-portal-page #timeOffModal #requestGuidance { margin: 0; padding: 12px 14px; border: 0; border-left: 3px solid var(--request-accent); border-radius: 8px; background: var(--request-tint); color: #4f435f; font-size: 13px; line-height: 1.6; }
body.employee-portal-page #timeOffModal #callOutDocumentPanel { border-style: dashed; border-color: #d7b7c3; background: #fff; }
body.employee-portal-page #timeOffModal input[type=file] { padding: 9px; font-size: 12px; }
body.employee-portal-page #timeOffModal input[type=file]::file-selector-button { background: var(--request-tint); color: var(--request-accent); border: 0; border-radius: 6px; padding: 10px; margin-right: 10px; font-weight: 700; }
body.employee-portal-page #timeOffModal .muted { font-size: 12px; color: #687785; line-height: 1.6; }
body.employee-portal-page #timeOffModal .employee-modal-actions { padding: 12px 16px; flex-shrink: 0; border-top: 1px solid #e0e5ed; background: #fff; }
body.employee-portal-page #timeOffModal .employee-modal-actions button,
body.employee-portal-page #timeOffModal.is-callout-mode .employee-modal-actions button { width: 100%; min-height: 48px; border-radius: 10px; background: var(--request-accent); box-shadow: none; font-size: 14px; }
body.employee-portal-page .requests-launcher { border-left-color: #327a9d !important; background: linear-gradient(110deg,#e2f0fa,#fff) !important; }
body.employee-portal-page .requests-launcher-icon { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 10px; background: #cee7f6; color: #32708f; font-size: 28px; }
body.employee-portal-page .request-history-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 12px 16px; background: #fff; flex-wrap: wrap; }
body.employee-portal-page #requestsModal .requests-list { display: grid; gap: 8px; background: transparent; border: 0; overflow: visible; }
body.employee-portal-page #requestsModal .request-date-heading { font-size: 12px; color: #647580; margin: 12px 0 2px; letter-spacing: .02em; }
body.employee-portal-page #requestsModal .request-card { background: #fff; border: 1px solid #dce6e8; border-left: 3px solid #258f82; border-radius: 10px; padding: 12px; box-shadow: none; }
body.employee-portal-page #requestsModal .request-card.status-pending,
body.employee-portal-page #requestsModal .request-card.status-pending_proof { border-left-color: #bb8625; }
body.employee-portal-page #requestsModal .request-card.status-denied,
body.employee-portal-page #requestsModal .request-card.status-expired { border-left-color: #b65a6f; }
body.employee-portal-page #requestsModal .request-card p:empty { display: none; }
body.employee-portal-page #requestsModal .request-card-actions button { min-height: 44px; }
body.employee-portal-page details.assigned-row.status-pending_pto { --shift-color: #97630c; --shift-tint: #fff4dd; --shift-fill: #ffe1a0; }
@media (max-width: 420px) {
  body.employee-portal-page #timeOffModal .request-date-grid { grid-template-columns: 1fr; }
  body.employee-portal-page #requestsModal .request-card-top { grid-template-columns: 32px minmax(0,1fr); }
  body.employee-portal-page #requestsModal .request-status-pill { grid-column: 2; justify-self: start; }
}
