.access-denied-page{min-height:100%;display:flex;align-items:center;justify-content:center;padding:2rem 0}.access-denied-page__card{width:min(100%,720px);border:1px solid rgba(179,38,46,.14);border-radius:22px;background:linear-gradient(180deg,#fffffffa,#fff8f8fa);box-shadow:0 26px 50px #7e22221f;padding:2rem}.access-denied-page__eyebrow{margin:0 0 .45rem;font-size:.76rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--color-brand-red-dark)}.access-denied-page__title{margin:0;font-size:2rem;line-height:1.08;color:var(--color-text-primary)}.access-denied-page__description{margin:1rem 0 0;max-width:58ch;font-size:1rem;line-height:1.7;color:var(--color-text-secondary)}.access-denied-page__actions{margin-top:1.35rem;display:flex;gap:.85rem}.access-denied-page__link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.8rem 1.2rem;border-radius:999px;background-color:var(--color-brand-red-dark);color:#fff;font-weight:700;text-decoration:none}.access-denied-page__link:hover{background-color:#8f1e24}.dev-auth-toolkit{margin-top:1.35rem}.dev-auth-toolkit__panel{border:1px solid rgba(37,99,235,.16);border-radius:22px;background:linear-gradient(180deg,#f5f9fffa,#fffffffa);box-shadow:0 20px 44px #2563eb14;padding:1.4rem}.dev-auth-toolkit__eyebrow{margin:0 0 .45rem;font-size:.76rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#1d4ed8}.dev-auth-toolkit__title{margin:0;font-size:1.45rem;line-height:1.12;color:var(--color-text-primary)}.dev-auth-toolkit__description{margin:.85rem 0 0;max-width:62ch;font-size:.98rem;line-height:1.65;color:var(--color-text-secondary)}.dev-auth-toolkit__preset-grid{margin-top:1rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.dev-auth-toolkit__preset{border:1px solid rgba(37,99,235,.14);border-radius:16px;background-color:#ffffffdb;padding:.9rem;display:flex;flex-direction:column;gap:.28rem;text-align:left;cursor:pointer}.dev-auth-toolkit__preset:hover{background-color:#dbeafe8c}.dev-auth-toolkit__preset-title{font-size:.96rem;font-weight:700;color:var(--color-text-primary)}.dev-auth-toolkit__preset-description{font-size:.88rem;line-height:1.5;color:var(--color-text-secondary)}.dev-auth-toolkit__form-grid{margin-top:1rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.dev-auth-toolkit__field{display:flex;flex-direction:column;gap:.45rem}.dev-auth-toolkit__field--stacked{margin-top:1rem}.dev-auth-toolkit__label{font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted)}.dev-auth-toolkit__input{min-height:44px;border:1px solid rgba(161,161,170,.2);border-radius:14px;background-color:#fff;padding:.75rem .9rem;color:var(--color-text-primary);font:inherit}.dev-auth-toolkit__role-grid{display:flex;flex-wrap:wrap;gap:.55rem}.dev-auth-toolkit__role{border:1px solid rgba(148,163,184,.3);border-radius:999px;background-color:#fff;min-height:38px;padding:.5rem .9rem;color:var(--color-text-secondary);font:inherit;font-weight:700;cursor:pointer}.dev-auth-toolkit__role--active{border-color:#2563eb42;background-color:#2563eb1a;color:#1d4ed8}.dev-auth-toolkit__preview-grid{margin-top:1rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.dev-auth-toolkit__preview-card{border:1px solid rgba(148,163,184,.14);border-radius:16px;background-color:#ffffffd1;padding:.9rem;display:flex;flex-direction:column;gap:.65rem}.dev-auth-toolkit__chip-list{display:flex;flex-wrap:wrap;gap:.45rem}.dev-auth-toolkit__chip{display:inline-flex;align-items:center;min-height:30px;padding:.3rem .65rem;border-radius:999px;background-color:#2563eb14;color:#1d4ed8;font-size:.84rem;font-weight:700}.dev-auth-toolkit__actions{margin-top:1.15rem;display:flex;justify-content:flex-start}.dev-auth-toolkit__submit{min-height:46px;border:0;border-radius:999px;background-color:#1d4ed8;padding:.8rem 1.2rem;color:#fff;font:inherit;font-weight:700;cursor:pointer}.dev-auth-toolkit__submit:disabled{opacity:.6;cursor:default}@media(max-width:900px){.dev-auth-toolkit__preset-grid,.dev-auth-toolkit__form-grid,.dev-auth-toolkit__preview-grid{grid-template-columns:1fr}}.portal-layout{min-height:100vh;background-color:var(--color-bg-page);color:var(--color-text-primary)}.portal-layout__header{border-bottom:1px solid var(--color-border);background-color:var(--color-bg-surface-floating)}.portal-layout__header-inner{width:100%;max-width:1440px;margin:0 auto;padding:1rem 2rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.portal-layout__brand{display:flex;align-items:center;gap:1rem;color:inherit;text-decoration:none}.portal-layout__logo{width:auto;height:58px;object-fit:contain}.portal-layout__brand-copy{display:flex;flex-direction:column;gap:.15rem}.portal-layout__portal-title{margin:0;font-size:1.45rem;font-weight:700;color:var(--color-text-primary)}.portal-layout__portal-subtitle{margin:0;font-size:.95rem;color:var(--color-text-secondary)}.portal-layout__header-account{display:flex;align-items:center;gap:1rem}.portal-layout__theme-button{min-width:146px;border:1px solid var(--color-border-strong);border-radius:16px;background:linear-gradient(180deg,var(--color-bg-surface-elevated),var(--color-bg-surface-soft));padding:.85rem 1rem;display:inline-flex;flex-direction:column;align-items:flex-start;gap:.2rem;box-shadow:var(--shadow-soft);color:var(--color-text-primary)}.portal-layout__theme-button:hover{transform:translateY(-1px);border-color:var(--color-secondary-button-border)}.portal-layout__theme-button:focus-visible{outline:3px solid var(--color-focus-outline);outline-offset:3px}.portal-layout__theme-eyebrow{font-size:.74rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted)}.portal-layout__theme-value{font-size:.98rem;font-weight:700;color:var(--color-text-primary);text-align:left}.portal-layout__header-status{display:flex;flex-direction:column;align-items:flex-end;gap:.15rem}.portal-layout__status-label{font-size:.76rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted)}.portal-layout__status-value{font-size:.95rem;font-weight:700;color:var(--color-brand-red-dark)}.portal-layout__account-menu{position:relative}.portal-layout__account-button{min-width:244px;border:1px solid rgba(179,38,46,.16);border-radius:16px;background:linear-gradient(180deg,var(--color-bg-surface-floating-soft),var(--color-bg-surface-elevated));padding:.85rem 1rem;display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;box-shadow:0 14px 26px #7e222214;cursor:pointer}.portal-layout__account-eyebrow{font-size:.74rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted)}.portal-layout__account-name{font-size:.98rem;font-weight:700;color:var(--color-text-primary);text-align:left}.portal-layout__account-dropdown{position:absolute;top:calc(100% + .75rem);right:0;z-index:20;min-width:220px;border:1px solid rgba(161,161,170,.18);border-radius:16px;background-color:var(--color-bg-surface-floating);box-shadow:0 22px 46px #0f172a29;padding:.5rem;display:flex;flex-direction:column;gap:.3rem}.portal-layout__account-action{width:100%;border:0;border-radius:12px;background:transparent;padding:.8rem .9rem;color:var(--color-text-primary);font:inherit;font-weight:600;text-align:left;text-decoration:none;cursor:pointer}.portal-layout__account-action:hover{background-color:#b3262e14;color:var(--color-brand-red-dark)}.portal-layout__shell{width:100%;max-width:1440px;margin:0 auto;padding:1.5rem 2rem 2rem;display:grid;grid-template-columns:250px 1fr;gap:1.5rem}.portal-layout__sidebar{align-self:start;border:1px solid var(--color-border);border-radius:16px;background-color:var(--color-bg-surface-floating);padding:1rem;display:flex;flex-direction:column;gap:1.25rem}.portal-layout__sidebar-section{display:flex;flex-direction:column;gap:.75rem}.portal-layout__sidebar-heading{margin:0;font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted)}.portal-layout__nav{display:flex;flex-direction:column;gap:.35rem}.portal-layout__nav-link{display:block;padding:.75rem .9rem;border-radius:12px;color:var(--color-text-secondary);font-weight:600;transition:background-color .18s ease,color .18s ease}.portal-layout__nav-link:hover{background-color:var(--color-brand-red-soft);color:var(--color-brand-red-dark)}.portal-layout__nav-link--active{background-color:#b3262e1f;color:var(--color-brand-red-dark)}.portal-layout__sidebar-list{display:flex;flex-direction:column;gap:.45rem}.portal-layout__sidebar-item{padding:.7rem .9rem;border-radius:12px;background-color:var(--color-bg-surface-soft);color:var(--color-text-secondary);font-weight:600}.portal-layout__main{display:flex;flex-direction:column;gap:1.5rem;min-width:0}.portal-layout__modal-backdrop{position:fixed;inset:0;z-index:40;background-color:#0f172a70;padding:2rem;display:flex;align-items:center;justify-content:center}.portal-layout__modal-card{position:relative;width:min(100%,760px);border-radius:24px;background:linear-gradient(180deg,var(--color-bg-surface-floating-soft),var(--color-bg-surface-elevated));border:1px solid rgba(179,38,46,.14);box-shadow:0 30px 60px #0f172a38;padding:2rem}.portal-layout__modal-close{position:absolute;top:1rem;right:1rem;width:40px;height:40px;border:0;border-radius:999px;background-color:#b3262e1f;color:var(--color-brand-red-dark);font-size:1.4rem;line-height:1;cursor:pointer}.portal-layout__modal-close:hover{background-color:#b3262e2e}.portal-layout__modal-eyebrow{margin:0 0 .45rem;font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--color-brand-red-dark)}.portal-layout__modal-title{margin:0;font-size:1.7rem;line-height:1.12;color:var(--color-text-primary)}.portal-layout__modal-grid{margin-top:1.35rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.portal-layout__modal-grid--columns{align-items:start}.portal-layout__modal-field{border:1px solid rgba(161,161,170,.16);border-radius:18px;background-color:var(--color-card-tint);padding:1rem 1.05rem;display:flex;flex-direction:column;gap:.35rem}.portal-layout__modal-field--stacked{margin-top:1.15rem}.portal-layout__modal-label{font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted)}.portal-layout__modal-value{font-size:.98rem;line-height:1.6;color:var(--color-text-primary);word-break:break-word}.portal-layout__tag-list{display:flex;flex-wrap:wrap;gap:.5rem}.portal-layout__tag{display:inline-flex;align-items:center;min-height:34px;padding:.45rem .8rem;border-radius:999px;background-color:#b3262e14;color:var(--color-brand-red-dark);font-size:.88rem;font-weight:700}@media(max-width:1100px){.portal-layout__shell{grid-template-columns:1fr}.portal-layout__sidebar{order:2}.portal-layout__main{order:1}}@media(max-width:900px){.portal-layout__header-inner{padding:1rem 1.25rem;flex-direction:column;align-items:flex-start}.portal-layout__header-account{width:100%;flex-direction:column;align-items:flex-start}.portal-layout__theme-button{width:100%;min-width:0}.portal-layout__header-status{align-items:flex-start}.portal-layout__account-menu{width:100%}.portal-layout__account-button{width:100%;min-width:0}.portal-layout__account-dropdown{left:0;right:auto;min-width:min(100%,320px)}.portal-layout__shell{padding:1rem 1.25rem 1.5rem}.portal-layout__modal-backdrop{padding:1rem}.portal-layout__modal-card{padding:1.5rem}.portal-layout__modal-grid{grid-template-columns:1fr}}.hr-hub-page__intro,.hr-hub-page__modules-section{border:1px solid var(--color-border);border-radius:16px;background-color:var(--color-bg-surface-floating);padding:1.5rem}.hr-hub-page__eyebrow{margin:0 0 .35rem;font-size:.8rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--color-brand-red)}.hr-hub-page__page-title{margin:0 0 .6rem;font-size:2rem;font-weight:700;color:var(--color-text-primary)}.hr-hub-page__page-description{margin:0;max-width:850px;font-size:1rem;line-height:1.6;color:var(--color-text-secondary)}.hr-hub-page__section-header{margin-bottom:1rem}.hr-hub-page__section-title{margin:0 0 .35rem;font-size:1.25rem;font-weight:700;color:var(--color-text-primary)}.hr-hub-page__section-description{margin:0;font-size:.96rem;color:var(--color-text-secondary)}.hr-hub-page__module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.hr-hub-page__module-card{border:1px solid var(--color-border);border-radius:14px;background-color:var(--color-bg-surface-soft);padding:1.15rem;display:flex;flex-direction:column;gap:.75rem;min-height:210px}.hr-hub-page__module-meta{font-size:.76rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-brand-red)}.hr-hub-page__module-title{margin:0;font-size:1.15rem;font-weight:700;color:var(--color-text-primary)}.hr-hub-page__module-description{margin:0;color:var(--color-text-secondary);line-height:1.55;flex:1}.hr-hub-page__module-actions{margin-top:.25rem}.hr-hub-page__module-link{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 1rem;border-radius:12px;background-color:var(--color-brand-red);color:#fff;font-weight:700;transition:background-color .18s ease}.hr-hub-page__module-link:hover{background-color:var(--color-brand-red-dark)}@media(max-width:900px){.hr-hub-page__module-grid{grid-template-columns:1fr}}.vacation-request-page__hero-card{width:100%;max-width:1100px;padding:3rem;border-radius:var(--radius-xl);box-shadow:var(--shadow-medium)}.vacation-request-page__hero-content{width:100%;max-width:900px;margin:0 auto;text-align:center}.vacation-request-page__eyebrow{margin-bottom:.85rem;font-size:.95rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--color-brand-red)}.vacation-request-page__title{margin-bottom:.85rem}.vacation-request-page__subtitle{max-width:760px;margin:0 auto 1.75rem;font-size:1.08rem}.vacation-request-page__request-card{padding:1.5rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);text-align:left}.vacation-request-page__section-header{margin-bottom:1rem}.vacation-request-page__section-title{font-size:1.4rem;font-weight:700;color:var(--color-text-primary);margin-bottom:.4rem}.vacation-request-page__section-description{color:var(--color-text-secondary);font-size:1rem}.vacation-request-page__form{display:flex;flex-direction:column;gap:1.15rem}.vacation-request-page__field{display:flex;flex-direction:column;gap:.45rem}.vacation-request-page__field label{font-weight:700;color:var(--color-text-primary);font-size:.98rem}.vacation-request-page__field select,.vacation-request-page__field input,.vacation-request-page__field textarea{width:100%;min-height:52px;padding:0 .95rem;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background-color:var(--color-bg-input);color:var(--color-text-primary);font-size:.98rem;outline:none;transition:border-color .18s ease,box-shadow .18s ease}.vacation-request-page__field textarea{min-height:140px;padding:.85rem .95rem;resize:vertical}.vacation-request-page__field select:focus,.vacation-request-page__field input:focus,.vacation-request-page__field textarea:focus{border-color:var(--color-brand-red);box-shadow:0 0 0 4px var(--color-focus-ring)}.vacation-request-page__date-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.vacation-request-page__allocation-grid{display:grid;grid-template-columns:minmax(0,1fr) repeat(2,minmax(0,1fr));gap:1rem;align-items:end}.vacation-request-page__allocation-card{min-height:52px;display:grid;gap:.3rem;padding:.85rem .95rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-surface-soft)}.vacation-request-page__allocation-label{font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.vacation-request-page__allocation-value{font-size:1.05rem;color:var(--color-text-primary)}.vacation-request-page__allocation-note{margin:-.35rem 0 0;color:var(--color-text-secondary);font-size:.92rem}.vacation-request-page__submit-row{display:flex;flex-direction:column;align-items:flex-start;gap:.9rem;margin-top:.35rem}.vacation-request-page__submit-button{min-width:290px}.vacation-request-page__preview-link{color:var(--color-brand-red-dark);font-size:.98rem;font-weight:700;text-decoration:underline;text-underline-offset:3px}.vacation-request-page__modal-card{max-width:720px}.vacation-request-page__modal-content{display:flex;flex-direction:column;gap:1.1rem}.vacation-request-page__modal-eyebrow{font-size:.9rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted)}.vacation-request-page__modal-eyebrow--success{color:var(--color-success)}.vacation-request-page__modal-eyebrow--error{color:var(--color-error)}.vacation-request-page__modal-title{font-size:1.9rem;font-weight:700;line-height:1.15;color:var(--color-text-primary)}.vacation-request-page__modal-text{font-size:1.02rem;color:var(--color-text-secondary)}.vacation-request-page__modal-detail-card{padding:1rem 1.1rem;border-radius:var(--radius-md);background-color:var(--color-bg-surface-soft);border:1px solid var(--color-border);display:flex;flex-direction:column;gap:.65rem}.vacation-request-page__modal-detail-card--success{background-color:var(--color-success-soft);border:1px solid rgba(46,139,87,.18)}.vacation-request-page__modal-detail-card--error{background-color:var(--color-error-soft);border:1px solid rgba(179,38,46,.18)}.vacation-request-page__modal-actions{display:flex;flex-wrap:wrap;gap:1rem}@media(max-width:900px){.vacation-request-page__hero-card{padding:2rem 1.4rem}.vacation-request-page__date-grid,.vacation-request-page__allocation-grid{grid-template-columns:1fr}.vacation-request-page__submit-button{width:100%;min-width:unset}.vacation-request-page__modal-title{font-size:1.55rem}}.vacation-request-page__lookup-mode-row{display:flex;flex-wrap:wrap;gap:.85rem;margin-bottom:1rem}.vacation-request-page__lookup-mode-button{min-width:180px}.vacation-request-page__employee-grid{display:grid;grid-template-columns:2fr 1fr;gap:1rem;align-items:end}.vacation-request-page__employee-grid--name{grid-template-columns:1fr 1fr auto}.vacation-request-page__field--button{justify-content:flex-end}.vacation-request-page__field--button .primary-button{min-height:52px}.vacation-request-page__status{margin-top:.9rem;font-size:.96rem;font-weight:600}.vacation-request-page__status--info{color:var(--color-text-secondary)}.vacation-request-page__status--error{color:var(--color-error)}.vacation-request-page__lookup-results{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.vacation-request-page__lookup-result{display:flex;justify-content:space-between;align-items:center;gap:1rem;width:100%;padding:.9rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-surface-floating);color:var(--color-text-primary);font-weight:600;cursor:pointer}.vacation-request-page__lookup-result--selected{border-color:var(--color-brand-red);box-shadow:0 0 0 4px var(--color-focus-ring)}.vacation-request-page__selected-employee-summary{display:flex;flex-direction:column;gap:.25rem;padding:1rem 1.1rem;border-radius:var(--radius-md);background-color:var(--color-bg-surface-soft);border:1px solid var(--color-border)}.vacation-request-page__selected-employee-panel{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:1rem;margin-top:1rem}.vacation-request-page__selected-employee-summary-label{font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.vacation-request-page__selected-employee-summary-name{font-size:1.05rem;font-weight:700;color:var(--color-text-primary)}.vacation-request-page__selected-employee-summary-meta{color:var(--color-text-secondary)}.vacation-request-page__balance-card{display:grid;gap:.9rem;padding:1rem 1.1rem;border-radius:var(--radius-md);background:var(--color-bg-surface-soft);border:1px solid var(--color-border)}.vacation-request-page__balance-card-header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem;align-items:baseline}.vacation-request-page__balance-card-label{font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.vacation-request-page__balance-card-value{font-size:1.35rem;color:var(--color-text-primary)}.vacation-request-page__balance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.vacation-request-page__balance-item{display:grid;gap:.2rem;padding:.8rem .9rem;border-radius:var(--radius-md);background:var(--color-bg-surface-floating);border:1px solid var(--color-border)}.vacation-request-page__balance-item span{font-size:.76rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted)}.vacation-request-page__balance-item strong{color:var(--color-text-primary);font-size:.98rem}.vacation-request-page__balance-note,.vacation-request-page__balance-error{margin:0;font-size:.92rem}.vacation-request-page__balance-note{color:var(--color-text-secondary)}.vacation-request-page__balance-error{color:var(--color-error)}.vacation-request-page__section-header--details{margin-top:1.5rem}@media(max-width:900px){.vacation-request-page__selected-employee-panel,.vacation-request-page__employee-grid,.vacation-request-page__employee-grid--name,.vacation-request-page__balance-grid{grid-template-columns:1fr}}.labor-report-page__hero-card{width:100%;max-width:1220px;padding:3rem;border-radius:var(--radius-xl);box-shadow:var(--shadow-medium)}.labor-report-page__hero-content{width:100%;max-width:1120px;margin:0 auto;text-align:left}.labor-report-page__eyebrow{margin-bottom:.85rem;font-size:.95rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--color-brand-red)}.labor-report-page__title{margin-bottom:.85rem}.labor-report-page__subtitle{max-width:780px;margin:0 0 1.75rem;font-size:1.05rem}.labor-report-page__device-status{max-width:780px;margin:0 auto 1rem;padding:.85rem 1rem;border-radius:16px;font-size:.98rem;font-weight:700;line-height:1.35;text-align:center}.labor-report-page__device-status--info{background:#0f172a0d;border:1px solid rgba(100,116,139,.18);color:var(--color-text-secondary)}.labor-report-page__device-status--success{background:#15803d17;border:1px solid rgba(21,128,61,.2);color:#166534}.labor-report-page__device-status--error{background:#b3262e14;border:1px solid rgba(179,38,46,.2);color:var(--color-brand-red)}.labor-report-page__active-request-note{margin:0 0 1.2rem;color:var(--color-text-secondary)}.labor-report-page__method-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.labor-report-page__method-card,.labor-report-page__workspace-card{padding:1.5rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-soft)}.labor-report-page__method-card{display:flex;flex-direction:column}.labor-report-page__method-card--badge .labor-report-page__section-header{margin-bottom:.6rem}.labor-report-page__workspace-card{margin-top:1.25rem;display:flex;flex-direction:column;gap:1.25rem;padding:1.35rem}.labor-report-page__report-modal.modal-card{width:min(1560px,calc(100vw - 3rem));max-width:none;max-height:calc(100vh - 3rem);overflow:auto}.labor-report-page__report-shell{display:flex;flex-direction:column;gap:1rem}.labor-report-page__report-shell .labor-report-page__workspace-card{margin-top:0}.labor-report-page__report-modal-topbar{position:relative;display:flex;justify-content:center;align-items:center;gap:1rem;padding:0 3rem .25rem}.labor-report-page__report-modal-heading{width:100%;max-width:960px;margin:0 auto;text-align:center}.labor-report-page__report-close-button{position:absolute;top:-.35rem;right:-.35rem;display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:1px solid rgba(179,38,46,.28);border-radius:999px;background:#b3262e24;color:var(--color-brand-red);font-size:.9rem;font-weight:800;line-height:1;box-shadow:0 6px 16px #0f172a14;transition:background-color .18s ease,border-color .18s ease,transform .18s ease}.labor-report-page__report-close-button:hover{background:#b3262e33;border-color:#b3262e5c;transform:translateY(-1px)}.labor-report-page__section-header,.labor-report-page__calendar-header{margin-bottom:.2rem}.labor-report-page__section-title,.labor-report-page__workspace-title,.labor-report-page__panel-title{font-size:1.35rem;font-weight:700;color:var(--color-text-primary);margin-bottom:.4rem}.labor-report-page__workspace-title{font-size:1.75rem}.labor-report-page__section-description,.labor-report-page__workspace-subtitle,.labor-report-page__panel-description,.labor-report-page__summary-detail{color:var(--color-text-secondary);font-size:.98rem}.labor-report-page__workspace-eyebrow{margin:0 0 .4rem;font-size:.85rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted)}.labor-report-page__field{display:flex;flex-direction:column;gap:.45rem}.labor-report-page__lookup-mode-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1rem}.labor-report-page__lookup-mode-button.primary-button,.labor-report-page__lookup-mode-button.secondary-button{min-height:40px;padding:.45rem .75rem;font-size:.84rem;border-radius:12px}.labor-report-page__name-search-grid{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}.labor-report-page__scan-panel{padding:1.25rem;border:1px solid var(--color-border);border-radius:var(--radius-lg);background-color:var(--color-bg-surface-soft)}.labor-report-page__scan-panel--badge{margin-top:0;margin-bottom:.6rem;background:linear-gradient(180deg,#e2e8f0d9,#f1f5f9f5);border-color:#64748b3d;box-shadow:inset 0 1px #ffffff8c}.labor-report-page__scan-title{margin:0 0 .4rem;font-size:.84rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.labor-report-page__scan-text{margin:0;color:var(--color-text-secondary);font-size:.98rem;line-height:1.45}.labor-report-page__field label,.labor-report-page__calendar-toolbar-group label{font-weight:700;color:var(--color-text-primary);font-size:.98rem}.labor-report-page__field input,.labor-report-page__calendar-toolbar-group select{width:100%;min-height:52px;padding:0 .95rem;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background-color:var(--color-bg-input);color:var(--color-text-primary);font-size:.98rem;outline:none;transition:border-color .18s ease,box-shadow .18s ease}.labor-report-page__field input:focus,.labor-report-page__calendar-toolbar-group select:focus{border-color:var(--color-brand-red);box-shadow:0 0 0 4px var(--color-focus-ring)}.labor-report-page__action-row{display:flex;justify-content:flex-start;margin-top:auto;padding-top:.5rem}.labor-report-page__action-row--lookup{padding-top:1rem}.labor-report-page__action-button{min-width:220px}.labor-report-page__lookup-results{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.labor-report-page__lookup-result{display:flex;justify-content:space-between;align-items:center;width:100%;padding:.85rem 1rem;border:1px solid var(--color-brand-red);border-radius:var(--radius-md);background:var(--color-bg-surface-floating);color:var(--color-text-primary);cursor:pointer;text-align:left;transition:background-color .18s ease,transform .18s ease}.labor-report-page__lookup-result:hover{background:#b3262e0f;transform:translateY(-1px)}.labor-report-page__message{margin-top:1rem;padding:.95rem 1rem;border-radius:var(--radius-md);border:1px solid var(--color-border);font-weight:600}.labor-report-page__message--error{background:#b3262e14;border-color:#b3262e38;color:var(--color-brand-red)}.labor-report-page__message--info{background:#0f172a0d;border-color:#64748b2e;color:var(--color-text-secondary)}.labor-report-page__workspace-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.labor-report-page__clear-button{white-space:nowrap}.labor-report-page__employee-summary,.labor-report-page__summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem}.labor-report-page__employee-meta-card,.labor-report-page__summary-card,.labor-report-page__service-year-card,.labor-report-page__calendar-panel,.labor-report-page__detail-panel{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-surface-soft)}.labor-report-page__employee-meta-card,.labor-report-page__summary-card{padding:1rem;display:flex;flex-direction:column;gap:.3rem}.labor-report-page__meta-label,.labor-report-page__summary-label{font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.labor-report-page__summary-value{font-size:1.75rem;line-height:1.05;color:var(--color-text-primary)}.labor-report-page__service-year-card{padding:1.1rem 1.2rem;display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.labor-report-page__service-year-title{margin:0 0 .25rem;font-size:1rem;font-weight:700}.labor-report-page__service-year-range{margin:0;color:var(--color-text-secondary)}.labor-report-page__service-year-stats{display:flex;flex-wrap:wrap;gap:.75rem 1rem;justify-content:flex-end;color:var(--color-text-secondary);font-size:.95rem}.labor-report-page__calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.labor-report-page__calendar-toolbar-group{display:flex;align-items:center;gap:.75rem}.labor-report-page__calendar-toolbar-group select{width:140px}.labor-report-page__month-nav{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.labor-report-page__month-label{min-width:180px;text-align:center;font-weight:700;color:var(--color-text-primary)}.labor-report-page__calendar-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(320px,1fr);gap:1rem}.labor-report-page__calendar-layout-shell{position:relative}.labor-report-page__calendar-loading-overlay{position:absolute;inset:0;z-index:3;display:flex;align-items:center;justify-content:center;padding:1.25rem;border-radius:var(--radius-lg);background:#0f172a38;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.labor-report-page__calendar-loading-card{display:inline-flex;align-items:center;gap:.75rem;padding:.95rem 1.1rem;border:1px solid rgba(148,163,184,.25);border-radius:var(--radius-md);background:var(--color-bg-surface-floating-soft);color:var(--color-text-primary);box-shadow:var(--shadow-soft)}.labor-report-page__calendar-loading-spinner{width:.95rem;height:.95rem;border:2px solid rgba(148,163,184,.35);border-top-color:var(--color-brand-red);border-radius:999px;animation:labor-report-spin .8s linear infinite}.labor-report-page__calendar-panel,.labor-report-page__detail-panel{padding:1.15rem}.labor-report-page__weekday-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.5rem;margin-bottom:.5rem}.labor-report-page__weekday-cell{text-align:center;font-size:.85rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted)}.labor-report-page__calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.5rem}.labor-report-page__day-card{min-height:120px;padding:.75rem;border-radius:var(--radius-md);border:1px solid var(--color-border);background:#fff;display:flex;flex-direction:column;align-items:center;gap:.5rem;text-align:center;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.labor-report-page__day-card:hover{transform:translateY(-1px);box-shadow:var(--shadow-soft)}.labor-report-page__day-card--final{border-color:#15803d4d;background:linear-gradient(180deg,#15803d0d,#fff 60%)}.labor-report-page__day-card--pending{border-color:#b3262e52;box-shadow:inset 0 0 0 1px #b3262e14}.labor-report-page__day-card--selected{border-color:var(--color-brand-red);box-shadow:0 0 0 3px #b3262e1f}.labor-report-page__day-card--empty{min-height:120px;background:transparent;border:none;cursor:default;box-shadow:none}.labor-report-page__day-number{font-size:.92rem;font-weight:700;color:var(--color-text-primary)}.labor-report-page__day-hours-box{width:100%;max-width:100%;padding:.35rem .45rem;border:1px solid rgba(148,163,184,.2);border-radius:12px;background:#f8fafcf5;box-shadow:0 6px 14px #0f172a0f}.labor-report-page__day-hours-value{display:block;font-size:.78rem;font-weight:600;color:var(--color-text-primary);line-height:1.25;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.labor-report-page__day-hours-value--pto{margin-top:.15rem;color:#166534}.labor-report-page__day-flags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:auto;justify-content:center}.labor-report-page__day-flag{padding:.18rem .45rem;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.labor-report-page__day-flag--final,.labor-report-page__day-flag--approved{background:#15803d1f;color:#166534}.labor-report-page__day-flag--submitted{background:#b453091f;color:#92400e}.labor-report-page__day-flag--pending{background:#b3262e1a;color:var(--color-brand-red)}.labor-report-page__loading-state,.labor-report-page__empty-detail{padding:1rem;border-radius:var(--radius-md);background:#fff;border:1px dashed var(--color-border-strong);color:var(--color-text-secondary)}.labor-report-page__day-detail-card{display:flex;flex-direction:column;gap:1rem}.labor-report-page__detail-column p:not(.labor-report-page__detail-column-title){color:var(--color-text-secondary);font-size:.95rem}.labor-report-page__modal-card{max-width:820px}.labor-report-page__modal-content{display:flex;flex-direction:column;align-items:center;gap:1.1rem}.labor-report-page__modal-eyebrow{font-size:.9rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted)}.labor-report-page__modal-eyebrow--error{color:var(--color-brand-red)}.labor-report-page__modal-title{font-size:1.9rem;font-weight:700;line-height:1.15;color:var(--color-text-primary)}.labor-report-page__modal-title--error{color:var(--color-brand-red)}.labor-report-page__modal-text{font-size:1.02rem;color:var(--color-text-secondary)}.labor-report-page__modal-actions{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.labor-report-page__result-panel{width:100%;border-radius:var(--radius-md);padding:1.2rem;text-align:left;display:flex;flex-direction:column;gap:.75rem}.labor-report-page__result-panel--error{background-color:var(--color-error-soft);border:1px solid rgba(179,38,46,.18)}.labor-report-page__day-detail-header{display:flex;flex-direction:column;gap:.25rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-border)}.labor-report-page__detail-columns{display:grid;grid-template-columns:1fr;gap:.85rem}.labor-report-page__detail-column{padding:.95rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:#fff}.labor-report-page__detail-column p{margin:.2rem 0}.labor-report-page__detail-column-title{margin:0 0 .55rem;font-weight:700;color:var(--color-text-primary)}@keyframes labor-report-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:1100px){.labor-report-page__employee-summary,.labor-report-page__summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.labor-report-page__calendar-layout{grid-template-columns:1fr}.labor-report-page__service-year-card{flex-direction:column}.labor-report-page__service-year-stats{justify-content:flex-start}}@media(max-width:1360px){.labor-report-page__report-modal.modal-card{width:min(1360px,calc(100vw - 2.25rem))}.labor-report-page__workspace-card{gap:1rem;padding:1.15rem}.labor-report-page__calendar-panel,.labor-report-page__detail-panel{padding:1rem}.labor-report-page__calendar-grid,.labor-report-page__weekday-row{gap:.4rem}.labor-report-page__day-card{min-height:104px;padding:.6rem;gap:.4rem}.labor-report-page__day-hours-box{max-width:124px;padding:.35rem .45rem}.labor-report-page__day-hours-value{font-size:.82rem}.labor-report-page__day-flag{font-size:.68rem}}@media(max-width:900px){.labor-report-page__hero-card{padding:2rem 1.4rem}.labor-report-page__method-grid,.labor-report-page__name-search-grid,.labor-report-page__employee-summary,.labor-report-page__summary-grid{grid-template-columns:1fr}.labor-report-page__workspace-header,.labor-report-page__calendar-toolbar{flex-direction:column;align-items:stretch}.labor-report-page__report-modal-topbar{padding-inline:.75rem 2.25rem}.labor-report-page__report-modal.modal-card{width:min(100vw - 1.5rem,1360px);max-height:calc(100vh - 1.5rem);padding:1.25rem}.labor-report-page__month-nav{justify-content:space-between}.labor-report-page__month-label{min-width:unset;flex:1}}@media(max-width:720px){.labor-report-page__report-modal.modal-card{width:min(100vw - 1.5rem,1560px);max-height:calc(100vh - 1.5rem);padding:1rem}.labor-report-page__report-close-button{top:-.15rem;right:-.15rem}.labor-report-page__workspace-title{font-size:1.45rem}.labor-report-page__workspace-card{padding:.95rem}.labor-report-page__lookup-mode-row{grid-template-columns:1fr}.labor-report-page__lookup-result{flex-direction:column;align-items:flex-start;gap:.35rem}.labor-report-page__calendar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.labor-report-page__weekday-row{display:none}}.clock-page__logo-text{font-size:1rem;font-weight:700;color:var(--color-text-secondary);letter-spacing:.02em}.clock-page__main{flex:1;display:flex;align-items:center;justify-content:center}.clock-page__hero-card{width:100%;max-width:1400px;min-height:60vh;display:flex;align-items:center;justify-content:center;padding:4rem;margin:0 auto;border-radius:var(--radius-xl);box-shadow:var(--shadow-medium)}.clock-page__hero-content{width:100%;max-width:1200px;text-align:center}.clock-page__eyebrow{margin-bottom:1rem;font-size:.95rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--color-brand-red)}.clock-page__title{margin-bottom:1rem}.clock-page__subtitle{max-width:760px;margin:0 auto 2.5rem;font-size:1.15rem}.clock-page__device-status{max-width:760px;margin:0 auto 1.35rem;padding:.85rem 1rem;border-radius:16px;font-size:.98rem;font-weight:700;line-height:1.35}.clock-page__device-status--info{background:#0f172a0d;border:1px solid rgba(100,116,139,.18);color:var(--color-text-secondary)}.clock-page__device-status--success{background:#15803d17;border:1px solid rgba(21,128,61,.2);color:#166534}.clock-page__device-status--error{background:#b3262e14;border:1px solid rgba(179,38,46,.2);color:var(--color-brand-red)}.clock-page__action-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;width:100%;max-width:900px;margin:0 auto}.clock-page__action-button{min-height:110px;font-size:1.35rem;border-radius:22px}.clock-page__modal-card{max-width:1000px}.clock-page__modal-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.25rem}.clock-page__modal-eyebrow{font-size:.9rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;justify-content:center;color:var(--color-text-muted)}.clock-page__modal-eyebrow--success{color:var(--color-success)}.clock-page__modal-eyebrow--error{color:var(--color-error)}.clock-page__modal-title{font-size:2rem;font-weight:700;line-height:1.15;justify-content:center;color:var(--color-text-primary)}.clock-page__modal-text{font-size:1.05rem;color:var(--color-text-secondary);justify-content:center}.clock-page__modal-actions{display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap;margin-top:.5rem}.clock-page__result-panel{border-radius:var(--radius-md);padding:1.25rem;text-align:left;display:flex;flex-direction:column;gap:.75rem}.clock-page__result-panel--success{background-color:var(--color-success-soft);border:1px solid rgba(46,139,87,.18)}.clock-page__result-panel--error{background-color:var(--color-error-soft);border:1px solid rgba(179,38,46,.18)}@media(max-width:900px){.clock-page__hero-card{padding:2.25rem 1.5rem;min-height:56vh}.clock-page__action-grid{grid-template-columns:1fr;max-width:520px}.clock-page__action-button{min-height:90px;font-size:1.2rem}.clock-page__modal-title{font-size:1.6rem}}.employee-record-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg-surface-soft)}.employee-record-row__label{color:var(--color-text-secondary);font-weight:600;min-width:180px}.employee-record-row__view{display:flex;align-items:center;justify-content:flex-end;gap:1rem;flex:1}.employee-record-row__value{color:var(--color-text-primary);font-weight:700;text-align:right}.employee-record-row__edit-button{font-size:.92rem;font-weight:700;color:var(--color-brand-red);background:none;border:none;cursor:pointer}.employee-record-row__edit{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;flex:1;flex-wrap:wrap}.employee-record-row__input{min-height:44px;min-width:240px;padding:0 .85rem;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background-color:#fff;color:var(--color-text-primary);outline:none;transition:border-color .18s ease,box-shadow .18s ease}.employee-record-row__input:focus{border-color:var(--color-brand-red);box-shadow:0 0 0 4px #b3262e1f}.employee-record-row__save-button,.employee-record-row__cancel-button{min-height:44px;padding:0 1rem}@media(max-width:900px){.employee-record-row{flex-direction:column;align-items:flex-start}.employee-record-row__label{min-width:unset}.employee-record-row__view,.employee-record-row__edit{width:100%;justify-content:flex-start}.employee-record-row__value{text-align:left}.employee-record-row__input{width:100%;min-width:unset}}.employee-form-page__hero-card{width:100%;max-width:1200px;padding:3.25rem;border-radius:var(--radius-xl);box-shadow:var(--shadow-medium)}.employee-form-page__hero-content{width:100%;max-width:960px;margin:0 auto;text-align:center}.employee-form-page__eyebrow{margin-bottom:1rem;font-size:.95rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--color-brand-red)}.employee-form-page__title{margin-bottom:1rem}.employee-form-page__subtitle{max-width:760px;margin:0 auto 2.25rem;font-size:1.15rem}.employee-form-page__mode-actions{display:flex;justify-content:center;gap:1.25rem;flex-wrap:wrap;margin-bottom:1rem}.employee-form-page__mode-button{min-width:260px}.employee-form-page__workspace{max-height:0;overflow:hidden;opacity:0;margin-top:0;transition:max-height .4s ease,opacity .3s ease,margin-top .3s ease}.employee-form-page__workspace--open{max-height:4000px;opacity:1;margin-top:2rem}.employee-form-page__workspace-inner{text-align:left;display:flex;flex-direction:column;gap:.8rem}.employee-form-page__section-header{padding-top:0}.employee-form-page__section-title{font-size:1.6rem;font-weight:700;color:var(--color-text-primary);margin-bottom:.5rem}.employee-form-page__section-description{color:var(--color-text-secondary);font-size:1rem}.employee-form-page__lookup-card,.employee-form-page__snapshot-card{padding:1.5rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);display:flex;flex-direction:column;gap:1rem}.employee-form-page__lookup-actions{margin-top:1rem;display:flex;justify-content:flex-start}.employee-form-page__snapshot-header{margin-bottom:1rem}.employee-form-page__snapshot-title{font-size:1.2rem;font-weight:700;color:var(--color-text-primary);margin-bottom:.35rem}.employee-form-page__snapshot-subtitle{color:var(--color-text-secondary);font-size:.98rem}.employee-form-page__snapshot-list{display:flex;flex-direction:column;gap:.85rem}.employee-form-page__snapshot-row{display:flex;justify-content:space-between;gap:1rem;padding:.9rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg-surface-soft)}.employee-form-page__snapshot-label{color:var(--color-text-secondary);font-weight:600}.employee-form-page__snapshot-value{color:var(--color-text-primary);font-weight:700;text-align:right}.employee-form-page__form{display:flex;flex-direction:column;gap:1.15rem}.employee-form-page__submit-row{display:flex;flex-direction:column;align-items:flex-start;gap:1rem;margin-top:.5rem}.employee-form-page__submit-button{min-width:280px}.employee-form-page__modal-card{max-width:680px}.employee-form-page__modal-content{display:flex;flex-direction:column;gap:1.15rem}.employee-form-page__modal-eyebrow{font-size:.9rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted)}.employee-form-page__modal-eyebrow--success{color:var(--color-success)}.employee-form-page__modal-eyebrow--error{color:var(--color-error)}.employee-form-page__modal-title{font-size:1.95rem;font-weight:700;line-height:1.15;color:var(--color-text-primary)}.employee-form-page__modal-text{font-size:1.03rem;color:var(--color-text-secondary)}.employee-form-page__modal-detail-card{padding:1.15rem 1.2rem;border-radius:var(--radius-md);display:flex;flex-direction:column;gap:.7rem}.employee-form-page__modal-detail-card--success{background-color:var(--color-success-soft);border:1px solid rgba(46,139,87,.18)}.employee-form-page__modal-detail-card--error{background-color:var(--color-error-soft);border:1px solid rgba(179,38,46,.18)}.employee-form-page__modal-actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:.25rem}.employee-form-page__submit-row--update{margin-top:.5rem;padding-top:.75rem;border-top:1px solid var(--color-border)}.employee-form-page__message{margin:0 auto 1.5rem;max-width:760px;padding:.95rem 1.1rem;border-radius:var(--radius-md);font-weight:600;text-align:left}.employee-form-page__message--success{background-color:var(--color-success-soft);border:1px solid rgba(46,139,87,.18);color:var(--color-success)}.employee-form-page__message--error{background-color:var(--color-error-soft);border:1px solid rgba(179,38,46,.18);color:var(--color-error)}.employee-form-page__message--info{background-color:var(--color-bg-surface-soft);border:1px solid var(--color-border);color:var(--color-text-primary)}.employee-form-page__result-card,.employee-form-page__search-results-card{padding:1.5rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);display:flex;flex-direction:column;gap:1rem}.employee-form-page__search-results-list{display:flex;flex-direction:column;gap:.85rem}.employee-form-page__search-result{width:100%;padding:1rem 1.1rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg-surface-soft);display:flex;justify-content:space-between;align-items:center;gap:1rem;text-align:left;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.employee-form-page__search-result:hover{border-color:var(--color-brand-red);box-shadow:var(--shadow-soft);transform:translateY(-1px)}.employee-form-page__search-result--selected{border-color:var(--color-brand-red);box-shadow:0 0 0 4px #b3262e1f}.employee-form-page__search-result-main,.employee-form-page__search-result-side{display:flex;flex-direction:column;gap:.3rem}.employee-form-page__search-result-name{font-size:1rem;font-weight:700;color:var(--color-text-primary)}.employee-form-page__search-result-meta{font-size:.95rem;color:var(--color-text-secondary)}.employee-form-page__search-result-side{align-items:flex-end;color:var(--color-text-secondary);font-size:.95rem}.employee-form-page__submit-button:disabled,.employee-form-page__lookup-actions .primary-button:disabled{opacity:.7;cursor:not-allowed}@media(max-width:900px){.employee-form-page__search-result{flex-direction:column;align-items:flex-start}.employee-form-page__search-result-side{align-items:flex-start}}@media(max-width:900px){.employee-form-page__mode-button,.employee-form-page__submit-button{width:100%;min-width:unset}.employee-form-page__snapshot-row{flex-direction:column;align-items:flex-start}.employee-form-page__snapshot-value{text-align:left}.employee-form-page__modal-title{font-size:1.55rem}}.employee-review-page.page-shell{padding-inline:1rem}.employee-review-page__container{max-width:1860px}.employee-review-page__hero-card{width:100%;max-width:100%;padding:2.5rem;border-radius:var(--radius-xl);box-shadow:var(--shadow-medium)}.employee-review-page__hero-content{width:100%;max-width:1720px;margin:0 auto;text-align:center}.employee-review-page__eyebrow{margin-bottom:.6rem;font-size:.95rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--color-brand-red)}.employee-review-page__title{margin-bottom:.85rem;font-size:2.4rem}.employee-review-page__subtitle{max-width:920px;margin:0 auto 1.6rem;font-size:1.05rem}.employee-review-page__card{margin-top:1rem;padding:1.25rem;border-radius:var(--radius-lg);text-align:left}.employee-review-page__section-header{margin-bottom:1rem}.employee-review-page__section-header--row{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.employee-review-page__section-title{margin:0 0 .45rem;font-size:1.35rem;color:var(--color-text-primary)}.employee-review-page__section-description{margin:0;color:var(--color-text-secondary)}.employee-review-page__status{margin:.85rem 0 0;font-weight:600}.employee-review-page__status--error{color:var(--color-brand-red)}.employee-review-page__compact-button.secondary-button{min-height:44px;padding:.6rem 1rem;border-radius:12px;font-size:.92rem;font-weight:700;box-shadow:none}.employee-review-page__toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.75rem}.employee-review-page__result-summary{display:flex;align-items:baseline;gap:.55rem;color:var(--color-text-secondary);white-space:nowrap}.employee-review-page__result-label{font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.employee-review-page__result-summary strong{color:var(--color-text-primary);font-size:1rem}.employee-review-page__loading-state,.employee-review-page__empty-row{color:var(--color-text-secondary)}.employee-review-page__table-scrollbar{display:none;overflow-x:auto;overflow-y:hidden;margin-bottom:.55rem;border:1px solid rgba(148,163,184,.16);border-radius:999px;background:linear-gradient(180deg,var(--color-bg-input-soft) 0%,var(--color-bg-surface-soft) 100%);scrollbar-width:thin}.employee-review-page__table-scrollbar-inner{height:1px}.employee-review-page__table-shell{overflow-x:auto;overflow-y:visible;max-width:100%;border:1px solid rgba(148,163,184,.2);border-radius:16px;background:var(--color-card-glass);scrollbar-width:thin}.employee-review-page__table{width:max-content;min-width:1380px;border-collapse:collapse}.employee-review-page__table th,.employee-review-page__table td{padding:.72rem .8rem;border-bottom:1px solid rgba(226,232,240,.9);text-align:left;vertical-align:top;white-space:nowrap;font-size:.9rem;line-height:1.2}.employee-review-page__table-header-row th{position:sticky;top:0;z-index:3;padding:0;background:var(--color-bg-surface-soft);font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.employee-review-page__sort-button{display:flex;align-items:center;justify-content:space-between;gap:.65rem;width:100%;padding:.72rem .8rem;border:none;background:transparent;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;text-align:left;cursor:pointer}.employee-review-page__sort-button:focus{outline:none}.employee-review-page__sort-button:focus-visible{box-shadow:inset 0 0 0 2px #b3262e47}.employee-review-page__sort-indicator{flex-shrink:0;min-width:1.8rem;color:var(--color-brand-red);text-align:right}.employee-review-page__table-filter-row th{position:sticky;top:43px;z-index:2;padding:.55rem .65rem .65rem;background:var(--color-bg-surface-soft)}.employee-review-page__column-filter{width:100%;min-width:116px;min-height:36px;padding:.45rem .65rem;border:1px solid rgba(100,116,139,.24);border-radius:10px;background:var(--color-bg-input);color:var(--color-text-primary);font-size:.8rem;font-weight:600;text-transform:none;letter-spacing:normal;box-shadow:inset 0 1px 1px #ffffff14}.employee-review-page__column-filter:focus{outline:none;border-color:#b3262e73;box-shadow:0 0 0 3px var(--color-focus-ring)}.employee-review-page__column-filter--mono{font-family:Consolas,Courier New,monospace}.employee-review-page__table-row{cursor:pointer}.employee-review-page__table tbody tr:hover td{background:#b3262e09}.employee-review-page__table-row--selected td{background:#b3262e1f}.employee-review-page__table-row--selected:hover td{background:#b3262e29}.employee-review-page__mono-cell{font-family:Consolas,Courier New,monospace;font-size:.76rem;letter-spacing:-.02em}.employee-review-page__status-pill{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:.2rem .7rem;border-radius:999px;font-size:.78rem;font-weight:700;text-transform:capitalize}.employee-review-page__status-pill--active{background:#15803d1f;color:#166534}.employee-review-page__status-pill--inactive{background:#b3262e1a;color:var(--color-brand-red)}.employee-review-page__empty-row{text-align:center;padding:1.4rem;white-space:normal}@media(max-width:900px){.employee-review-page__section-header--row{flex-direction:column}.employee-review-page__toolbar{width:100%;justify-content:space-between}}@media(max-width:640px){.employee-review-page__hero-card{padding:1.4rem}.employee-review-page__title{font-size:1.95rem}}.assign-badge-page{--page-scale: .85}.assign-badge-page__hero-card{width:100%;max-width:calc(1100px * var(--page-scale));padding:calc(2.25rem * var(--page-scale));border-radius:var(--radius-xl);box-shadow:var(--shadow-medium)}.assign-badge-page__hero-content{width:100%;max-width:calc(960px * var(--page-scale));margin:0 auto;text-align:center;font-size:calc(1rem * var(--page-scale))}.assign-badge-page__eyebrow{margin-bottom:calc(.5rem * var(--page-scale));font-size:calc(.95rem * var(--page-scale));font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--color-brand-red)}.assign-badge-page__title{margin-bottom:calc(.85rem * var(--page-scale));font-size:calc(2.5rem * var(--page-scale))}.assign-badge-page__subtitle{max-width:calc(720px * var(--page-scale));margin:0 auto calc(1.45rem * var(--page-scale)) auto;font-size:calc(1.02rem * var(--page-scale))}.assign-badge-page__workflow-stack{display:flex;flex-direction:column;gap:calc(.8rem * var(--page-scale));text-align:left}.assign-badge-page__lookup-card,.assign-badge-page__summary-card,.assign-badge-page__assignment-card{padding:calc(1.15rem * var(--page-scale));border-radius:var(--radius-lg);box-shadow:var(--shadow-soft)}.assign-badge-page__section-header{margin-bottom:calc(1rem * var(--page-scale))}.assign-badge-page__section-title{font-size:calc(1.4rem * var(--page-scale));font-weight:700;color:var(--color-text-primary);margin-bottom:calc(.5rem * var(--page-scale))}.assign-badge-page__section-description{color:var(--color-text-secondary);font-size:calc(1rem * var(--page-scale))}.assign-badge-page__action-row{margin-top:calc(1rem * var(--page-scale));display:flex;justify-content:flex-start;flex-wrap:wrap;gap:calc(1rem * var(--page-scale))}.assign-badge-page__summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:calc(.85rem * var(--page-scale))}.assign-badge-page__summary-item{display:flex;flex-direction:column;gap:calc(.25rem * var(--page-scale));padding:calc(.7rem * var(--page-scale)) calc(.85rem * var(--page-scale));border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg-surface-soft)}.assign-badge-page__summary-label{color:var(--color-text-secondary);font-weight:600;font-size:calc(.92rem * var(--page-scale))}.assign-badge-page__summary-value{color:var(--color-text-primary);font-weight:700;font-size:calc(.98rem * var(--page-scale));text-align:left}.assign-badge-page__scan-panel{padding:calc(1.25rem * var(--page-scale));border:1px solid var(--color-border);border-radius:var(--radius-lg);background-color:var(--color-bg-surface-soft)}.assign-badge-page__scan-title{font-size:calc(1.25rem * var(--page-scale));font-weight:700;color:var(--color-text-primary);margin-bottom:calc(.4rem * var(--page-scale))}.assign-badge-page__scan-text{color:var(--color-text-secondary);font-size:calc(1rem * var(--page-scale))}.assign-badge-page__retrieve-button{max-width:calc(265px * var(--page-scale));padding:0 1.1rem}.assign-badge-page__assign-button{min-width:calc(140px * var(--page-scale));min-height:calc(80px * var(--page-scale));max-width:calc(200px * var(--page-scale))}.assign-badge-page__manual-entry-toggle{margin-top:calc(1rem * var(--page-scale))}.assign-badge-page__manual-entry-panel{margin-top:calc(1rem * var(--page-scale));padding-top:calc(1rem * var(--page-scale));border-top:1px solid var(--color-border)}.assign-badge-page__modal-card{max-width:calc(680px * var(--page-scale))}.assign-badge-page__modal-content{display:flex;flex-direction:column;gap:calc(1.15rem * var(--page-scale))}.assign-badge-page__modal-eyebrow{font-size:calc(.9rem * var(--page-scale));font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted)}.assign-badge-page__modal-title{font-size:calc(1.95rem * var(--page-scale));font-weight:700;line-height:1.15;color:var(--color-text-primary)}.assign-badge-page__modal-text{font-size:calc(1.03rem * var(--page-scale));color:var(--color-text-secondary)}.assign-badge-page__modal-detail-card{padding:calc(1.15rem * var(--page-scale)) calc(1.2rem * var(--page-scale));border-radius:var(--radius-md);display:flex;flex-direction:column;gap:calc(.7rem * var(--page-scale))}.assign-badge-page__modal-detail-card--success{background-color:var(--color-success-soft);border:1px solid rgba(46,139,87,.18)}.assign-badge-page__modal-detail-card--error{background-color:var(--color-error-soft);border:1px solid rgba(179,38,46,.18)}.assign-badge-page__modal-actions{display:flex;flex-wrap:wrap;gap:calc(1rem * var(--page-scale));margin-top:calc(.25rem * var(--page-scale))}.assign-badge-page__top-row{display:grid;grid-template-columns:1fr 1fr;gap:calc(1.1rem * var(--page-scale))}.assign-badge-page__lookup-panel{display:flex;flex-direction:column;gap:calc(.9rem * var(--page-scale))}.assign-badge-page__lookup-mode-toggle{display:grid;grid-template-columns:1fr 1fr;gap:calc(.75rem * var(--page-scale));margin-bottom:calc(1rem * var(--page-scale))}.assign-badge-page__lookup-mode-button{min-height:calc(56px * var(--page-scale));padding:0 calc(1rem * var(--page-scale));border:2px solid var(--color-brand-red);border-radius:var(--radius-md);background-color:#fff;color:var(--color-brand-red);font-size:calc(.98rem * var(--page-scale));font-weight:700;box-shadow:var(--shadow-soft);transition:transform .18s ease,background-color .18s ease,color .18s ease,box-shadow .18s ease}.assign-badge-page__lookup-mode-button:hover{background-color:var(--color-brand-red-soft);transform:translateY(-2px)}.assign-badge-page__lookup-mode-button--active{background-color:var(--color-brand-red);color:#fff;box-shadow:var(--shadow-brand)}.assign-badge-page__search-results{margin-top:calc(1.1rem * var(--page-scale));padding-top:calc(1rem * var(--page-scale));border-top:1px solid var(--color-border)}.assign-badge-page__results-list{display:flex;flex-direction:column;gap:calc(.75rem * var(--page-scale))}.assign-badge-page__result-card{display:flex;flex-direction:column;align-items:flex-start;gap:calc(.25rem * var(--page-scale));width:100%;padding:calc(.9rem * var(--page-scale)) calc(1rem * var(--page-scale));border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg-surface-soft);text-align:left;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background-color .18s ease}.assign-badge-page__result-card:hover{transform:translateY(-1px);border-color:#b3262e73;box-shadow:var(--shadow-soft)}.assign-badge-page__result-card--selected{border-color:var(--color-brand-red);background-color:#b3262e0f;box-shadow:0 0 0 3px #b3262e1a}.assign-badge-page__result-name{font-size:calc(1rem * var(--page-scale));font-weight:700;color:var(--color-text-primary)}.assign-badge-page__result-meta{font-size:calc(.9rem * var(--page-scale));font-weight:600;color:var(--color-text-secondary)}.assign-badge-page__inline-error{margin-top:calc(.85rem * var(--page-scale));color:var(--color-error);font-size:calc(.95rem * var(--page-scale));font-weight:700}.assign-badge-page__modal-card--wide{width:min(760px,92vw)}.assign-badge-page__modal-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:calc(.85rem * var(--page-scale));margin-top:calc(1rem * var(--page-scale));text-align:left}.assign-badge-page__modal-detail{margin-top:calc(.85rem * var(--page-scale));padding:calc(.75rem * var(--page-scale));border-radius:var(--radius-md);background-color:var(--color-bg-surface-soft);border:1px solid var(--color-border);color:var(--color-text-secondary);font-size:calc(.88rem * var(--page-scale));white-space:pre-wrap;word-break:break-word}.assign-badge-page__results-list--modal{max-height:22rem;overflow-y:auto;padding-right:.25rem}.assign-badge-page__modal-card--success{border:2px solid rgba(34,197,94,.45);box-shadow:0 20px 40px #0f172a2e,0 0 0 4px #22c55e1f}.assign-badge-page__modal-card--error{border:2px solid rgba(239,68,68,.45);box-shadow:0 20px 40px #0f172a2e,0 0 0 4px #ef44441f}.assign-badge-page__modal-eyebrow--success{color:#15803d;background:#22c55e24;border:1px solid rgba(34,197,94,.22);padding:.35rem .65rem;border-radius:999px;display:inline-flex;align-items:center}.assign-badge-page__modal-eyebrow--error{color:#b91c1c;background:#ef444424;border:1px solid rgba(239,68,68,.22);padding:.35rem .65rem;border-radius:999px;display:inline-flex;align-items:center}@media(max-width:900px){.assign-badge-page__modal-summary-grid{grid-template-columns:1fr}}@media(max-width:900px){.assign-badge-page__lookup-mode-toggle{grid-template-columns:1fr}}@media(max-width:900px){.assign-badge-page__hero-card{max-width:100%}.assign-badge-page__hero-content{max-width:100%;font-size:1rem}.assign-badge-page__top-row,.assign-badge-page__summary-grid{grid-template-columns:1fr}.assign-badge-page__summary-value{text-align:left}.assign-badge-page__assign-button{width:100%;min-width:unset}.assign-badge-page__modal-title{font-size:1.55rem}}.work-schedules-page__eyebrow{margin:0 0 .5rem;font-size:.82rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#155e75}.work-schedules-page__title,.work-schedules-page__subtitle{margin:0}.work-schedules-page__title{max-width:20ch}.work-schedules-page__subtitle{max-width:72ch}.work-schedules-page__container,.work-schedules-page__main,.work-schedules-page__hero-card,.work-schedules-page__hero-content{width:100%}.work-schedules-page__hero-card{max-width:100%;padding:2.4rem;border-radius:var(--radius-xl);box-shadow:var(--shadow-medium)}.work-schedules-page__hero-content{display:grid;gap:1.75rem;max-width:1120px;margin:0 auto;text-align:left;min-width:0}.work-schedules-page__intro{display:grid;gap:.7rem;min-width:0;padding-inline:.25rem}.work-schedules-page__card{display:grid;gap:1.25rem;min-width:0;padding:1.6rem;overflow:hidden}.work-schedules-page__section-header{display:grid;gap:.35rem}.work-schedules-page__section-title{margin:0;font-size:1.1rem}.work-schedules-page__section-description{margin:0;color:#475569}.work-schedules-page__guidance{display:grid;gap:.3rem;padding:.95rem 1rem;border:1px solid #dbeafe;border-radius:1rem;background:linear-gradient(135deg,#eff6ff,#f8fafc);color:#1e3a8a}.work-schedules-page__guidance strong{font-size:.88rem;letter-spacing:.04em;text-transform:uppercase}.work-schedules-page__guidance span{font-size:.95rem;line-height:1.45}.work-schedules-page__lookup-mode-row{display:flex;flex-wrap:wrap;gap:.75rem}.work-schedules-page__lookup-button{min-width:11rem}.work-schedules-page__lookup-grid,.work-schedules-page__lookup-grid--name{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr))}.work-schedules-page__field{display:grid;gap:.45rem}.work-schedules-page__field label{font-weight:600;color:#1e293b}.work-schedules-page__field input,.work-schedules-page__field textarea{width:100%;border:1px solid #cbd5e1;border-radius:.85rem;padding:.75rem .9rem;font:inherit;background:#fff}.work-schedules-page__field textarea{min-height:5.5rem;resize:vertical}.work-schedules-page__field input:disabled,.work-schedules-page__field textarea:disabled{background:#f8fafc;color:#94a3b8}.work-schedules-page__field--button{align-self:end}.work-schedules-page__lookup-results{display:grid;gap:.75rem;min-width:0}.work-schedules-page__lookup-result{display:flex;justify-content:space-between;gap:1rem;width:100%;border:1px solid #cbd5e1;border-radius:1rem;padding:.9rem 1rem;background:#fff;color:#1e293b;font:inherit;text-align:left}.work-schedules-page__lookup-result--selected{border-color:#0f766e;background:#ecfeff}.work-schedules-page__status{margin:0;padding:.8rem .95rem;border-radius:.9rem}.work-schedules-page__status--info{background:#ecfeff;color:#155e75}.work-schedules-page__status--error{background:#fef2f2;color:#991b1b}.work-schedules-page__employee-summary{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;align-items:center;border:1px solid #dbeafe;border-radius:1rem;padding:1rem 1.1rem;background:linear-gradient(135deg,#eff6ff,#f8fafc)}.work-schedules-page__summary-label{margin:0 0 .25rem;font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#1d4ed8}.work-schedules-page__summary-title,.work-schedules-page__summary-meta{margin:0}.work-schedules-page__summary-pill{padding:.5rem .85rem;border-radius:999px;background:#dbeafe;color:#1e40af;font-weight:700;text-transform:capitalize}.work-schedules-page__day-list{display:grid;gap:1rem;min-width:0}.work-schedules-page__day-card{display:grid;gap:1rem;border:1px solid #e2e8f0;border-radius:1rem;padding:1rem;background:#fff;min-width:0}.work-schedules-page__day-header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem;align-items:center}.work-schedules-page__day-title,.work-schedules-page__day-meta{margin:0}.work-schedules-page__day-meta{color:#64748b;font-size:.92rem}.work-schedules-page__day-status{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.65rem;align-items:center}.work-schedules-page__day-status-pill{display:inline-flex;align-items:center;justify-content:center;min-height:2rem;padding:.3rem .8rem;border-radius:999px;font-size:.78rem;font-weight:700;letter-spacing:.04em}.work-schedules-page__day-status-pill--scheduled{background:#dcfce7;color:#166534}.work-schedules-page__day-status-pill--unscheduled{background:#e2e8f0;color:#334155}.work-schedules-page__toggle{display:inline-flex;align-items:center;gap:.55rem;font-weight:600;color:#0f172a;padding:.55rem .8rem;border:1px solid #cbd5e1;border-radius:999px;background:#f8fafc;cursor:pointer}.work-schedules-page__toggle input{accent-color:#0f766e}.work-schedules-page__day-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr))}.work-schedules-page__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.9rem}@media(max-width:720px){.work-schedules-page__hero-card{padding:1.5rem}.work-schedules-page__intro{padding-inline:0}.work-schedules-page__employee-summary,.work-schedules-page__day-header,.work-schedules-page__day-status,.work-schedules-page__actions{flex-direction:column;align-items:stretch}.work-schedules-page__summary-pill{width:fit-content}}.manual-hours-page.page-shell{padding-inline:1rem}.manual-hours-page__container{max-width:1860px}.manual-hours-page__hero-card{width:100%;max-width:100%;padding:2.5rem;border-radius:var(--radius-xl);box-shadow:var(--shadow-medium)}.manual-hours-page__hero-content{width:100%;max-width:1720px;margin:0 auto;text-align:center}.manual-hours-page__eyebrow{margin-bottom:.6rem;font-size:.95rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--color-brand-red)}.manual-hours-page__title{margin-bottom:.85rem;font-size:2.4rem}.manual-hours-page__subtitle{max-width:760px;margin:0 auto 1.5rem;font-size:1.05rem}.manual-hours-page__top-controls{display:flex;flex-direction:column;gap:.9rem;margin-bottom:1rem;text-align:left}.manual-hours-page__control-card,.manual-hours-page__timesheet-card{padding:1.25rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-soft)}.manual-hours-page__employee-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:1rem;align-items:end;row-gap:1rem}.manual-hours-page__field--button{display:flex;align-items:end}.manual-hours-page__employee-grid--name{grid-template-columns:1fr 1fr auto;align-items:end;row-gap:1rem;margin-top:.35rem}.manual-hours-page__section-header{margin-bottom:1rem;text-align:left}.manual-hours-page__section-header--compact{margin-bottom:.9rem}.manual-hours-page__section-title{font-size:1.35rem;font-weight:700;color:var(--color-text-primary);margin-bottom:.4rem}.manual-hours-page__section-description{color:var(--color-text-secondary);font-size:1rem}.manual-hours-page__week-label{font-size:.82rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted)}.manual-hours-page__week-range{font-size:1rem;font-weight:700;color:var(--color-text-primary)}.manual-hours-page__final-week-mode{display:flex;flex-direction:column;gap:.85rem}.manual-hours-page__final-week-bar{display:grid;grid-template-columns:auto 1fr auto;gap:0;align-items:stretch}.manual-hours-page__final-week-nav-button{min-height:58px;padding:0 1rem;margin:0;border:1px solid rgba(179,38,46,.5);border-radius:0;box-shadow:none;background:var(--color-brand-red);color:#fff;font-size:.95rem;font-weight:700;line-height:1;cursor:pointer;appearance:none}.manual-hours-page__final-week-nav-button:hover:not(:disabled){background-color:#7b181efa;color:#fff;border-color:#7b181efa;transform:none;appearance:none}.manual-hours-page__final-week-nav-button:disabled{opacity:.55;cursor:not-allowed;background-color:var(--color-brand-red);color:#fff}.manual-hours-page__final-week-nav-button--left{width:9rem;border-top-left-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md);border-right:none}.manual-hours-page__final-week-nav-button--right{width:9rem;border-top-right-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md);border-left:none}.manual-hours-page__final-week-display{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:58px;padding:.9rem 1.1rem;border-top:1px solid rgba(179,38,46,.5);border-bottom:1px solid rgba(179,38,46,.5);border-left:1px solid rgba(179,38,46,.5);border-right:1px solid rgba(179,38,46,.5);background-color:var(--color-bg-input);text-align:center}.manual-hours-page__final-mode-row{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}.manual-hours-page__final-mode-button{width:100%;min-width:unset;min-height:56px}.manual-hours-page__status{margin-top:.75rem;font-weight:600}.manual-hours-page__status--info{color:var(--color-text-secondary)}.manual-hours-page__status--error{color:var(--color-brand-red)}.manual-hours-page__lookup-results{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.manual-hours-page__lookup-result{display:flex;justify-content:space-between;align-items:center;width:100%;padding:.85rem 1rem;border:1px solid var(--color-brand-red);border-radius:var(--radius-md);background-color:var(--color-bg-surface-floating);color:var(--color-text-primary);cursor:pointer;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.manual-hours-page__lookup-result:hover{background-color:#b3262e0f}.manual-hours-page__lookup-result--selected{background-color:var(--color-brand-red);color:#fff;border-color:var(--color-brand-red)}.manual-hours-page__lookup-result--selected span{color:#fff}.manual-hours-page__selected-employee-summary{display:flex;flex-direction:column;gap:.2rem;margin-top:1rem;padding:.9rem 1rem;border:1px solid rgba(179,38,46,.18);border-radius:var(--radius-md);background:#b3262e0a}.manual-hours-page__selected-employee-summary-label{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary)}.manual-hours-page__selected-employee-summary-name{font-size:1rem;font-weight:700;color:var(--color-text-primary)}.manual-hours-page__selected-employee-summary-meta{font-size:.9rem;color:var(--color-text-secondary)}.manual-hours-page__week-meta{display:flex;flex-wrap:wrap;gap:1rem;font-size:.9rem;color:var(--color-text-secondary)}.manual-hours-page__days-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.85rem}.manual-hours-page__days-grid--time-range{grid-template-columns:repeat(7,minmax(0,1fr));gap:.32rem}.manual-hours-page__day-card{padding:.8rem;border:1px solid var(--color-border);border-radius:var(--radius-lg);background-color:var(--color-bg-surface-soft);display:flex;flex-direction:column;gap:.65rem;min-width:0}.manual-hours-page__day-card--total-hours{min-height:145px}.manual-hours-page__day-card--time-range{min-height:0;padding:.6rem;gap:.45rem}.manual-hours-page__day-card--locked{background:#f3f4f6!important;border-color:#d1d5db!important}.manual-hours-page__day-card--locked .manual-hours-page__field input,.manual-hours-page__day-card--locked input,.manual-hours-page__day-card--locked input[type=number],.manual-hours-page__day-card--locked input[type=time],.manual-hours-page__day-card--locked input[type=text],.manual-hours-page__day-card--locked input:disabled,.manual-hours-page__day-card--locked input[type=number]:disabled,.manual-hours-page__day-card--locked input[type=time]:disabled,.manual-hours-page__day-card--locked input[type=text]:disabled{background:#e5e7eb!important;background-color:#e5e7eb!important;color:#6b7280!important;border:1px solid #d1d5db!important;box-shadow:none!important;opacity:1!important;appearance:none;-webkit-appearance:none;-webkit-text-fill-color:#6b7280!important}.manual-hours-page__day-card--locked input[type=number]::-webkit-outer-spin-button,.manual-hours-page__day-card--locked input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.manual-hours-page__day-card--locked input[type=time]::-webkit-calendar-picker-indicator{opacity:.45}.manual-hours-page__day-card--locked .manual-hours-page__day-short,.manual-hours-page__day-card--locked .manual-hours-page__day-date,.manual-hours-page__day-card--locked label,.manual-hours-page__day-card--locked .manual-hours-page__time-block-label{color:#6b7280!important}.manual-hours-page__day-header{display:flex;flex-direction:column;gap:.2rem}.manual-hours-page__day-short{font-size:.95rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-brand-red)}.manual-hours-page__day-date{font-size:.9rem;color:var(--color-text-secondary);font-weight:600}.manual-hours-page__day-fields{display:flex;flex-direction:column;gap:.4rem}.manual-hours-page__time-block{display:flex;flex-direction:column;gap:.35rem;padding:.45rem;min-width:0;border:1px solid rgba(179,38,46,.14);border-radius:12px;background:var(--color-card-glass);overflow:hidden}.manual-hours-page__time-block-label{font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.manual-hours-page__lunch-toggle{display:grid;grid-auto-flow:column;align-items:center;justify-content:center;column-gap:.75rem;padding-right:1rem;align-self:stretch;width:100%;max-width:100%;min-width:0;margin:0 auto;padding:.05rem .42rem .05rem .5rem;box-sizing:border-box;font-size:.78rem;font-weight:700;color:var(--color-text-secondary);line-height:1.12;text-align:center}.manual-hours-page__lunch-toggle span{min-width:0;max-width:100%;white-space:nowrap;word-break:normal;overflow-wrap:normal}.manual-hours-page__lunch-toggle input{width:1.5rem;height:1.5rem;min-width:0;margin:0;flex:0 0 auto;align-self:center;transform:scale(1.6);transform-origin:center}.manual-hours-page__lunch-toggle input[type=checkbox]:focus,.manual-hours-page__lunch-toggle input[type=checkbox]:focus-visible,.manual-hours-page__lunch-toggle input[type=checkbox]:active{outline:none!important;outline-offset:0!important;box-shadow:none!important;border-color:transparent!important;background-image:none!important}.manual-hours-page__day-fields .manual-hours-page__field{display:flex;flex-direction:column;gap:.25rem;min-width:0}.manual-hours-page__day-fields .manual-hours-page__field input{width:100%;min-width:0;max-width:100%;box-sizing:border-box}.manual-hours-page__day-card--time-range .manual-hours-page__field input[type=time]{min-height:36px;padding:.35rem;font-size:.7rem;line-height:1.1;letter-spacing:-.02em;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:clip}.manual-hours-page__day-card--time-range .manual-hours-page__field input[type=time]::-webkit-datetime-edit{padding:0;min-width:0}.manual-hours-page__day-card--time-range .manual-hours-page__field input[type=time]::-webkit-datetime-edit-fields-wrapper{padding:0}.manual-hours-page__day-card--time-range .manual-hours-page__field input[type=time]::-webkit-calendar-picker-indicator{margin:0;padding:0}.manual-hours-page__day-card--time-range .manual-hours-page__field label{font-size:.72rem;font-weight:700;line-height:1.1}.manual-hours-page__day-card--time-range .manual-hours-page__field input[type=text]{min-height:36px;padding:.45rem .5rem;font-size:.78rem}.manual-hours-page__day-card--time-range .manual-hours-page__day-short{font-size:.84rem}.manual-hours-page__day-card--time-range .manual-hours-page__day-date{font-size:.8rem}.manual-hours-page__submit-row{display:flex;justify-content:flex-end;gap:.85rem;margin-top:1rem}.manual-hours-page__submit-button{min-width:160px}.manual-hours-page__modal-backdrop{position:fixed;inset:0;background:#0f172a6b;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:1000}.manual-hours-page__modal-card{width:100%;max-width:460px;padding:1.5rem;border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow-medium)}.manual-hours-page__modal-title{margin:0 0 .6rem;font-size:1.25rem;font-weight:700;color:var(--color-text-primary)}.manual-hours-page__modal-message{margin:0 0 1.2rem;color:var(--color-text-secondary);line-height:1.5}.manual-hours-page__modal-actions{display:flex;justify-content:flex-end;gap:.75rem}.manual-hours-page__submit-button--success{background:#15803d!important;border-color:#15803d!important;color:#fff!important}.manual-hours-page__submit-button--success:hover:not(:disabled){background:#166534!important;border-color:#166534!important;color:#fff!important}@media(max-width:1200px){.manual-hours-page__days-grid,.manual-hours-page__days-grid--time-range{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:900px){.manual-hours-page__employee-grid,.manual-hours-page__employee-grid--name{grid-template-columns:1fr}.manual-hours-page__final-week-bar{grid-template-columns:1fr;gap:.65rem}.manual-hours-page__final-week-nav-button{width:100%}.manual-hours-page__final-week-nav-button--left,.manual-hours-page__final-week-nav-button--right{border-radius:var(--radius-md);border-left:1px solid rgba(179,38,46,.5);border-right:1px solid rgba(179,38,46,.5)}.manual-hours-page__final-week-display{border-radius:var(--radius-md)}.manual-hours-page__days-grid,.manual-hours-page__days-grid--time-range{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.manual-hours-page__hero-card{padding:1.4rem}.manual-hours-page__title{font-size:1.9rem}.manual-hours-page__days-grid,.manual-hours-page__days-grid--time-range,.manual-hours-page__final-mode-row{grid-template-columns:1fr}.manual-hours-page__week-meta{flex-direction:column;gap:.45rem}.manual-hours-page__submit-row{flex-direction:column;justify-content:stretch}.manual-hours-page__submit-button{width:100%}.manual-hours-page__modal-actions{flex-direction:column}}.pto-approval-page__eyebrow{margin:0 0 .5rem;font-size:.82rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#7c2d12}.pto-approval-page__title,.pto-approval-page__subtitle{margin:0}.pto-approval-page__title{max-width:18ch}.pto-approval-page__subtitle{max-width:72ch}.pto-approval-page__container,.pto-approval-page__main,.pto-approval-page__hero-card,.pto-approval-page__hero-content{width:100%}.pto-approval-page__hero-card{max-width:100%;padding:2.4rem;border-radius:var(--radius-xl);box-shadow:var(--shadow-medium)}.pto-approval-page__hero-content{display:grid;gap:1.75rem;max-width:1120px;margin:0 auto;text-align:left;min-width:0}.pto-approval-page__intro{display:grid;gap:.7rem;min-width:0;padding-inline:.25rem}.pto-approval-page__card{display:grid;gap:1.25rem;padding:1.5rem;min-width:0;margin-inline:1rem;overflow:hidden}.pto-approval-page__section-header{display:grid;gap:.35rem}.pto-approval-page__section-title{margin:0;font-size:1.1rem}.pto-approval-page__section-description{margin:0;color:#475569}.pto-approval-page__filter-grid,.pto-approval-page__lookup-grid,.pto-approval-page__lookup-grid--name,.pto-approval-page__detail-grid,.pto-approval-page__summary-grid{display:grid;gap:1rem}.pto-approval-page__filter-grid,.pto-approval-page__lookup-grid,.pto-approval-page__lookup-grid--name{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr))}.pto-approval-page__summary-grid{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));padding-inline:1rem;margin-inline:1rem;min-width:0}.pto-approval-page__summary-card{display:grid;gap:.4rem;padding:1.2rem;min-width:0;overflow:hidden;box-shadow:var(--shadow-soft)}.pto-approval-page__summary-label{color:#64748b;font-size:.85rem;text-transform:uppercase;letter-spacing:.08em}.pto-approval-page__summary-value{font-size:1.85rem;color:#0f172a}.pto-approval-page__calendar-card{gap:.8rem}.pto-approval-page__calendar-header{display:grid;gap:.8rem}.pto-approval-page__calendar-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:.55rem;align-items:center;width:100%}.pto-approval-page__calendar-nav-button.secondary-button{min-height:2.35rem;padding:.45rem .85rem;font-size:.88rem}.pto-approval-page__calendar-month-pill{display:inline-flex;align-items:center;justify-content:center;min-height:2.35rem;padding:.45rem .85rem;border:1px solid #dbeafe;border-radius:999px;background:linear-gradient(135deg,#eff6ff,#f8fafc);color:#1e3a8a;font-weight:700;white-space:nowrap;font-size:.92rem}.pto-approval-page__calendar-shell{display:grid;gap:.55rem;min-width:0}.pto-approval-page__calendar-weekdays,.pto-approval-page__calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.45rem}.pto-approval-page__calendar-weekday{padding:0 .2rem;color:#64748b;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;text-align:left}.pto-approval-page__calendar-day{min-height:6.4rem;display:flex;flex-direction:column;gap:.4rem;padding:.55rem;border:1px solid #dbeafe;border-radius:.85rem;background:linear-gradient(180deg,#fff,#f8fafc)}.pto-approval-page__calendar-day--placeholder{border-style:dashed;border-color:#e2e8f0;background:#f8fafc8c}.pto-approval-page__calendar-day-number{font-size:.8rem;font-weight:800;color:#0f172a}.pto-approval-page__calendar-day-events{display:flex;flex-direction:column;gap:.3rem;min-width:0;max-height:4.6rem;overflow:auto;padding-right:.1rem}.pto-approval-page__calendar-event{display:grid;gap:.12rem;padding:.32rem .42rem;border:1px solid #c7d2fe;border-radius:.7rem;background:linear-gradient(135deg,#eef2ff,#f8fafc);color:#312e81}.pto-approval-page__calendar-event strong{font-size:.68rem;line-height:1.2}.pto-approval-page__calendar-event span{font-size:.63rem;line-height:1.25;color:#4338ca}.pto-approval-page__calendar-event--all-day{border-color:#bfdbfe;background:linear-gradient(135deg,#dbeafe,#eff6ff);color:#1d4ed8}.pto-approval-page__calendar-event--all-day span{color:#1d4ed8}.pto-approval-page__calendar-event--preview{border-style:dashed;border-color:#10b981;background:linear-gradient(135deg,#dcfce7,#ecfdf5);color:#166534;box-shadow:0 0 0 1px #10b9811a}.pto-approval-page__calendar-event--preview span{color:#047857}.pto-approval-page__lookup-mode-row{display:flex;flex-wrap:wrap;gap:.75rem}.pto-approval-page__lookup-button{min-width:11rem}.pto-approval-page__field,.pto-approval-page__filter-actions{display:grid;gap:.45rem}.pto-approval-page__field label{font-weight:600;color:#1e293b}.pto-approval-page__field input,.pto-approval-page__field select,.pto-approval-page__field textarea{width:100%;border:1px solid #cbd5e1;border-radius:.85rem;padding:.75rem .9rem;font:inherit;background:#fff}.pto-approval-page__field textarea{min-height:7rem;resize:vertical}.pto-approval-page__field--button{align-self:end}.pto-approval-page__lookup-results,.pto-approval-page__queue-list{display:grid;gap:.85rem}.pto-approval-page__lookup-result,.pto-approval-page__queue-row{width:100%;border:1px solid #cbd5e1;border-radius:1rem;padding:1rem;background:#fff;color:#0f172a;text-align:left;font:inherit}.pto-approval-page__lookup-result{display:flex;justify-content:space-between;gap:1rem}.pto-approval-page__lookup-result--selected{border-color:#0f766e;background:#ecfeff}.pto-approval-page__selected-filter{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem;align-items:center;padding:.9rem 1rem;border-radius:1rem;background:#eff6ff;color:#1e3a8a}.pto-approval-page__status{margin:0;padding:.8rem .95rem;border-radius:.9rem}.pto-approval-page__status--info{background:#eff6ff;color:#1d4ed8}.pto-approval-page__status--error{background:#fef2f2;color:#991b1b}.pto-approval-page__queue-row{display:grid;gap:.85rem}.pto-approval-page__queue-row-main,.pto-approval-page__detail-header,.pto-approval-page__detail-actions{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem;align-items:center}.pto-approval-page__queue-row-title,.pto-approval-page__queue-row-meta,.pto-approval-page__queue-row-range,.pto-approval-page__detail-eyebrow,.pto-approval-page__detail-title,.pto-approval-page__detail-meta{margin:0}.pto-approval-page__queue-row-meta,.pto-approval-page__detail-meta{color:#64748b}.pto-approval-page__queue-row-footer{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.65rem}.pto-approval-page__queue-row-fact{display:grid;gap:.18rem;padding:.7rem .8rem;border:1px solid #dbe4f0;border-radius:.85rem;background:#f8fafc}.pto-approval-page__queue-row-fact-label{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#64748b}.pto-approval-page__queue-row-fact strong{color:#0f172a;font-size:.92rem;line-height:1.3}.pto-approval-page__status-pill{display:inline-flex;align-items:center;justify-content:center;min-width:6.5rem;padding:.45rem .75rem;border-radius:999px;font-size:.85rem;font-weight:700}.pto-approval-page__status-pill--pending{background:#fef3c7;color:#92400e}.pto-approval-page__status-pill--approved{background:#dcfce7;color:#166534}.pto-approval-page__status-pill--rejected{background:#fee2e2;color:#991b1b}.pto-approval-page__status-pill--cancelled{background:#e2e8f0;color:#334155}.pto-approval-page__detail-modal{width:min(46rem,calc(100vw - 2rem));max-height:calc(100vh - 2rem);overflow:auto;display:grid;gap:1rem}.pto-approval-page__detail-eyebrow{font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.16em;color:#7c2d12}.pto-approval-page__detail-card{display:grid;gap:.55rem;padding:1rem;border:1px solid #e2e8f0;border-radius:1rem;background:#fff}.pto-approval-page__detail-card h3,.pto-approval-page__detail-card p{margin:0}.pto-approval-page__detail-card--warning{background:linear-gradient(135deg,#fff7ed,#fffbeb);border-color:#fed7aa}.pto-approval-page__reject-button{background:#fef2f2;border-color:#b91c1c;color:#b91c1c}.pto-approval-page__reject-button:hover{background:#fee2e2;color:#991b1b}.pto-approval-page__approve-button.primary-button{background:linear-gradient(180deg,#16a34a,#15803d);box-shadow:0 14px 28px #15803d38}.pto-approval-page__approve-button.primary-button:hover{background:linear-gradient(180deg,#22c55e,#15803d)}.pto-approval-page__detail-actions{justify-content:flex-end}.pto-approval-page__detail-actions .secondary-button,.pto-approval-page__detail-actions .primary-button{min-height:2.7rem;padding:.55rem 1rem}@media(max-width:720px){.pto-approval-page__hero-card{padding:1.5rem}.pto-approval-page__intro{padding-inline:0}.pto-approval-page__card,.pto-approval-page__summary-grid{margin-inline:.25rem}.pto-approval-page__summary-grid{padding-inline:.25rem}.pto-approval-page__calendar-header,.pto-approval-page__calendar-nav{flex-direction:column;align-items:stretch}.pto-approval-page__calendar-weekdays{display:none}.pto-approval-page__calendar-grid{grid-template-columns:1fr}.pto-approval-page__calendar-day--placeholder{display:none}.pto-approval-page__selected-filter,.pto-approval-page__queue-row-main,.pto-approval-page__queue-row-footer,.pto-approval-page__detail-header,.pto-approval-page__detail-actions{flex-direction:column;align-items:stretch}}.payroll-approval-page.page-shell{padding-inline:1rem}.payroll-approval-page__container{max-width:1860px}.payroll-approval-page__hero-card{width:100%;max-width:100%;padding:2.5rem;border-radius:var(--radius-xl);box-shadow:var(--shadow-medium)}.payroll-approval-page__hero-content{width:100%;max-width:1720px;margin:0 auto;text-align:center}.payroll-approval-page__eyebrow{margin-bottom:.6rem;font-size:.95rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--color-brand-red)}.payroll-approval-page__title{margin-bottom:.85rem;font-size:2.4rem}.payroll-approval-page__subtitle{max-width:780px;margin:0 auto 1.6rem;font-size:1.05rem}.payroll-approval-page__overview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem;margin-bottom:1.4rem}.payroll-approval-page__overview-card{display:flex;flex-direction:column;gap:.35rem;min-width:0;padding:1rem 1.1rem;border:1px solid rgba(148,163,184,.2);border-radius:18px;background:linear-gradient(180deg,#ffffffe6,#f8fafcfa);box-shadow:0 12px 28px #0f172a0d;text-align:left}.payroll-approval-page__overview-card--alert{border-color:#b3262e2e;background:linear-gradient(180deg,#fef2f2f5,#fffffffa)}.payroll-approval-page__overview-label{font-size:.72rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--color-text-muted)}.payroll-approval-page__overview-value{min-width:0;font-size:1.3rem;line-height:1.2;color:var(--color-text-primary)}.payroll-approval-page__overview-note{min-width:0;color:var(--color-text-secondary);font-size:.88rem;line-height:1.3}.payroll-approval-page__card{padding:1.25rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);text-align:left}.payroll-approval-page__approval-strip,.payroll-approval-page__export-card,.payroll-approval-page__workflow-card{margin-top:1rem}.payroll-approval-page__workflow-layout{display:flex;align-items:center;justify-content:space-between;gap:1.25rem}.payroll-approval-page__workflow-copy{display:flex;flex-direction:column;gap:.45rem;min-width:0;flex:1 1 auto}.payroll-approval-page__workflow-eyebrow{margin:0;font-size:.76rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--color-brand-red)}.payroll-approval-page__workflow-indicator-row{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem}.payroll-approval-page__workflow-indicator{color:var(--color-text-primary);font-size:.92rem;font-weight:600}.payroll-approval-page__workflow-pill{display:inline-flex;align-items:center;min-height:28px;padding:.2rem .7rem;border-radius:999px;font-size:.76rem;font-weight:800;letter-spacing:.04em}.payroll-approval-page__workflow-pill--current{background:#15803d1f;color:#166534}.payroll-approval-page__workflow-pill--warning{background:#b453091f;color:#92400e}.payroll-approval-page__workflow-note,.payroll-approval-page__workflow-feedback{margin:0;color:var(--color-text-secondary);font-size:.88rem;line-height:1.35}.payroll-approval-page__workflow-feedback{font-weight:600}.payroll-approval-page__workflow-feedback--error{color:var(--color-brand-red)}.payroll-approval-page__workflow-actions{display:flex;justify-content:flex-end;align-items:center;flex:0 0 auto}.payroll-approval-page__workflow-button.secondary-button{min-width:220px;min-height:48px;padding:.75rem 1rem;border-radius:14px;font-weight:800}.payroll-approval-page__export-layout{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.payroll-approval-page__export-copy{flex:1 1 520px;min-width:0}.payroll-approval-page__export-description{max-width:54ch}.payroll-approval-page__export-actions{display:flex;justify-content:flex-end;align-items:center;flex:0 0 auto}.payroll-approval-page__export-button.primary-button{display:inline-flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:.18rem;min-width:300px;min-height:72px;padding:.9rem 1.2rem;border-radius:16px;background:linear-gradient(180deg,#16a34a,#15803d);box-shadow:0 14px 28px #15803d38;text-align:left}.payroll-approval-page__export-button.primary-button:hover{background:linear-gradient(180deg,#22c55e,#15803d);transform:translateY(-1px)}.payroll-approval-page__export-button.primary-button:disabled{box-shadow:none;transform:none}.payroll-approval-page__export-button-label{font-size:1rem;font-weight:800;line-height:1.2}.payroll-approval-page__export-button-caption{font-size:.76rem;font-weight:600;line-height:1.25;color:#ffffffd1}.payroll-approval-page__detail-card{margin-top:1rem}.payroll-approval-page__queue-section+.payroll-approval-page__queue-section{margin-top:1rem}.payroll-approval-page__queue-section--flagged{border:1px solid rgba(179,38,46,.14);background:linear-gradient(180deg,#fffafafa,#fffffffa)}.payroll-approval-page__queue-subsection+.payroll-approval-page__queue-subsection{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid rgba(148,163,184,.18)}.payroll-approval-page__queue-subsection--flagged{margin-top:1.35rem}.payroll-approval-page__queue-subsection-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.95rem}.payroll-approval-page__queue-subsection-copy{display:flex;flex-direction:column;gap:.3rem}.payroll-approval-page__queue-subsection-title{margin:0;font-size:1.08rem;color:var(--color-text-primary)}.payroll-approval-page__queue-subsection-description{margin:0;color:var(--color-text-secondary)}.payroll-approval-page__queue-subsection-count{display:inline-flex;align-items:center;min-height:34px;padding:.35rem .8rem;border:1px solid rgba(148,163,184,.2);border-radius:999px;background:#ffffffd6;color:var(--color-text-primary);font-size:.82rem;font-weight:700;white-space:nowrap}.payroll-approval-page__queue-subsection-count--flagged{border-color:#b3262e2e;background:#fef2f2f0;color:var(--color-brand-red)}.payroll-approval-page__detail-card--loading{position:relative;opacity:.68;pointer-events:none}.payroll-approval-page__section-header{margin-bottom:1rem}.payroll-approval-page__section-header--row{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.payroll-approval-page__section-title{margin:0 0 .4rem;font-size:1.35rem;font-weight:700;color:var(--color-text-primary)}.payroll-approval-page__section-description{margin:0;color:var(--color-text-secondary)}.payroll-approval-page__week-bar--detail{margin-bottom:1rem}.payroll-approval-page__detail-label{font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted)}.payroll-approval-page__field-grid{display:grid;grid-template-columns:1fr 1fr;gap:.9rem;margin-top:1rem}.payroll-approval-page__field-grid--lookup{grid-template-columns:1.2fr auto}.payroll-approval-page__field-grid--lookup-name{grid-template-columns:1fr 1fr auto}.payroll-approval-page__field{display:flex;flex-direction:column;gap:.35rem}.payroll-approval-page__field label{font-weight:600;color:var(--color-text-secondary)}.payroll-approval-page__field input,.payroll-approval-page__field select,.payroll-approval-page__field textarea{width:100%;min-height:48px;padding:.8rem .95rem;border:1px solid rgba(100,116,139,.28);border-radius:14px;background:linear-gradient(180deg,var(--color-bg-input) 0%,var(--color-bg-input-soft) 100%);color:var(--color-text-primary);box-shadow:inset 0 1px 1px #ffffff14;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}.payroll-approval-page__field textarea{min-height:112px;resize:vertical}.payroll-approval-page__field input::placeholder,.payroll-approval-page__field textarea::placeholder{color:#94a3b8}.payroll-approval-page__field input:focus,.payroll-approval-page__field select:focus,.payroll-approval-page__field textarea:focus,.payroll-approval-page__queue-meta-select:focus{outline:none;border-color:#b3262e73;box-shadow:0 0 0 4px var(--color-focus-ring);background:var(--color-bg-input-focus)}.payroll-approval-page__field--button{justify-content:end}.payroll-approval-page__lookup-mode-row,.payroll-approval-page__entry-mode-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-top:1rem}.payroll-approval-page__filter-shell{margin-bottom:1rem;display:flex;flex-direction:column;gap:.65rem;padding:.85rem 1rem;border:1px solid rgba(148,163,184,.22);border-radius:14px;background:var(--color-bg-surface-elevated);width:100%}.payroll-approval-page__filter-panel{display:flex;flex-direction:column;gap:.75rem}.payroll-approval-page__filter-panel--employee{gap:1rem}.payroll-approval-page__active-filter-summary{padding:.85rem 1rem;border:1px solid rgba(179,38,46,.16);border-radius:var(--radius-md);background:var(--color-bg-surface-floating);color:var(--color-text-secondary)}.payroll-approval-page__filter-actions{display:flex;justify-content:flex-end}.payroll-approval-page__lookup-results{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.payroll-approval-page__lookup-result{display:flex;justify-content:space-between;align-items:center;width:100%;padding:.85rem 1rem;border:1px solid var(--color-brand-red);border-radius:var(--radius-md);background:var(--color-bg-surface-floating);color:var(--color-text-primary);cursor:pointer}.payroll-approval-page__lookup-result:hover{background:#b3262e0f}.payroll-approval-page__lookup-result--selected{background:var(--color-brand-red);color:#fff}.payroll-approval-page__status{margin:.85rem 0 0;padding:.9rem 1rem;border-radius:14px;border:1px solid rgba(148,163,184,.18);background:#ffffffd1;font-weight:600}.payroll-approval-page__status--info{color:var(--color-text-secondary)}.payroll-approval-page__status--error{border-color:#b3262e38;background:#fef2f2e6;color:var(--color-brand-red)}.payroll-approval-page__queue-actions,.payroll-approval-page__queue-footer-actions,.payroll-approval-page__detail-actions,.payroll-approval-page__modal-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:flex-end}.payroll-approval-page__queue-footer{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(148,163,184,.22)}.payroll-approval-page__queue-footer-actions{margin-top:0;padding-top:0;border-top:none;justify-content:flex-end}.payroll-approval-page__detail-actions{flex-wrap:nowrap;align-items:center;margin-top:1rem}.payroll-approval-page__detail-actions .payroll-approval-page__compact-button{white-space:nowrap}.payroll-approval-page__compact-button.primary-button,.payroll-approval-page__compact-button.secondary-button{min-height:44px;padding:.6rem 1rem;border-radius:12px;font-size:.92rem;font-weight:700;box-shadow:none}.payroll-approval-page__utility-button.primary-button,.payroll-approval-page__utility-button.secondary-button{border:1px solid var(--color-secondary-button-border);background:var(--color-secondary-button-bg);color:var(--color-secondary-button-text)}.payroll-approval-page__utility-button.primary-button:hover,.payroll-approval-page__utility-button.secondary-button:hover{background:var(--color-secondary-button-hover);color:var(--color-text-primary)}.payroll-approval-page__utility-button.primary-button:disabled,.payroll-approval-page__utility-button.secondary-button:disabled{background:var(--color-bg-surface-soft);color:var(--color-text-muted)}.payroll-approval-page__approve-button.primary-button{background:#16a34a;color:#fff}.payroll-approval-page__approve-button.primary-button:hover{background:#15803d}.payroll-approval-page__danger-button.secondary-button{border:1px solid rgba(179,38,46,.22);background:#b3262e1a;color:var(--color-brand-red)}.payroll-approval-page__danger-button.secondary-button:hover{background:#b3262e29;color:var(--color-brand-red)}.payroll-approval-page__queue-meta{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.95fr);gap:.75rem;align-items:start;margin-bottom:.5rem}.payroll-approval-page__queue-meta-filter-group{display:grid;grid-template-columns:minmax(0,1fr) minmax(132px,.36fr);gap:0;align-items:stretch}.payroll-approval-page__queue-meta-item{display:flex;flex-direction:column;gap:.2rem;padding:.75rem .9rem;border:1px solid rgba(148,163,184,.2);border-radius:14px;background:var(--color-card-glass)}.payroll-approval-page__queue-meta-item--filter{gap:.45rem;border-top-right-radius:0;border-bottom-right-radius:0;background:linear-gradient(180deg,var(--color-bg-surface-floating-soft) 0%,var(--color-bg-surface-elevated) 100%)}.payroll-approval-page__queue-meta-filter-actions{display:flex;align-items:stretch}.payroll-approval-page__queue-meta-filter-actions--split{flex-direction:column;gap:.45rem}.payroll-approval-page__queue-meta-filter-actions .payroll-approval-page__meta-action-button--attached{flex:1 1 0;min-height:100%;border:1px solid rgba(100,116,139,.32);border-left:none;border-radius:0;box-shadow:inset 0 1px #ffffff14,0 3px 8px #0f172a0f;background:linear-gradient(180deg,var(--color-bg-surface-floating) 0%,var(--color-bg-input-soft) 100%);color:var(--color-text-primary)}.payroll-approval-page__queue-meta-filter-actions--split .payroll-approval-page__meta-action-button--attached{min-height:34px;border-left:1px solid rgba(100,116,139,.32);border-radius:12px}.payroll-approval-page__queue-meta-filter-actions .payroll-approval-page__meta-action-button--attached:first-child{border-top-right-radius:14px;border-bottom-right-radius:14px}.payroll-approval-page__queue-meta-filter-actions .payroll-approval-page__meta-action-button--attached:not(:first-child){border-left:1px solid rgba(100,116,139,.3)}.payroll-approval-page__queue-meta-filter-actions .payroll-approval-page__meta-action-button--attached:last-child{border-top-right-radius:14px;border-bottom-right-radius:14px}.payroll-approval-page__queue-meta-filter-actions .payroll-approval-page__meta-action-button--attached:hover{background:linear-gradient(180deg,var(--color-secondary-button-bg) 0%,var(--color-secondary-button-hover) 100%);border-color:var(--color-secondary-button-border);box-shadow:inset 0 1px #ffffff14,0 4px 10px #0f172a14}.payroll-approval-page__queue-meta-filter-actions .payroll-approval-page__meta-action-button--standalone{min-height:34px;justify-content:center}.payroll-approval-page__queue-meta-filter-actions .payroll-approval-page__meta-action-button--standalone.secondary-button{border-style:dashed}.payroll-approval-page__queue-meta-item--week{justify-content:center;min-height:100%;padding:.95rem 1.15rem;background:linear-gradient(180deg,var(--color-bg-surface-floating-soft) 0%,var(--color-bg-surface-elevated) 100%)}.payroll-approval-page__queue-meta-item--week strong{font-size:1.18rem;line-height:1.25}.payroll-approval-page__queue-meta-item strong{font-size:1rem;color:var(--color-text-primary)}.payroll-approval-page__queue-meta-select{width:100%;min-height:40px;padding:.55rem .75rem;border:1px solid rgba(100,116,139,.28);border-radius:12px;background:var(--color-bg-input);color:var(--color-text-primary);font-size:.98rem;font-weight:600}.payroll-approval-page__queue-meta-actions{display:flex;flex-wrap:wrap;gap:.45rem}.payroll-approval-page__meta-action-button.primary-button,.payroll-approval-page__meta-action-button.secondary-button{min-height:34px;padding:.4rem .75rem;font-size:.82rem}.payroll-approval-page__queue-meta-label{font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.payroll-approval-page__queue-submeta{display:grid;grid-template-columns:1fr;gap:.85rem;align-items:start;margin-bottom:1rem;color:var(--color-text-secondary);font-size:.9rem}.payroll-approval-page__queue-submeta-item{display:flex;flex-direction:column;gap:.45rem;min-width:0}.payroll-approval-page__queue-submeta-label{font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted)}.payroll-approval-page__queue-submeta strong{color:var(--color-text-primary)}.payroll-approval-page__applied-filters{display:flex;flex-wrap:wrap;gap:.65rem;align-items:stretch}.payroll-approval-page__applied-filter-card{display:flex;align-items:center;gap:.8rem;min-width:0;padding:.65rem .75rem;border:1px solid rgba(148,163,184,.24);border-radius:14px;background:linear-gradient(180deg,var(--color-bg-surface-floating-soft) 0%,var(--color-bg-surface-elevated) 100%);box-shadow:0 4px 14px #0f172a0d}.payroll-approval-page__applied-filter-copy{display:flex;flex-direction:column;gap:.12rem;min-width:0}.payroll-approval-page__applied-filter-label{font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.payroll-approval-page__applied-filter-value{min-width:0;color:var(--color-text-primary);font-size:.9rem;line-height:1.2;overflow-wrap:anywhere}.payroll-approval-page__applied-filter-actions{display:flex;align-items:center;gap:.4rem}.payroll-approval-page__applied-filter-edit,.payroll-approval-page__applied-filter-remove{display:inline-flex;align-items:center;justify-content:center;min-height:30px;border-radius:999px;font-size:.76rem;font-weight:700;transition:background-color .18s ease,border-color .18s ease,color .18s ease}.payroll-approval-page__applied-filter-edit{padding:0 .7rem;border:1px solid var(--color-secondary-button-border);background:var(--color-secondary-button-bg);color:var(--color-secondary-button-text)}.payroll-approval-page__applied-filter-edit:hover{background:var(--color-secondary-button-hover);color:var(--color-text-primary)}.payroll-approval-page__applied-filter-remove{width:30px;padding:0;border:1px solid rgba(179,38,46,.18);background:#b3262e14;color:var(--color-brand-red)}.payroll-approval-page__applied-filter-remove:hover{background:#b3262e24}.payroll-approval-page__applied-filter-empty{padding:.8rem .95rem;border:1px dashed rgba(148,163,184,.4);border-radius:14px;background:var(--color-bg-surface-elevated);color:var(--color-text-secondary)}.payroll-approval-page__add-filter-button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:.65rem 1rem;border:1px dashed rgba(100,116,139,.4);border-radius:14px;background:var(--color-bg-surface-elevated);color:var(--color-text-primary);font-size:.9rem;font-weight:700;transition:background-color .18s ease,border-color .18s ease,transform .18s ease}.payroll-approval-page__add-filter-button:hover{background:var(--color-bg-surface-floating);border-color:var(--color-secondary-button-border);transform:translateY(-1px)}.payroll-approval-page__week-bar--queue{margin-bottom:1rem}.payroll-approval-page__queue-list{display:flex;flex-direction:column;gap:.9rem}.payroll-approval-page__empty-state{display:flex;align-items:center;gap:.85rem;padding:1rem 1.05rem;border:1px dashed rgba(148,163,184,.35);border-radius:16px;background:#fffc;color:var(--color-text-secondary)}.payroll-approval-page__empty-state strong{display:block;margin-bottom:.15rem;color:var(--color-text-primary)}.payroll-approval-page__empty-state p{margin:0}.payroll-approval-page__empty-state--calm{background:#f8fafceb}.payroll-approval-page__empty-state--success{border-color:#15803d2e;background:#f0fdf4eb}.payroll-approval-page__empty-state--flagged{border-color:#b3262e2e;background:#fef2f2e6}.payroll-approval-page__queue-results-summary{display:inline-flex;justify-content:flex-end;align-items:baseline;gap:.75rem;color:var(--color-text-secondary);white-space:nowrap}.payroll-approval-page__queue-results-summary strong{color:var(--color-text-primary);font-size:1rem}.payroll-approval-page__detail-modal.modal-card{width:min(1560px,calc(100vw - 3rem));max-width:none;max-height:calc(100vh - 3rem);overflow:auto}.payroll-approval-page__loading-modal.modal-card{width:min(460px,calc(100vw - 3rem));padding:1.2rem 1.35rem}.payroll-approval-page__detail-modal-topbar{position:relative;display:flex;justify-content:center;align-items:center;gap:1rem;margin-bottom:1rem;padding:0 3rem .25rem}.payroll-approval-page__detail-modal-heading{width:100%;max-width:960px;margin:0 auto;text-align:center}.payroll-approval-page__detail-close-button{position:absolute;top:-.35rem;right:-.35rem;display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:1px solid rgba(179,38,46,.28);border-radius:999px;background:#b3262e24;color:var(--color-brand-red);font-size:.9rem;font-weight:800;line-height:1;box-shadow:0 6px 16px #0f172a14;transition:background-color .18s ease,border-color .18s ease,transform .18s ease}.payroll-approval-page__detail-close-button:hover{background:#b3262e33;border-color:#b3262e5c;transform:translateY(-1px)}.payroll-approval-page__queue-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:linear-gradient(180deg,#fffffff5,#f8fafcf0);box-shadow:0 8px 18px #0f172a0a;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.payroll-approval-page__queue-row:hover{border-color:#94a3b84d;box-shadow:0 12px 24px #0f172a12;transform:translateY(-1px)}.payroll-approval-page__queue-row--active{border-color:#b3262e73;box-shadow:0 0 0 1px #b3262e1f,0 12px 24px #b3262e14}.payroll-approval-page__queue-row--flagged{border-color:#b3262e2e;background:linear-gradient(180deg,#fffafafa,#fffffff5)}.payroll-approval-page__queue-row-main{display:flex;align-items:flex-start;gap:.9rem;flex:1}.payroll-approval-page__queue-checkbox{display:inline-flex;align-items:center;padding-top:.2rem}.payroll-approval-page__queue-copy{flex:1;padding-right:1.25rem}.payroll-approval-page__queue-heading{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin-bottom:.5rem}.payroll-approval-page__queue-heading-main{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:.5rem}.payroll-approval-page__queue-heading h3{margin:0;font-size:1.05rem}.payroll-approval-page__queue-employee-number{font-size:.92rem;font-weight:700;color:var(--color-text-secondary)}.payroll-approval-page__queue-signals{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:.7rem}.payroll-approval-page__queue-signal{display:inline-flex;align-items:center;min-height:28px;padding:.2rem .65rem;border:1px solid rgba(148,163,184,.18);border-radius:999px;background:#ffffffd9;color:var(--color-text-primary);font-size:.78rem;font-weight:700;line-height:1.2}.payroll-approval-page__queue-signal--muted{color:var(--color-text-secondary);font-weight:600}.payroll-approval-page__queue-signal--warning{border-color:#b453092e;background:#fff7edf2;color:#92400e}.payroll-approval-page__queue-signal--blocking{border-color:#b3262e2e;background:#fef2f2f2;color:var(--color-brand-red)}.payroll-approval-page__queue-facts-table{display:grid;grid-template-columns:repeat(6,minmax(110px,1fr));gap:.6rem 1rem}.payroll-approval-page__queue-fact-column{display:flex;flex-direction:column;gap:.15rem;min-width:0}.payroll-approval-page__queue-fact-heading{font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted)}.payroll-approval-page__queue-fact-value{min-width:0;font-size:.86rem;line-height:1.25;color:var(--color-text-primary);overflow-wrap:anywhere}.payroll-approval-page__queue-fact-value--flags{display:flex;flex-direction:column;gap:.35rem;overflow-wrap:normal}.payroll-approval-page__flag-bubbles{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.payroll-approval-page__flag-bubble{display:inline-flex;align-items:center;justify-content:center;width:1.9rem;height:1.9rem;border-radius:999px;font-size:.95rem;line-height:1;cursor:help;box-shadow:inset 0 1px #ffffff73}.payroll-approval-page__flag-bubble--warning{border:1px solid rgba(180,83,9,.24);background:#fff7edf5;color:#b45309}.payroll-approval-page__flag-bubble--critical{border:1px solid rgba(179,38,46,.24);background:#fef2f2f5;color:var(--color-brand-red)}.payroll-approval-page__flag-count{font-size:.76rem;line-height:1.3;color:var(--color-text-secondary)}.payroll-approval-page__detail-lower{display:flex;justify-content:flex-start;flex:1 1 auto;min-width:0}.payroll-approval-page__detail-footer{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;margin-top:1rem}.payroll-approval-page__detail-flag-panel{width:min(420px,100%);display:flex;flex-direction:column;gap:.55rem}.payroll-approval-page__detail-flag-list{display:grid;grid-template-columns:1fr;gap:.5rem}.payroll-approval-page__detail-flag-card{display:flex;flex-direction:column;gap:.35rem;padding:.65rem .75rem;border-radius:14px;border:1px solid rgba(148,163,184,.18);background:#fffffff0}.payroll-approval-page__detail-flag-card--warning{border-color:#b4530929;background:#fff7edf0}.payroll-approval-page__detail-flag-card--critical{border-color:#b3262e2e;background:#fef2f2f0}.payroll-approval-page__detail-flag-card-top{display:flex;align-items:flex-start;gap:.5rem}.payroll-approval-page__detail-flag-copy{display:flex;flex-direction:column;gap:.15rem;min-width:0}.payroll-approval-page__detail-flag-copy strong{color:var(--color-text-primary);font-size:.84rem}.payroll-approval-page__detail-flag-copy span,.payroll-approval-page__detail-flag-card p,.payroll-approval-page__detail-flag-empty{margin:0;color:var(--color-text-secondary);font-size:.74rem;line-height:1.25}.payroll-approval-page__detail-flag-empty{padding:.7rem .8rem;border:1px dashed rgba(148,163,184,.32);border-radius:14px;background:#f8fafcdb}.payroll-approval-page__queue-row-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.payroll-approval-page__queue-row-action-button.primary-button,.payroll-approval-page__queue-row-action-button.secondary-button{min-height:38px;padding:.45rem .8rem;font-size:.84rem}.payroll-approval-page__pill,.payroll-approval-page__source-badge{display:inline-flex;align-items:center;justify-content:center;padding:.3rem .6rem;border-radius:999px;font-size:.75rem;font-weight:700;letter-spacing:.04em}.payroll-approval-page__pill--submitted{background:#b453091f;color:#92400e}.payroll-approval-page__pill--approved{background:#15803d1f;color:#166534}.payroll-approval-page__pill--rejected{background:#b3262e1f;color:var(--color-brand-red)}.payroll-approval-page__pill--draft{background:#4755691f;color:#334155}.payroll-approval-page__pill--blocked{background:#b3262e1f;color:var(--color-brand-red)}.payroll-approval-page__detail-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;margin-bottom:1rem}.payroll-approval-page__detail-summary>div{display:flex;flex-direction:column;gap:.25rem;padding:.9rem 1rem;border:1px solid rgba(148,163,184,.18);border-radius:16px;background:linear-gradient(180deg,#fffffffa,#f8fafcf0);box-shadow:0 8px 18px #0f172a0a}.payroll-approval-page__days-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.85rem;margin-top:1rem}.payroll-approval-page__days-grid--time-range{grid-template-columns:repeat(7,minmax(0,1fr));gap:.32rem}.payroll-approval-page__day-card{padding:.85rem;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-surface-soft);display:flex;flex-direction:column;gap:.65rem;min-width:0}.payroll-approval-page__day-card--locked{background:#f3f4f6;border-color:#d1d5db}.payroll-approval-page__day-card--locked input{background:#e5e7eb;color:#6b7280;border-color:#d1d5db}.payroll-approval-page__day-card--locked label,.payroll-approval-page__day-card--locked .payroll-approval-page__time-block-label{color:#6b7280}.payroll-approval-page__day-header{display:flex;flex-direction:column;align-items:stretch;gap:.35rem}.payroll-approval-page__day-header>div{min-width:0}.payroll-approval-page__source-badge{width:100%;min-height:24px}.payroll-approval-page__day-short{display:block;font-size:.95rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-brand-red)}.payroll-approval-page__day-date,.payroll-approval-page__day-label{color:var(--color-text-secondary);font-size:.92rem}.payroll-approval-page__source-badge--final,.payroll-approval-page__source-badge--approved{background:#15803d1f;color:#166534}.payroll-approval-page__source-badge--submitted,.payroll-approval-page__source-badge--staging{background:#b453091f;color:#92400e}.payroll-approval-page__source-badge--default{background:#4755691a;color:#334155}.payroll-approval-page__source-badge--badge{background:#1e40af1f;color:#1d4ed8}.payroll-approval-page__time-grid{display:grid;grid-template-columns:1fr;gap:.5rem}.payroll-approval-page__time-block{display:flex;flex-direction:column;gap:.35rem;padding:.45rem;min-width:0;border:1px solid rgba(179,38,46,.14);border-radius:12px;background:#ffffffc7;overflow:hidden}.payroll-approval-page__time-block-label{font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.payroll-approval-page__lunch-toggle{display:grid;grid-auto-flow:column;align-items:center;justify-content:center;column-gap:.75rem;padding-right:1rem;align-self:stretch;width:100%;max-width:100%;min-width:0;margin:0 auto;padding:.05rem .42rem .05rem .5rem;box-sizing:border-box;font-size:.78rem;font-weight:700;color:var(--color-text-secondary);line-height:1.12;text-align:center}.payroll-approval-page__lunch-toggle span{min-width:0;max-width:100%;white-space:nowrap;word-break:normal;overflow-wrap:normal}.payroll-approval-page__lunch-toggle input{width:1.5rem;height:1.5rem;min-width:0;margin:0;flex:0 0 auto;align-self:center;transform:scale(1.6);transform-origin:center}.payroll-approval-page__lunch-toggle input[type=checkbox]:focus,.payroll-approval-page__lunch-toggle input[type=checkbox]:focus-visible,.payroll-approval-page__lunch-toggle input[type=checkbox]:active{outline:none!important;outline-offset:0!important;box-shadow:none!important;border-color:transparent!important;background-image:none!important}.payroll-approval-page__time-grid .payroll-approval-page__field{gap:.25rem;align-items:flex-start}.payroll-approval-page__time-grid .payroll-approval-page__field input{min-height:36px;padding:.35rem;font-size:.7rem;line-height:1.1;letter-spacing:-.02em;font-variant-numeric:tabular-nums;min-width:0;width:100%;max-width:100%;box-sizing:border-box;align-self:flex-start;overflow:hidden;text-overflow:clip}.payroll-approval-page__time-grid .payroll-approval-page__field input[type=time]::-webkit-datetime-edit{padding:0;min-width:0}.payroll-approval-page__time-grid .payroll-approval-page__field input[type=time]::-webkit-datetime-edit-fields-wrapper{padding:0}.payroll-approval-page__time-grid .payroll-approval-page__field input[type=time]::-webkit-calendar-picker-indicator{margin:0;padding:0}.payroll-approval-page__time-grid .payroll-approval-page__field label{font-size:.72rem;font-weight:700;line-height:1.1}.payroll-approval-page__segment-button.primary-button,.payroll-approval-page__segment-button.secondary-button{align-self:flex-start}.payroll-approval-page__day-card{padding:.85rem}.payroll-approval-page__days-grid--time-range .payroll-approval-page__day-card{padding:.6rem;gap:.45rem}.payroll-approval-page__days-grid--time-range .payroll-approval-page__day-short{font-size:.84rem}.payroll-approval-page__days-grid--time-range .payroll-approval-page__day-date,.payroll-approval-page__days-grid--time-range .payroll-approval-page__day-label{font-size:.8rem}.payroll-approval-page__days-grid--time-range .payroll-approval-page__field input[type=text]{min-height:36px;padding:.45rem .5rem;font-size:.78rem}.payroll-approval-page__detail-loading{display:inline-flex;align-items:center;gap:.65rem;margin-top:1rem;padding:.75rem .95rem;border:1px solid rgba(148,163,184,.25);border-radius:var(--radius-md);background:#ffffffe6;color:var(--color-text-secondary)}.payroll-approval-page__detail-loading--modal{display:flex;margin-top:0}.payroll-approval-page__loading-spinner{width:.95rem;height:.95rem;border:2px solid rgba(148,163,184,.35);border-top-color:var(--color-brand-red);border-radius:999px;animation:payroll-approval-spin .8s linear infinite}.payroll-approval-page__empty-detail{padding:2rem 1rem;border:1px dashed var(--color-border);border-radius:var(--radius-lg);background:#ffffffa6;color:var(--color-text-secondary);text-align:center}.payroll-approval-page__modal-card{width:100%;max-width:520px}.payroll-approval-page__modal-eyebrow{margin:0 0 .5rem;font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--color-brand-red)}.payroll-approval-page__modal-title{margin:0 0 .5rem;color:var(--color-text-primary)}.payroll-approval-page__modal-copy{margin:0 0 1rem;color:var(--color-text-secondary)}@keyframes payroll-approval-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:1200px){.payroll-approval-page__overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.payroll-approval-page__days-grid,.payroll-approval-page__days-grid--time-range{grid-template-columns:repeat(4,minmax(0,1fr))}.payroll-approval-page__detail-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.payroll-approval-page__section-header--row,.payroll-approval-page__queue-subsection-header,.payroll-approval-page__queue-row,.payroll-approval-page__queue-row-main{flex-direction:column}.payroll-approval-page__field-grid,.payroll-approval-page__field-grid--lookup,.payroll-approval-page__field-grid--lookup-name,.payroll-approval-page__entry-mode-row,.payroll-approval-page__lookup-mode-row{grid-template-columns:1fr}.payroll-approval-page__queue-actions,.payroll-approval-page__queue-footer,.payroll-approval-page__queue-footer-actions,.payroll-approval-page__detail-actions,.payroll-approval-page__modal-actions{justify-content:stretch}.payroll-approval-page__detail-modal-topbar{padding-inline:.75rem 2.25rem}.payroll-approval-page__detail-actions{flex-wrap:wrap}.payroll-approval-page__queue-meta{grid-template-columns:1fr}.payroll-approval-page__queue-meta-filter-group{grid-template-columns:1fr;gap:.5rem}.payroll-approval-page__queue-meta-item--filter{border-radius:14px}.payroll-approval-page__queue-meta-filter-actions{gap:.45rem}.payroll-approval-page__queue-meta-filter-actions .payroll-approval-page__meta-action-button--attached{border-left:1px solid rgba(100,116,139,.3);border-radius:12px;min-height:34px}.payroll-approval-page__queue-meta-filter-actions .payroll-approval-page__meta-action-button--standalone{min-height:34px}.payroll-approval-page__queue-submeta{grid-template-columns:1fr;gap:.35rem}.payroll-approval-page__queue-subsection-count{white-space:normal}.payroll-approval-page__detail-footer{flex-direction:column;align-items:stretch}.payroll-approval-page__export-layout{flex-direction:column;align-items:stretch;gap:1rem}.payroll-approval-page__workflow-layout{flex-direction:column;align-items:stretch}.payroll-approval-page__export-actions,.payroll-approval-page__workflow-actions{justify-content:stretch}.payroll-approval-page__workflow-button.secondary-button,.payroll-approval-page__export-button.primary-button{width:100%;min-width:0}.payroll-approval-page__queue-facts-table,.payroll-approval-page__days-grid,.payroll-approval-page__days-grid--time-range{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.payroll-approval-page__overview-grid{grid-template-columns:1fr}.payroll-approval-page__applied-filter-card{width:100%;justify-content:space-between}.payroll-approval-page__detail-modal.modal-card{width:min(100vw - 1.5rem,1560px);max-height:calc(100vh - 1.5rem);padding:1.4rem}.payroll-approval-page__detail-close-button{top:-.15rem;right:-.15rem}.payroll-approval-page__queue-footer{flex-direction:column;align-items:flex-start;gap:.6rem}.payroll-approval-page__queue-results-summary{justify-content:flex-start}.payroll-approval-page__hero-card{padding:1.4rem}.payroll-approval-page__title{font-size:1.95rem}.payroll-approval-page__days-grid,.payroll-approval-page__detail-summary,.payroll-approval-page__time-grid,.payroll-approval-page__queue-facts-table,.payroll-approval-page__days-grid--time-range{grid-template-columns:1fr}.payroll-approval-page__detail-flag-panel{width:100%}}.entry-page{min-height:100vh;background:radial-gradient(circle at top left,rgba(179,38,46,.14),transparent 28%),radial-gradient(circle at bottom right,rgba(82,71,65,.16),transparent 34%),linear-gradient(135deg,#f1ece9,#e6dfda 46%,#d8d0cb)}.entry-page__hero{width:100%;min-height:100vh;margin:0 auto;padding:1.5rem;display:flex;align-items:center;justify-content:center}.entry-page__hero-panel{width:min(720px,100%);padding:2rem;border:1px solid rgba(95,90,88,.14);border-radius:32px;background:#fffbf9d6;box-shadow:0 30px 80px #4638341f;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;flex-direction:column;gap:1.25rem}.entry-page__brand-row{display:flex;flex-direction:column;gap:1.25rem;align-items:center;text-align:center}.entry-page__logo{width:min(190px,40vw);height:auto;filter:drop-shadow(0 20px 30px rgba(60,60,60,.14))}.entry-page__brand-copy{display:flex;flex-direction:column;gap:.85rem;align-items:center}.entry-page__eyebrow,.entry-page__dev-title{font-size:.82rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#7f3b30}.entry-page__title{font-size:clamp(2.4rem,4.6vw,4rem);line-height:.94;letter-spacing:-.05em;color:#2d2523}.entry-page__subtitle,.entry-page__dev-copy,.entry-page__message{font-size:1.02rem;line-height:1.7;color:#564f4c}.entry-page__actions{display:flex;flex-wrap:wrap;gap:.85rem;justify-content:center}.entry-page__primary-action,.entry-page__secondary-action{display:inline-flex;align-items:center;justify-content:center;min-height:58px;padding:0 1.4rem;border-radius:18px;font-weight:700;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,color .18s ease}.entry-page__primary-action{background:linear-gradient(135deg,#b3262e,#8f1f25);color:#fff;box-shadow:0 18px 36px #b3262e42}.entry-page__secondary-action,.entry-page__inline-button{border:1px solid rgba(143,31,37,.24);background:#fffc;color:#7b181e}.entry-page__primary-action:hover,.entry-page__secondary-action:hover,.entry-page__inline-button:hover{transform:translateY(-1px)}.entry-page__message,.entry-page__dev-toolkit{padding:1.1rem 1.2rem;border:1px solid rgba(95,90,88,.14);border-radius:20px;background:#ffffffbd}.entry-page__message-title{color:#2f2a28;font-weight:700}.entry-page__message{display:flex;flex-direction:column;gap:.6rem}.entry-page__message--error{background:#fff1f2e0;border-color:#b3262e33}.entry-page__inline-button{align-self:flex-start;min-height:44px;padding:0 1rem;border-radius:14px;font-weight:700}.entry-page__dev-toolkit{text-align:left}.entry-page__dev-title{margin-bottom:.45rem}@media(max-width:980px){.entry-page__hero{padding:1rem}.entry-page__hero-panel{padding:1.4rem}.entry-page__logo{width:min(210px,52vw)}}@media(max-width:620px){.entry-page__actions{display:grid;grid-template-columns:1fr}.entry-page__primary-action,.entry-page__secondary-action{width:100%}}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0;padding:0}body{background-color:var(--color-bg-page);color:var(--color-text-primary);font-family:var(--font-family-base);font-size:var(--font-size-body);line-height:1.5;transition:background-color .24s ease,color .24s ease}img{display:block;max-width:100%}button,input,select,textarea{font:inherit;transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease}::selection{background-color:var(--color-brand-red-soft);color:var(--color-text-primary)}button{border:none;background:none;cursor:pointer}h1,h2,h3,h4,p{margin:0}a{color:inherit;text-decoration:none}:root,:root[data-theme=light]{--color-brand-red: #b3262e;--color-brand-red-dark: #8f1f25;--color-brand-red-soft: #f3d8da;--color-bg-page: #e9e5e3;--color-bg-surface: #ffffff;--color-bg-surface-soft: #f7f4f3;--color-bg-surface-elevated: rgba(255, 255, 255, .92);--color-bg-surface-floating: #ffffff;--color-bg-surface-floating-soft: rgba(255, 255, 255, .96);--color-bg-input: #ffffff;--color-bg-input-soft: #f8fafc;--color-bg-input-focus: #ffffff;--color-bg-overlay: rgba(35, 35, 35, .34);--color-card-glass: rgba(255, 255, 255, .82);--color-card-tint: rgba(255, 255, 255, .74);--color-disabled-surface: #f3f4f6;--color-disabled-surface-strong: #e5e7eb;--color-text-primary: #2f2f2f;--color-text-secondary: #5f5a58;--color-text-muted: #8a8280;--color-border: #d8d1ce;--color-border-strong: #c8bfbc;--color-success: #2e8b57;--color-success-soft: #dceee3;--color-error: #b3262e;--color-error-soft: #f6d9db;--color-focus-ring: rgba(179, 38, 46, .12);--color-focus-outline: rgba(179, 38, 46, .22);--shadow-soft: 0 14px 32px rgba(60, 60, 60, .08);--shadow-medium: 0 18px 40px rgba(60, 60, 60, .12);--shadow-brand: 0 16px 34px rgba(179, 38, 46, .22);--color-secondary-button-bg: #ffffff;--color-secondary-button-hover: var(--color-brand-red-soft);--color-secondary-button-text: var(--color-brand-red);--color-secondary-button-border: var(--color-brand-red);--radius-sm: 12px;--radius-md: 18px;--radius-lg: 24px;--radius-xl: 32px;--space-xs: .5rem;--space-sm: .75rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--page-max-width: 1400px;--content-max-width: 1200px;--font-family-base: "Inter", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-size-body: 16px;--font-size-sm: .95rem;--font-size-md: 1.1rem;--font-size-lg: 1.5rem;--font-size-xl: 2.25rem;--font-size-2xl: 3rem}:root[data-theme=dark]{--color-brand-red: #d56a72;--color-brand-red-dark: #f39aa0;--color-brand-red-soft: rgba(213, 106, 114, .16);--color-bg-page: #0f141b;--color-bg-surface: #161d27;--color-bg-surface-soft: #1b2430;--color-bg-surface-elevated: rgba(22, 29, 39, .94);--color-bg-surface-floating: #202a37;--color-bg-surface-floating-soft: rgba(32, 42, 55, .98);--color-bg-input: #121923;--color-bg-input-soft: #18212c;--color-bg-input-focus: #1b2430;--color-bg-overlay: rgba(3, 8, 16, .62);--color-card-glass: rgba(22, 29, 39, .86);--color-card-tint: rgba(27, 36, 48, .9);--color-disabled-surface: #24303e;--color-disabled-surface-strong: #2f3d4f;--color-text-primary: #e8eef5;--color-text-secondary: #b8c4d1;--color-text-muted: #8ea0b3;--color-border: #293544;--color-border-strong: #3a4a5c;--color-success: #63d08e;--color-success-soft: rgba(33, 94, 63, .34);--color-error: #f08a92;--color-error-soft: rgba(118, 37, 42, .34);--color-focus-ring: rgba(213, 106, 114, .18);--color-focus-outline: rgba(213, 106, 114, .28);--shadow-soft: 0 16px 34px rgba(0, 0, 0, .35);--shadow-medium: 0 24px 48px rgba(0, 0, 0, .44);--shadow-brand: 0 18px 38px rgba(213, 106, 114, .2);--color-secondary-button-bg: #18212c;--color-secondary-button-hover: #222d3a;--color-secondary-button-text: #f0a2a8;--color-secondary-button-border: rgba(213, 106, 114, .64)}.page-shell{min-height:100vh;width:100%;padding:2rem}.page-shell--centered{display:flex;align-items:center;justify-content:center}.page-container{width:100%;max-width:var(--page-max-width);margin:0 auto}.surface-card{background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft)}.surface-card--soft{background-color:var(--color-bg-surface-elevated)}.logo-panel{display:inline-flex;align-items:center;justify-content:center;min-height:92px;min-width:220px;padding:1rem 1.5rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg-surface-floating);box-shadow:var(--shadow-soft)}.page-title{font-size:clamp(2rem,4vw,var(--font-size-2xl));font-weight:700;letter-spacing:-.02em;color:var(--color-text-primary)}.page-subtitle{font-size:var(--font-size-md);color:var(--color-text-secondary)}.primary-button{display:inline-flex;align-items:center;justify-content:center;min-height:68px;padding:0 1.8rem;border-radius:var(--radius-md);background-color:var(--color-brand-red);color:#fff;font-size:1rem;font-weight:700;box-shadow:var(--shadow-brand);transition:transform .18s ease,background-color .18s ease,box-shadow .18s ease}.primary-button:hover{background-color:var(--color-brand-red-dark);transform:translateY(-2px)}.secondary-button{display:inline-flex;align-items:center;justify-content:center;min-height:68px;padding:0 2rem;border:2px solid var(--color-secondary-button-border);border-radius:var(--radius-md);background-color:var(--color-secondary-button-bg);color:var(--color-secondary-button-text);font-size:1.1rem;font-weight:700;box-shadow:var(--shadow-soft);transition:transform .18s ease,background-color .18s ease,color .18s ease}.secondary-button:hover{background-color:var(--color-secondary-button-hover);transform:translateY(-2px)}.workflow-week-bar{display:grid;grid-template-columns:auto 1fr auto;gap:0;align-items:stretch}.workflow-week-nav-button{min-height:58px;padding:0 1rem;margin:0;border:1px solid rgba(179,38,46,.5);border-radius:0;box-shadow:none;background:var(--color-brand-red);color:#fff;font-size:.95rem;font-weight:700;line-height:1;cursor:pointer;appearance:none}.workflow-week-nav-button:hover:not(:disabled){background-color:#7b181efa;color:#fff;border-color:#7b181efa;transform:none;appearance:none}.workflow-week-nav-button:disabled{opacity:.55;cursor:not-allowed;background-color:var(--color-brand-red);color:#fff}.workflow-week-nav-button--left{width:9rem;border-top-left-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md);border-right:none}.workflow-week-nav-button--right{width:9rem;border-top-right-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md);border-left:none}.workflow-week-display{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:58px;padding:.9rem 1.1rem;border:1px solid rgba(179,38,46,.5);background-color:var(--color-bg-input);text-align:center}.workflow-week-label{font-size:.82rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted)}.workflow-week-range{font-size:1rem;font-weight:700;color:var(--color-text-primary)}.overlay-backdrop{position:fixed;inset:0;background-color:var(--color-bg-overlay);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:1.5rem}.modal-card{width:min(560px,100%);padding:2rem;border-radius:var(--radius-lg);background-color:var(--color-bg-surface-floating);border:1px solid var(--color-border);box-shadow:var(--shadow-medium)}.status-text--success{color:var(--color-success)}.status-text--error{color:var(--color-error)}[data-theme=dark] .manual-hours-page__final-week-display,[data-theme=dark] .hr-hub-page__intro,[data-theme=dark] .hr-hub-page__modules-section,[data-theme=dark] .hr-hub-page__module-card,[data-theme=dark] .employee-review-page__table-shell,[data-theme=dark] .employee-review-page__table-scrollbar,[data-theme=dark] .employee-review-page__table-header-row th,[data-theme=dark] .employee-review-page__table-filter-row th,[data-theme=dark] .employee-review-page__column-filter,[data-theme=dark] .vacation-request-page__lookup-result,[data-theme=dark] .vacation-request-page__selected-employee-summary,[data-theme=dark] .vacation-request-page__balance-card,[data-theme=dark] .vacation-request-page__balance-item,[data-theme=dark] .vacation-request-page__modal-detail-card,[data-theme=dark] .payroll-approval-page__queue-meta-item,[data-theme=dark] .payroll-approval-page__queue-meta-item--filter,[data-theme=dark] .payroll-approval-page__queue-meta-item--week,[data-theme=dark] .payroll-approval-page__applied-filter-card,[data-theme=dark] .payroll-approval-page__applied-filter-empty,[data-theme=dark] .payroll-approval-page__add-filter-button,[data-theme=dark] .payroll-approval-page__lookup-result,[data-theme=dark] .payroll-approval-page__active-filter-summary,[data-theme=dark] .payroll-approval-page__filter-shell,[data-theme=dark] .manual-hours-page__lookup-result,[data-theme=dark] .manual-hours-page__time-block,[data-theme=dark] .manual-hours-page__modal-card,[data-theme=dark] .manual-hours-page__loading-state,[data-theme=dark] .manual-hours-page__selected-employee-summary,[data-theme=dark] .payroll-approval-page__detail-summary>div,[data-theme=dark] .payroll-approval-page__detail-loading,[data-theme=dark] .payroll-approval-page__empty-detail,[data-theme=dark] .payroll-approval-page__modal-card,[data-theme=dark] .payroll-approval-page__time-block,[data-theme=dark] .labor-report-page__lookup-result,[data-theme=dark] .labor-report-page__employee-meta-card,[data-theme=dark] .labor-report-page__summary-card,[data-theme=dark] .labor-report-page__service-year-card,[data-theme=dark] .labor-report-page__calendar-panel,[data-theme=dark] .labor-report-page__detail-panel,[data-theme=dark] .labor-report-page__calendar-loading-card,[data-theme=dark] .labor-report-page__scan-panel--badge,[data-theme=dark] .labor-report-page__day-card,[data-theme=dark] .labor-report-page__day-hours-box,[data-theme=dark] .labor-report-page__loading-state,[data-theme=dark] .labor-report-page__empty-detail,[data-theme=dark] .labor-report-page__detail-column{background:var(--color-bg-surface-floating)!important;border-color:var(--color-border)!important;color:var(--color-text-primary)}[data-theme=dark] .employee-review-page__table th,[data-theme=dark] .employee-review-page__table td{border-bottom-color:var(--color-border)}[data-theme=dark] .employee-review-page__table tbody tr:hover td{background:#d56a7214}[data-theme=dark] .employee-review-page__table-row--selected td{background:#d56a7229}[data-theme=dark] .employee-review-page__table-row--selected:hover td{background:#d56a7233}[data-theme=dark] .payroll-approval-page__utility-button.primary-button,[data-theme=dark] .payroll-approval-page__utility-button.secondary-button,[data-theme=dark] .payroll-approval-page__queue-meta-filter-actions .payroll-approval-page__meta-action-button--attached,[data-theme=dark] .payroll-approval-page__applied-filter-edit,[data-theme=dark] .payroll-approval-page__add-filter-button{color:var(--color-text-primary)}[data-theme=dark] .labor-report-page__scan-panel--badge{background:linear-gradient(180deg,#2c3b4beb,#1c2632fa)!important;border-color:#5e748f66!important;box-shadow:inset 0 1px #ffffff0f}[data-theme=dark] .labor-report-page__device-status--info,[data-theme=dark] .labor-report-page__message--info{background:#23303ee6;border-color:#5e748f57;color:var(--color-text-secondary)}[data-theme=dark] .vacation-request-page__field select,[data-theme=dark] .vacation-request-page__field input,[data-theme=dark] .vacation-request-page__field textarea{background-color:var(--color-bg-input)}[data-theme=dark] .labor-report-page__day-card--empty{background:transparent!important;border-color:transparent!important}[data-theme=dark] .manual-hours-page__lookup-result:hover,[data-theme=dark] .payroll-approval-page__lookup-result:hover,[data-theme=dark] .portal-layout__account-action:hover,[data-theme=dark] .portal-layout__nav-link:hover{background-color:#d56a721f}[data-theme=dark] .manual-hours-page__day-card--locked,[data-theme=dark] .payroll-approval-page__day-card--locked{background:var(--color-disabled-surface)!important;border-color:var(--color-border-strong)!important}[data-theme=dark] .manual-hours-page__day-card--locked .manual-hours-page__field input,[data-theme=dark] .manual-hours-page__day-card--locked input,[data-theme=dark] .payroll-approval-page__day-card--locked input{background:var(--color-disabled-surface-strong)!important;background-color:var(--color-disabled-surface-strong)!important;border-color:var(--color-border-strong)!important;color:var(--color-text-muted)!important;-webkit-text-fill-color:var(--color-text-muted)!important}[data-theme=dark] .manual-hours-page__lookup-result,[data-theme=dark] .payroll-approval-page__lookup-result,[data-theme=dark] .labor-report-page__lookup-result{color:var(--color-text-primary)}[data-theme=dark] .payroll-approval-page__overview-card,[data-theme=dark] .payroll-approval-page__queue-row,[data-theme=dark] .payroll-approval-page__empty-state,[data-theme=dark] .payroll-approval-page__queue-signal,[data-theme=dark] .payroll-approval-page__queue-subsection-count,[data-theme=dark] .payroll-approval-page__detail-flag-card,[data-theme=dark] .payroll-approval-page__detail-flag-empty,[data-theme=dark] .work-schedules-page__card,[data-theme=dark] .work-schedules-page__guidance,[data-theme=dark] .work-schedules-page__lookup-result,[data-theme=dark] .work-schedules-page__employee-summary,[data-theme=dark] .work-schedules-page__day-card,[data-theme=dark] .pto-approval-page__summary-card,[data-theme=dark] .pto-approval-page__lookup-result,[data-theme=dark] .pto-approval-page__queue-row,[data-theme=dark] .pto-approval-page__queue-row-fact,[data-theme=dark] .pto-approval-page__detail-card,[data-theme=dark] .pto-approval-page__selected-filter,[data-theme=dark] .pto-approval-page__calendar-day{background:var(--color-bg-surface-floating)!important;border-color:var(--color-border)!important;box-shadow:var(--shadow-soft)}[data-theme=dark] .payroll-approval-page__overview-card{background:linear-gradient(180deg,#212b38f0,#18202bfa)!important}[data-theme=dark] .payroll-approval-page__overview-card--alert,[data-theme=dark] .payroll-approval-page__queue-section--flagged,[data-theme=dark] .payroll-approval-page__queue-row--flagged{border-color:#f08a9242!important;background:linear-gradient(180deg,#3d1f249e,#1f161be6)!important}[data-theme=dark] .payroll-approval-page__queue-subsection-count,[data-theme=dark] .payroll-approval-page__queue-signal,[data-theme=dark] .payroll-approval-page__empty-state--calm,[data-theme=dark] .payroll-approval-page__detail-flag-empty{background:#18212ceb!important;border-color:#5262776b!important;color:var(--color-text-secondary)}[data-theme=dark] .payroll-approval-page__queue-subsection-count--flagged,[data-theme=dark] .payroll-approval-page__queue-signal--blocking,[data-theme=dark] .payroll-approval-page__empty-state--flagged,[data-theme=dark] .payroll-approval-page__detail-flag-card--critical,[data-theme=dark] .payroll-approval-page__flag-bubble--critical,[data-theme=dark] .payroll-approval-page__pill--blocked,[data-theme=dark] .payroll-approval-page__pill--rejected{background:#5e262dad!important;border-color:#f08a9247!important;color:#ffb4ba!important}[data-theme=dark] .payroll-approval-page__queue-signal--warning,[data-theme=dark] .payroll-approval-page__detail-flag-card--warning,[data-theme=dark] .payroll-approval-page__flag-bubble--warning,[data-theme=dark] .payroll-approval-page__pill--submitted{background:#5f44189e!important;border-color:#f59e0b4d!important;color:#f7d488!important}[data-theme=dark] .payroll-approval-page__empty-state--success,[data-theme=dark] .payroll-approval-page__pill--approved{background:#1b482f9e!important;border-color:#63d08e4d!important;color:#9ce4b8!important}[data-theme=dark] .payroll-approval-page__pill--draft{background:#364252ad!important;color:#c7d4e1!important}[data-theme=dark] .payroll-approval-page__queue-row:hover{border-color:#778ca56b;box-shadow:0 18px 34px #00000057}[data-theme=dark] .payroll-approval-page__queue-row--active{border-color:#f08a9275;box-shadow:0 0 0 1px #f08a9229,0 18px 34px #0000005c}[data-theme=dark] .payroll-approval-page__flag-bubble{box-shadow:inset 0 1px #ffffff0d}[data-theme=dark] .payroll-approval-page__detail-close-button{background:#5e262d9e;border-color:#f08a9257;color:#ffb4ba}[data-theme=dark] .payroll-approval-page__detail-close-button:hover{background:#722d36b8;border-color:#f08a926b}[data-theme=dark] .payroll-approval-page__export-card,[data-theme=dark] .payroll-approval-page__workflow-card{background:linear-gradient(180deg,#18212cf5,#10171ffa)!important;border-color:#324254eb!important}[data-theme=dark] .payroll-approval-page__workflow-pill--current{background:#1b482f9e!important;color:#9ce4b8!important}[data-theme=dark] .payroll-approval-page__workflow-pill--warning{background:#5f44189e!important;color:#f7d488!important}[data-theme=dark] .payroll-approval-page__workflow-button.secondary-button{background:#18212ceb;border-color:#5262776b;color:var(--color-text-primary)}[data-theme=dark] .payroll-approval-page__workflow-button.secondary-button:hover{background:#212b38f5}[data-theme=dark] .payroll-approval-page__export-button.primary-button{background:linear-gradient(180deg,#15803d,#166534);box-shadow:0 18px 34px #072e1780}[data-theme=dark] .payroll-approval-page__export-button.primary-button:hover{background:linear-gradient(180deg,#16a34a,#166534)}[data-theme=dark] .work-schedules-page__eyebrow,[data-theme=dark] .pto-approval-page__eyebrow,[data-theme=dark] .pto-approval-page__detail-eyebrow{color:var(--color-brand-red-dark)}[data-theme=dark] .work-schedules-page__section-description,[data-theme=dark] .work-schedules-page__day-meta,[data-theme=dark] .pto-approval-page__section-description,[data-theme=dark] .pto-approval-page__queue-row-meta,[data-theme=dark] .pto-approval-page__queue-row-footer,[data-theme=dark] .pto-approval-page__queue-row-fact-label,[data-theme=dark] .vacation-request-page__balance-card-label,[data-theme=dark] .vacation-request-page__balance-item span,[data-theme=dark] .pto-approval-page__detail-meta,[data-theme=dark] .pto-approval-page__summary-label,[data-theme=dark] .pto-approval-page__calendar-weekday{color:var(--color-text-secondary)}[data-theme=dark] .work-schedules-page__field label,[data-theme=dark] .work-schedules-page__toggle,[data-theme=dark] .pto-approval-page__field label,[data-theme=dark] .pto-approval-page__summary-value,[data-theme=dark] .pto-approval-page__queue-row-fact strong,[data-theme=dark] .vacation-request-page__balance-card-value,[data-theme=dark] .vacation-request-page__balance-item strong{color:var(--color-text-primary)}[data-theme=dark] .work-schedules-page__field input,[data-theme=dark] .work-schedules-page__field textarea,[data-theme=dark] .pto-approval-page__field input,[data-theme=dark] .pto-approval-page__field select,[data-theme=dark] .pto-approval-page__field textarea{background:var(--color-bg-input);border-color:var(--color-border);color:var(--color-text-primary)}[data-theme=dark] .work-schedules-page__field input:disabled,[data-theme=dark] .work-schedules-page__field textarea:disabled{background:var(--color-disabled-surface);color:var(--color-text-muted)}[data-theme=dark] .work-schedules-page__lookup-result--selected,[data-theme=dark] .pto-approval-page__lookup-result--selected,[data-theme=dark] .pto-approval-page__selected-filter{background:#1f344ad1!important;border-color:#60a5fa57!important;color:#dbeafe!important}[data-theme=dark] .pto-approval-page__calendar-month-pill{background:linear-gradient(135deg,#1c293afa,#141d27f5)!important;border-color:#60a5fa3d!important;color:#dbeafe!important}[data-theme=dark] .pto-approval-page__queue-row{background:linear-gradient(180deg,#1d2734fa,#141c26f5)!important;border-color:#485c74b8!important;color:var(--color-text-primary)}[data-theme=dark] .pto-approval-page__queue-row:hover{border-color:#60a5fa57;box-shadow:0 18px 34px #00000057}[data-theme=dark] .pto-approval-page__queue-row-title,[data-theme=dark] .pto-approval-page__detail-title,[data-theme=dark] .pto-approval-page__calendar-day-number{color:#f3f7fb}[data-theme=dark] .pto-approval-page__queue-row-meta,[data-theme=dark] .pto-approval-page__queue-row-footer,[data-theme=dark] .pto-approval-page__detail-meta{color:#adc0d3}[data-theme=dark] .vacation-request-page__balance-note{color:var(--color-text-secondary)}[data-theme=dark] .vacation-request-page__balance-error{color:#ffb4ba}[data-theme=dark] .pto-approval-page__queue-row-range{display:inline-flex;align-items:center;width:fit-content;max-width:100%;padding:.55rem .8rem;border:1px solid rgba(96,165,250,.24);border-radius:.9rem;background:#1f344a8f;color:#e0efff;font-weight:700;line-height:1.35}[data-theme=dark] .pto-approval-page__calendar-day{background:linear-gradient(180deg,#1d2734fa,#141c26f5)!important;border-color:#485c74b8!important}[data-theme=dark] .pto-approval-page__calendar-day--placeholder{background:#141c266b!important;border-color:#485c7461!important}[data-theme=dark] .pto-approval-page__calendar-event{background:linear-gradient(135deg,#29344ff5,#1b243af0)!important;border-color:#818cf857!important;color:#e6e9ff!important}[data-theme=dark] .pto-approval-page__calendar-event span{color:#c7d2fe!important}[data-theme=dark] .pto-approval-page__calendar-event--all-day{background:linear-gradient(135deg,#193a60f5,#152a47f0)!important;border-color:#60a5fa57!important;color:#dbeafe!important}[data-theme=dark] .pto-approval-page__calendar-event--all-day span{color:#bfdbfe!important}[data-theme=dark] .pto-approval-page__calendar-event--preview{background:linear-gradient(135deg,#164a33f5,#123a29f0)!important;border-color:#34d3996b!important;color:#d1fae5!important;box-shadow:0 0 0 1px #34d3991f}[data-theme=dark] .pto-approval-page__calendar-event--preview span{color:#a7f3d0!important}[data-theme=dark] .pto-approval-page__reject-button{background:#5e262dad;border-color:#f08a9257;color:#ffb4ba}[data-theme=dark] .pto-approval-page__reject-button:hover{background:#722d36b8;border-color:#f08a926b;color:#ffc4c9}[data-theme=dark] .pto-approval-page__approve-button.primary-button{background:linear-gradient(180deg,#15803d,#166534);box-shadow:0 18px 34px #072e1780}[data-theme=dark] .pto-approval-page__approve-button.primary-button:hover{background:linear-gradient(180deg,#16a34a,#166534)}[data-theme=dark] .work-schedules-page__guidance{background:linear-gradient(135deg,#1c293afa,#141d27f5)!important;border-color:#60a5fa3d!important;color:#dbeafe!important}[data-theme=dark] .work-schedules-page__employee-summary{background:linear-gradient(135deg,#1c293afa,#141d27f5)!important;border-color:#60a5fa3d!important}[data-theme=dark] .work-schedules-page__summary-label{color:#93c5fd}[data-theme=dark] .work-schedules-page__summary-pill{background:#2563eb38;color:#bfdbfe}[data-theme=dark] .work-schedules-page__day-status-pill--scheduled{background:#1b482f9e;color:#9ce4b8}[data-theme=dark] .work-schedules-page__day-status-pill--unscheduled{background:#364252ad;color:#c7d4e1}[data-theme=dark] .work-schedules-page__toggle{background:#18212ceb;border-color:#5262776b;color:var(--color-text-primary)}[data-theme=dark] .work-schedules-page__status--info,[data-theme=dark] .pto-approval-page__status--info{background:#1f344ab3;color:#dbeafe}[data-theme=dark] .work-schedules-page__status--error,[data-theme=dark] .pto-approval-page__status--error{background:#5e262dad;color:#ffb4ba}[data-theme=dark] .pto-approval-page__status-pill--pending{background:#5f44189e;color:#f7d488}[data-theme=dark] .pto-approval-page__status-pill--approved{background:#1b482f9e;color:#9ce4b8}[data-theme=dark] .pto-approval-page__status-pill--rejected{background:#5e262dad;color:#ffb4ba}[data-theme=dark] .pto-approval-page__status-pill--cancelled{background:#364252ad;color:#c7d4e1}[data-theme=dark] .pto-approval-page__detail-card--warning{background:linear-gradient(135deg,#493516db,#2d2311f0)!important;border-color:#f59e0b47!important}@media(max-width:900px){.workflow-week-bar{grid-template-columns:1fr;gap:.65rem}.workflow-week-nav-button{width:100%}.workflow-week-nav-button--left,.workflow-week-nav-button--right{border-radius:var(--radius-md);border-left:1px solid rgba(179,38,46,.5);border-right:1px solid rgba(179,38,46,.5)}.workflow-week-display{border-radius:var(--radius-md)}}.clock-page,.employee-form-page,.employee-review-page,.assign-badge-page,.manual-hours-page,.vacation-request-page,.labor-report-page,.payroll-approval-page,.work-schedules-page,.pto-approval-page{padding:2rem 2.5rem}.clock-page__container,.employee-form-page__container,.employee-review-page__container,.assign-badge-page__container,.manual-hours-page__container,.vacation-request-page__container,.labor-report-page__container,.payroll-approval-page__container,.work-schedules-page__container,.pto-approval-page__container{min-height:calc(100vh - 4rem);display:flex;flex-direction:column;width:100%;max-width:1400px;margin:0 auto}.clock-page__header,.employee-form-page__header,.employee-review-page__header,.assign-badge-page__header,.manual-hours-page__header,.vacation-request-page__header,.labor-report-page__header,.payroll-approval-page__header,.work-schedules-page__header,.pto-approval-page__header{display:flex;justify-content:center;margin-bottom:2rem}.clock-page__logo-panel,.employee-form-page__logo-panel,.employee-review-page__logo-panel,.assign-badge-page__logo-panel,.manual-hours-page__logo-panel,.vacation-request-page__logo-panel,.labor-report-page__logo-panel,.payroll-approval-page__logo-panel,.work-schedules-page__logo-panel,.pto-approval-page__logo-panel{min-width:260px;min-height:110px;padding:1rem 1.25rem}.clock-page__logo-image,.employee-form-page__logo-image,.employee-review-page__logo-image,.assign-badge-page__logo-image,.manual-hours-page__logo-image,.vacation-request-page__logo-image,.labor-report-page__logo-image,.payroll-approval-page__logo-image,.work-schedules-page__logo-image,.pto-approval-page__logo-image{max-width:100%;max-height:96px;width:auto;height:auto;object-fit:contain}.workflow-page-frame__brand-link{display:inline-flex;color:inherit;text-decoration:none}.workflow-page-frame__brand-link:focus-visible{outline:3px solid var(--color-focus-outline);outline-offset:6px;border-radius:var(--radius-md)}.workflow-page-frame__utility-row{display:flex;justify-content:center;margin:0 0 1.5rem}.workflow-page-frame__home-link{min-height:54px;padding:0 1.4rem;font-size:.98rem;text-decoration:none}.employee-form-page__main,.employee-review-page__main,.assign-badge-page__main,.manual-hours-page__main,.vacation-request-page__main,.labor-report-page__main,.payroll-approval-page__main,.work-schedules-page__main,.pto-approval-page__main{flex:1;display:flex;align-items:flex-start;justify-content:center}@media(max-width:900px){.clock-page,.employee-form-page,.employee-review-page,.assign-badge-page,.manual-hours-page,.vacation-request-page,.labor-report-page,.payroll-approval-page,.work-schedules-page,.pto-approval-page{padding:1.25rem}.clock-page__container,.employee-form-page__container,.employee-review-page__container,.assign-badge-page__container,.manual-hours-page__container,.vacation-request-page__container,.labor-report-page__container,.payroll-approval-page__container{min-height:calc(100vh - 2.5rem)}.workflow-page-frame__utility-row{margin-bottom:1.1rem}.employee-form-page__hero-card,.employee-review-page__hero-card,.assign-badge-page__hero-card,.manual-hours-page__hero-card,.vacation-request-page__hero-card,.labor-report-page__hero-card,.payroll-approval-page__hero-card{padding:2rem 1.4rem}}.employee-form-page,.assign-badge-page,.manual-hours-page{--workflow-field-gap: .45rem;--workflow-label-font-size: .98rem;--workflow-input-min-height: 50px;--workflow-input-padding-x: .9rem;--workflow-input-font-size: .98rem;--workflow-helper-link-font-size: .98rem}.employee-form-page{--workflow-input-min-height: 58px;--workflow-input-padding-x: 1rem}.assign-badge-page{--workflow-field-gap: calc(.45rem * var(--page-scale));--workflow-label-font-size: calc(.98rem * var(--page-scale));--workflow-input-min-height: calc(50px * var(--page-scale));--workflow-input-padding-x: calc(.9rem * var(--page-scale));--workflow-input-font-size: calc(.98rem * var(--page-scale));--workflow-helper-link-font-size: calc(.98rem * var(--page-scale))}.employee-form-page__field,.assign-badge-page__field,.manual-hours-page__field{display:flex;flex-direction:column;gap:var(--workflow-field-gap)}.employee-form-page__field label,.assign-badge-page__field label,.manual-hours-page__field label{font-weight:700;color:var(--color-text-primary);font-size:var(--workflow-label-font-size)}.employee-form-page__field input,.employee-form-page__field select,.assign-badge-page__field input,.manual-hours-page__field select,.manual-hours-page__field input,.manual-hours-page__day-fields input{width:100%;min-height:var(--workflow-input-min-height);padding:0 var(--workflow-input-padding-x);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background-color:var(--color-bg-input);color:var(--color-text-primary);font-size:var(--workflow-input-font-size);outline:none;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}.employee-form-page__field input:focus,.employee-form-page__field select:focus,.assign-badge-page__field input:focus,.manual-hours-page__field select:focus,.manual-hours-page__field input:focus,.manual-hours-page__day-fields input:focus{border-color:var(--color-brand-red);box-shadow:0 0 0 4px var(--color-focus-ring);background-color:var(--color-bg-input-focus)}.employee-form-page__preview-link,.manual-hours-page__preview-link,.assign-badge-page__manual-entry-link{color:var(--color-brand-red-dark);font-size:var(--workflow-helper-link-font-size);font-weight:700;text-decoration:underline;text-underline-offset:3px}
