.uh-header{position:sticky;top:0;z-index:1000;height:8vh;min-height:60px;width:100%;padding:0 20px;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between;background-color:#fff}.uh-left{display:flex;align-items:center;gap:10px;flex-shrink:0;--uh-logo-height: 44px}.uh-logo-wordmark{height:var(--uh-logo-height);width:calc(var(--uh-logo-height) * 371 / 80);flex-shrink:0;display:block;object-fit:contain;object-position:left center}.uh-nav{display:flex;align-items:center;justify-content:flex-start;gap:24px;margin-left:24px}.uh-nav-item{border:none;background:transparent;color:#374151;display:inline-flex;align-items:center;gap:8px;font-size:1rem;padding:8px 6px;cursor:pointer}.uh-nav-item:hover{color:#111827}.header-icon-svg{width:18px;height:18px;display:block;flex-shrink:0}.uh-header-end{margin-left:auto;flex-shrink:0;display:inline-flex;align-items:center;gap:12px}.uh-sync-indicator{display:flex;justify-content:flex-end;align-items:center;max-width:22px;overflow:hidden;border-radius:999px;transition:max-width .28s ease;cursor:default}.uh-sync-indicator:hover,.uh-sync-indicator:focus-within{max-width:280px}.uh-sync-indicator-inner{display:inline-flex;align-items:center;gap:8px;flex-shrink:0;padding:4px 2px 4px 10px;border-radius:999px;background:transparent;transition:background-color .2s ease,box-shadow .2s ease}.uh-sync-indicator:hover .uh-sync-indicator-inner,.uh-sync-indicator:focus-within .uh-sync-indicator-inner{background:linear-gradient(180deg,#eff6ff,#dbeafe);box-shadow:0 1px 4px #2563eb24}.uh-sync-bubble{white-space:nowrap;font-size:.8rem;font-weight:600;color:#1d4ed8;letter-spacing:.01em;opacity:0;transform:translate(6px);transition:opacity .2s ease,transform .2s ease;pointer-events:none}.uh-sync-indicator:hover .uh-sync-bubble,.uh-sync-indicator:focus-within .uh-sync-bubble{opacity:1;transform:translate(0)}.uh-sync-spinner{width:18px;height:18px;flex-shrink:0;border-radius:50%;border:2.5px solid #bfdbfe;border-top-color:#2563eb;animation:uh-sync-spin .75s linear infinite}@keyframes uh-sync-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.uh-sync-spinner{animation:none;border-top-color:#2563eb;border-right-color:#2563eb}.uh-sync-indicator,.uh-sync-bubble,.uh-sync-indicator-inner{transition:none}}.uh-profile-wrap{position:relative;flex-shrink:0}.uh-profile-trigger{display:inline-flex;align-items:center;gap:10px;padding:4px 14px 4px 4px;border:1px solid #dbeafe;border-radius:999px;background:linear-gradient(180deg,#fff,#f8fafc);box-shadow:0 1px 3px #0f172a14;cursor:pointer;color:#1e293b;font-size:.95rem;font-weight:600;transition:border-color .15s ease,box-shadow .15s ease}.uh-profile-trigger:hover,.uh-profile-trigger[aria-expanded=true]{border-color:#93c5fd;box-shadow:0 4px 12px #2563eb1f}.uh-profile-avatar{width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:700;letter-spacing:.02em;color:#fff;background:linear-gradient(145deg,#2563eb,#1d4ed8);box-shadow:inset 0 0 0 2px #ffffff59;flex-shrink:0}.uh-profile-label{padding-right:2px;white-space:nowrap;display:inline-flex;align-items:baseline;gap:.3em;max-width:220px;overflow:hidden}.uh-profile-company{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.uh-profile-word{flex-shrink:0}.uh-profile-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:260px;border:1px solid #e2e8f0;border-radius:14px;background:#fff;box-shadow:0 16px 40px #0f172a24;overflow:hidden;z-index:1100}.uh-profile-dropdown-body{padding:16px 18px 14px}.uh-profile-details{margin:0;display:grid;gap:12px}.uh-profile-detail-row{display:grid;gap:2px}.uh-profile-detail-row dt{margin:0;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#64748b}.uh-profile-detail-row dd{margin:0;font-size:.95rem;font-weight:500;color:#0f172a;word-break:break-word}.uh-profile-dropdown-footer{padding:10px 12px 12px;border-top:1px solid #e2e8f0;background:#f8fafc;display:flex;flex-direction:column;gap:8px}.uh-profile-field-input{width:100%;box-sizing:border-box;height:34px;padding:0 10px;border:1px solid #cbd5e1;border-radius:8px;font-size:.9rem;font-weight:500;color:#0f172a;background:#fff}.uh-profile-field-input:focus{outline:2px solid #93c5fd;outline-offset:1px;border-color:#60a5fa}.uh-profile-error{margin:10px 0 0;font-size:.78rem;font-weight:500;color:#b91c1c}.uh-profile-edit-btn,.uh-profile-primary-btn,.uh-profile-secondary-btn,.uh-profile-add-company-btn{width:100%;border-radius:10px;font-size:.92rem;font-weight:600;padding:10px 12px;cursor:pointer}.uh-profile-add-company-btn{border:1px solid #a7d3c8;background:#e8f5f1;color:#1f4f46}.uh-profile-add-company-btn:hover:not(:disabled){background:#d7ebe6}.uh-profile-add-company-btn:disabled{opacity:.6;cursor:not-allowed}.uh-profile-company-trigger{display:inline-flex;align-items:center;gap:.4rem;max-width:100%;padding:0;border:none;background:transparent;color:inherit;font:inherit;font-weight:600;cursor:pointer;text-align:left}.uh-profile-company-trigger:hover:not(:disabled){color:#1d4ed8;text-decoration:underline}.uh-profile-company-trigger:disabled{opacity:.65;cursor:not-allowed}.uh-profile-company-caret{font-size:.75rem;opacity:.7}.uh-company-picker{display:flex;flex-direction:column;gap:.35rem;margin:.75rem 0 0;padding:.5rem;border:1px solid #dbe3ee;border-radius:10px;background:#f8fafc;max-height:180px;overflow:auto}.uh-company-picker-empty{margin:0;padding:.4rem .5rem;color:#64748b;font-size:.9rem}.uh-company-picker-item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;padding:.55rem .65rem;border:none;border-radius:8px;background:transparent;color:#0f172a;font:inherit;text-align:left;cursor:pointer}.uh-company-picker-item:hover:not(:disabled){background:#eff6ff}.uh-company-picker-item.is-active{background:#dbeafe;font-weight:600}.uh-company-picker-item:disabled{opacity:.65;cursor:not-allowed}.uh-company-picker-item.is-inactive{color:#94a3b8;background:#f1f5f9}.uh-company-picker-check{color:#1d4ed8;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.uh-company-picker-check.is-inactive-label{color:#94a3b8}.uh-profile-edit-btn{border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8}.uh-profile-edit-btn:hover{background:#dbeafe;border-color:#93c5fd}.uh-profile-edit-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.uh-profile-primary-btn{border:1px solid #1f3f93;background:#1f3f93;color:#fff}.uh-profile-primary-btn:hover:not(:disabled){background:#183578;border-color:#183578}.uh-profile-secondary-btn{border:1px solid #cbd5e1;background:#fff;color:#334155}.uh-profile-secondary-btn:hover:not(:disabled){background:#f1f5f9}.uh-profile-primary-btn:disabled,.uh-profile-secondary-btn:disabled{opacity:.55;cursor:not-allowed}.uh-profile-logout-btn{width:100%;border:1px solid #cbd5e1;border-radius:10px;background:#fff;color:#334155;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:.92rem;font-weight:600;padding:10px 12px;cursor:pointer}.uh-profile-logout-btn:hover{color:#0f172a;border-color:#94a3b8;background:#f1f5f9}.ukg-import-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:1.25rem;background:#0f172a73}.ukg-import-modal{width:min(520px,100%);max-height:min(90vh,720px);overflow:auto;border-radius:12px;background:#fff;box-shadow:0 18px 48px #0f172a38;color:#0f172a}.ukg-import-modal-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:1rem 1.15rem .65rem;border-bottom:1px solid #e2e8f0}.ukg-import-modal-header h2{margin:0;font-size:1.15rem;font-weight:700}.ukg-import-close{border:none;background:transparent;color:#64748b;font-size:1.5rem;line-height:1;cursor:pointer}.ukg-import-modal-body{padding:1rem 1.15rem}.ukg-import-modal-body p{margin:0 0 .85rem;line-height:1.45;color:#334155}.ukg-import-list{margin:0 0 .85rem;padding-left:1.15rem;color:#334155;line-height:1.5}.ukg-import-note{margin:0;color:#64748b;font-size:.92rem}.ukg-import-loading{display:flex;flex-direction:column;align-items:center;gap:.85rem;padding:1.5rem .5rem;text-align:center}.ukg-import-spinner{width:2.25rem;height:2.25rem;border:3px solid #dbeafe;border-top-color:#2563eb;border-radius:50%;animation:ukg-import-spin .8s linear infinite}@keyframes ukg-import-spin{to{transform:rotate(360deg)}}.ukg-import-error{margin:0;color:#b91c1c}.ukg-import-modal-footer{display:flex;justify-content:flex-end;gap:.6rem;padding:.85rem 1.15rem 1.1rem;border-top:1px solid #e2e8f0}.ukg-import-btn{border-radius:8px;border:1px solid transparent;padding:.55rem .95rem;font:inherit;font-weight:600;cursor:pointer}.ukg-import-btn--ghost{background:#f8fafc;border-color:#cbd5e1;color:#334155}.ukg-import-btn--primary{background:#1d4ed8;color:#fff}.ukg-import-btn:disabled{opacity:.55;cursor:not-allowed}.intake-form-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:flex-start;justify-content:center;padding:2vh 20px 20px;box-sizing:border-box;background:#0f172ab8}.intake-form-modal{width:min(1480px,calc(100vw - 40px));max-height:min(86vh,840px);transform:translateY(8vh);display:flex;flex-direction:column;border:1px solid #e2e8f0;border-radius:12px;background:#fff;box-shadow:0 24px 60px #0f172a47;overflow:hidden}.intake-form-header{flex-shrink:0;padding:14px 24px 12px;border-bottom:1px solid #e5e7eb;background:#f8fafc}.intake-form-header h1{margin:0 0 8px;font-size:1.45rem;font-weight:700;color:#111827}.intake-form-header p{margin:0;font-size:.95rem;line-height:1.5;color:#4b5563}.intake-form-scroll{flex:1;min-height:0;overflow:auto;padding:20px 24px 8px}.intake-form-scroll .scheduler-settings-fields--embedded{padding:0}.intake-form-scroll .settings-licenses-table-header,.intake-form-scroll .settings-licenses-confirmed-item{--confirmed-cols: minmax(88px, .85fr) minmax(158px, 1.2fr) minmax(80px, .55fr) minmax(140px, 1fr) 40px;column-gap:22px;padding-left:16px;padding-right:16px}.intake-form-scroll .settings-licenses-confirmed-item .settings-units-care-select{width:100%;max-width:100%;min-width:0;box-sizing:border-box}.intake-form-scroll .settings-licenses-confirmed-item .settings-units-patients-input{width:100%;max-width:88px;justify-self:start}.intake-form-error{margin:0;padding:0 24px 8px}.intake-form-footer{flex-shrink:0;display:flex;justify-content:flex-end;gap:.75rem;padding:14px 24px 20px;border-top:1px solid #e5e7eb;background:#fff}.intake-form-cancel-btn{min-width:100px}.intake-form-apply-btn{min-width:120px}.settings-page{height:100vh;display:flex;flex-direction:column;overflow:hidden;background:#eef3fa}.settings-main{flex:1;min-height:0;width:90vw;max-width:90vw;margin:0 auto;padding:24px 0 20px;box-sizing:border-box;display:flex;flex-direction:column}.settings-intro{flex-shrink:0;padding:0 4px}.settings-intro h1{margin:0 0 10px;color:#111827;font-size:1.75rem;font-weight:700}.settings-intro p{margin:0 0 20px;color:#4b5563;font-size:.95rem;line-height:1.5}.settings-embed{flex:1;min-height:0;width:100%;max-width:100%;display:flex;flex-direction:column;border:1px solid #d1d5db;border-radius:10px;background:#fff;box-shadow:0 1px 3px #0000000f;overflow:hidden;box-sizing:border-box}.settings-embed-scroll{flex:1;min-height:0;overflow-y:auto;padding:20px 18px}.settings-field h2{margin:0 0 8px;color:#111827;font-size:1.15rem;font-weight:700}.settings-field-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;margin:0 0 8px;padding:0;border:none;background:transparent;cursor:pointer;text-align:left;color:inherit;font:inherit}.settings-field-toggle h2{margin:0}.settings-field-chevron{width:22px;height:22px;flex-shrink:0;color:#4b5563;transition:transform .15s ease}.settings-field-chevron.is-expanded{transform:rotate(180deg)}.settings-field--collapsed{padding-bottom:0}.settings-field-desc{margin:0 0 14px;color:#6b7280;font-size:.88rem;line-height:1.45}.settings-field--spaced{margin-top:28px;padding-top:28px;border-top:1px solid #e5e7eb}.settings-field--lpn-rn-ratio{margin-bottom:5vh}.settings-input-row{display:grid;grid-template-columns:minmax(220px,1.2fr) 168px minmax(220px,1.2fr) 168px;column-gap:20px;row-gap:14px;align-items:center;max-width:100%}.settings-company-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:center}.settings-input-row.settings-input-row--single{display:flex;align-items:center;width:100%;min-width:0;gap:16px}.settings-input-row.settings-input-row--single .settings-input-row-label{flex:0 0 auto}.settings-input-row.settings-input-row--single .settings-number-input{flex:1 1 auto;min-width:0;width:auto}.settings-input-row.settings-input-row--single .settings-zip-input{max-width:none}.settings-source-connection{box-sizing:border-box}.settings-source-stack{--source-label-width: 7.25rem;--source-field-gap: 16px;--source-col-gap: 20px;--source-inset: 16px;box-sizing:border-box}.settings-source-lead-row{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;width:100%;box-sizing:border-box}.settings-source-lead-row .settings-source-field--lead{flex:1 1 auto;min-width:0}.settings-source-import-btn{flex:0 0 auto;margin-right:var(--source-inset);margin-bottom:1px;border:1px solid #1d4ed8;border-radius:8px;background:#1d4ed8;color:#fff;font:inherit;font-weight:600;padding:.55rem 1.1rem;cursor:pointer}.settings-source-import-btn:disabled{border-color:#cbd5e1;background:#e2e8f0;color:#94a3b8;cursor:not-allowed}.settings-source-import-btn--disconnect{border-color:#b91c1c;background:#dc2626}.settings-source-import-btn--disconnect:hover:not(:disabled){border-color:#991b1b;background:#b91c1c}.settings-source-disconnect-error{margin:.35rem var(--source-inset) 0;color:#b91c1c;font-size:.9rem}.settings-source-field{display:grid;grid-template-columns:var(--source-label-width) minmax(0,1fr);column-gap:var(--source-field-gap);align-items:center;min-width:0}.settings-source-field--lead{margin-left:var(--source-inset);width:calc((100% - (2 * var(--source-inset)) - var(--source-col-gap)) / 2);max-width:calc(100% - var(--source-inset));box-sizing:border-box}.settings-source-label{margin:0;font-size:.88rem;font-weight:600;color:#111827;line-height:1.3}.settings-source-control{width:100%;min-width:0}.settings-source-fieldset{margin:16px 0 0;padding:12px var(--source-inset) 14px;border:1px solid rgba(15,23,42,.12);border-radius:10px;background:#f8fafccc;min-inline-size:0;box-sizing:border-box}.settings-source-fieldset-legend{margin:0;padding:0 4px;font-size:.92rem;font-weight:600;color:#0f172a}.settings-source-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:var(--source-col-gap);row-gap:14px;margin:0;padding:4px 0 0}@media (max-width: 720px){.settings-source-field--lead{width:calc(100% - var(--source-inset))}.settings-source-grid{grid-template-columns:1fr}}.settings-input-row-label{font-size:.88rem;font-weight:600;color:#111827;line-height:1.3;padding-right:4px}.settings-number-input{width:100%;height:40px;padding:0 12px;border:1px solid #cbd5e1;border-radius:8px;font-size:.9rem;color:#111827;background:#fff;box-sizing:border-box}@media (max-width: 900px){.settings-input-row{grid-template-columns:minmax(0,1fr) 168px}.settings-company-split{grid-template-columns:1fr}.settings-input-row.settings-input-row--single{display:flex}.settings-input-row-label:nth-of-type(3),.settings-input-row>.settings-number-input:nth-of-type(2){grid-column:1 / -1}.settings-input-row-label:nth-of-type(3){margin-top:4px}}.settings-number-input:focus{outline:2px solid rgba(31,63,147,.25);border-color:#1f3f93}.settings-units-split{display:flex;align-items:stretch;gap:16px;min-height:320px}.settings-units-split--residents-only{min-height:0}.settings-units-panel--residents-only{--confirmed-cols: minmax(0, 1.15fr) minmax(96px, .85fr)}.settings-units-confirmed-item--residents-only{grid-template-columns:var(--confirmed-cols)}.settings-units-panel--residents-only.settings-units-panel--removable,.settings-units-panel--removable.settings-units-panel--residents-only{--confirmed-cols: minmax(0, 1.15fr) minmax(96px, .85fr) 36px}.settings-units-confirmed-item--residents-only.settings-units-confirmed-item--removable{grid-template-columns:var(--confirmed-cols)}.settings-units-residents-readonly{justify-self:start;min-width:0;padding:0 8px;font-size:.88rem;font-weight:600;color:#111827;text-align:left}.settings-units-column{flex:1;min-width:0;display:flex;flex-direction:column}.settings-units-panel{flex:1;min-height:320px;display:flex;flex-direction:column;border:1px solid #e5e7eb;border-radius:8px;background:#fafbfc;overflow:hidden}.settings-units-panel--confirmed{--confirmed-cols: minmax(0, 1.15fr) minmax(96px, .85fr) 36px;background:#fff}.settings-units-table-header,.settings-units-confirmed-item{display:grid;grid-template-columns:var(--confirmed-cols);column-gap:12px;align-items:center;padding-left:14px;padding-right:14px}.settings-licenses-table-header,.settings-licenses-confirmed-item{--confirmed-cols: minmax(80px, .9fr) minmax(150px, 1.15fr) minmax(72px, .5fr) minmax(120px, 1fr) 36px;column-gap:16px}.settings-licenses-confirmed-item .settings-units-care-select{width:100%;max-width:100%;min-width:0;box-sizing:border-box}.settings-units-table-header{flex-shrink:0;padding-top:12px;padding-bottom:12px;min-height:62px;box-sizing:border-box;border-bottom:1px solid #e5e7eb;background:#f8fafc}.settings-units-table-col{font-size:.82rem;font-weight:700;color:#374151}.settings-units-table-col--name{min-width:0}.settings-units-table-col--patients{justify-self:start;text-align:left}.settings-units-table-col--action{justify-self:end}.settings-units-add-row{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid #e5e7eb;background:#f8fafc}.settings-units-input{flex:1;min-width:0;height:38px;padding:0 12px;border:1px solid #cbd5e1;border-radius:8px;font-size:.9rem;color:#111827;background:#fff}.settings-units-input:focus{outline:2px solid rgba(31,63,147,.25);border-color:#1f3f93}.settings-units-add-btn{flex-shrink:0;height:38px;padding:0 16px;border:1px solid #1f3f93;border-radius:8px;background:#1f3f93;color:#fff;font-size:.88rem;font-weight:600;cursor:pointer}.settings-units-add-btn:hover:not(:disabled){background:#183578;border-color:#183578}.settings-units-add-btn:disabled{opacity:.45;cursor:not-allowed}.settings-units-list-window{flex:1;min-height:0;overflow-y:auto;padding:8px 0;background:#fff}.settings-units-empty{margin:24px 14px;text-align:center;color:#9ca3af;font-size:.88rem}.settings-units-panel--confirmed .settings-units-empty{grid-column:1 / -1;margin:24px 0}.settings-units-list-item{display:flex;align-items:center;gap:12px;padding:10px 14px;border-bottom:1px solid #f1f5f9}.settings-units-list-item:last-child{border-bottom:none}.settings-units-list-name{flex:1;min-width:0;font-size:.92rem;font-weight:600;color:#111827}.settings-units-care-select{flex-shrink:0;width:140px;height:36px;padding:0 8px;border:1px solid #cbd5e1;border-radius:8px;font-size:.85rem;color:#111827;background:#fff;cursor:pointer}.settings-units-remove-btn{flex-shrink:0;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#374151;font-size:.82rem;font-weight:600;padding:8px 12px;cursor:pointer}.settings-units-remove-btn:hover{background:#fef2f2;border-color:#fca5a5;color:#b91c1c}.settings-units-panel-footer{flex-shrink:0;display:flex;justify-content:flex-end;padding:10px 14px;border-top:1px solid #e5e7eb;background:#f8fafc}.settings-units-confirm-btn{height:36px;padding:0 18px;border:1px solid #1f3f93;border-radius:8px;background:#1f3f93;color:#fff;font-size:.86rem;font-weight:600;cursor:pointer}.settings-units-confirm-btn:hover:not(:disabled){background:#183578;border-color:#183578}.settings-units-confirm-btn:disabled{opacity:.45;cursor:not-allowed}.settings-units-confirmed-item{padding-top:10px;padding-bottom:10px;border-bottom:1px solid #f1f5f9}.settings-units-confirmed-item:last-child{border-bottom:none}.settings-units-confirmed-label{min-width:0;font-size:.9rem;font-weight:600;color:#111827}.settings-units-confirmed-name-cell{display:flex;align-items:center;gap:8px;min-width:0}.settings-units-confirmed-name-cell .settings-units-confirmed-label{flex:1;min-width:0}.settings-units-edit-btn{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#4b5563;cursor:pointer}.settings-units-edit-btn:hover:not(:disabled){border-color:#1f3f93;color:#1f3f93;background:#f8fafc}.settings-units-edit-btn:disabled{opacity:.4;cursor:not-allowed}.settings-units-edit-icon{width:16px;height:16px}.settings-units-inline-edit{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:0;width:100%}.settings-units-inline-name-input{flex:1 1 120px;min-width:0;height:32px;padding:0 8px;border:1px solid #cbd5e1;border-radius:6px;font-size:.85rem;color:#111827;background:#fff}.settings-units-inline-care-select{flex:0 1 auto;min-width:108px;height:32px;padding:0 8px;border:1px solid #cbd5e1;border-radius:6px;font-size:.82rem;color:#111827;background:#fff}.settings-units-inline-name-input:focus,.settings-units-inline-care-select:focus{outline:2px solid rgba(31,63,147,.25);border-color:#1f3f93}.settings-units-inline-close-btn{flex-shrink:0;width:32px;height:32px;padding:0;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#6b7280;font-size:1.1rem;line-height:1;cursor:pointer}.settings-units-inline-close-btn:hover{border-color:#9ca3af;color:#111827;background:#f8fafc}.settings-units-patients-input{width:100%;max-width:88px;height:34px;padding:0 8px;border:1px solid #cbd5e1;border-radius:8px;font-size:.88rem;color:#111827;background:#fff;text-align:left;justify-self:start;box-sizing:border-box}.settings-units-patients-input:focus{outline:2px solid rgba(31,63,147,.25);border-color:#1f3f93}.settings-units-remove-confirmed-btn{justify-self:end;width:32px;height:32px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#374151;font-size:1rem;font-weight:700;line-height:1;cursor:pointer;padding:0}.settings-units-remove-confirmed-btn:hover{background:#fef2f2;border-color:#fca5a5;color:#b91c1c}.settings-apply-error{margin:0;padding:10px 18px;font-size:.86rem;color:#b91c1c;background:#fef2f2;border-top:1px solid #fecaca}.settings-embed-footer{flex-shrink:0;display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:12px 18px;border-top:1px solid #e5e7eb;background:#f8fafc}.settings-footer-btn{height:38px;padding:0 18px;border-radius:8px;font-size:.88rem;font-weight:600;cursor:pointer}.settings-footer-btn--secondary{border:1px solid #d1d5db;background:#fff;color:#374151}.settings-footer-btn--secondary:hover{background:#f9fafb;border-color:#9ca3af}.settings-footer-btn--primary{border:1px solid #1f3f93;background:#1f3f93;color:#fff}.settings-footer-btn--primary:hover{background:#183578;border-color:#183578}.settings-updated-toast{position:fixed;top:calc(8vh + 16px);left:50%;transform:translate(-50%);z-index:60;display:inline-flex;align-items:center;gap:10px;padding:10px 16px;border-radius:999px;background:#fff;border:1px solid #d1d5db;box-shadow:0 10px 28px #0f172a24;color:#111827;font-size:.9rem;font-weight:600}.settings-updated-toast-icon{width:22px;height:22px;border-radius:50%;background:#16a34a;color:#fff;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.settings-updated-toast-icon svg{width:14px;height:14px;display:block}.scheduler-settings-fields--embedded .settings-field--spaced:first-of-type{margin-top:0;padding-top:0;border-top:none}.shift-schedule-panel{border-left:1px solid #e5e7eb;background:#fff;padding:14px 12px 14px 14px;position:relative;overflow:visible;display:flex;flex-direction:column;gap:10px;height:100%;min-height:0;min-width:0;box-sizing:border-box}.shift-schedule-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;min-height:calc(36px + 1vh);margin-left:.5vh}.shift-schedule-header h3{margin:0;font-size:1.5rem;color:#111827}.shift-schedule-header span{display:block;margin-top:2px;font-size:1rem;color:#6b7280;margin-bottom:.5vh}.shift-schedule-close-btn{margin-right:0}.shift-schedule-header-actions{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex-shrink:0}.shift-schedule-toolbar-row{display:flex;align-items:center;gap:6px}.shift-schedule-sort-wrap,.shift-schedule-filter-slot{position:relative}.shift-schedule-toolbar-btn{border:1px solid #d1d5db;border-radius:8px;background:#fff;padding:6px 8px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#374151;line-height:0}.shift-schedule-toolbar-btn:hover{background:#f9fafb;border-color:#9ca3af}.shift-schedule-toolbar-btn svg{width:18px;height:18px;display:block}.shift-schedule-sort-menu{position:absolute;right:0;top:calc(100% + 6px);min-width:160px;padding:6px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 10px 28px #0f172a1f;z-index:30;display:flex;flex-direction:column;gap:2px}.shift-schedule-sort-menu .sort-menu-item+.sort-menu-item{margin-top:2px}.shift-schedule-filter-dropdown{position:absolute;right:0;top:calc(100% + 6px);min-width:210px;padding:12px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 10px 28px #0f172a1f;z-index:30;display:flex;flex-direction:column;gap:10px}.shift-schedule-filter-field{display:flex;flex-direction:column;gap:4px}.shift-schedule-filter-field label{font-size:.7rem;font-weight:600;color:#4b5563}.shift-schedule-filter-field select{width:100%;height:34px;padding:0 8px;border:1px solid #d1d5db;border-radius:8px;font-size:.78rem;color:#111827;background:#fff;cursor:pointer}.shift-schedule-list{border:1px solid #e5e7eb;border-radius:10px;background:#fff;flex:1;min-height:0;min-width:0;max-height:78vh;overflow-y:scroll;scrollbar-gutter:stable}.shift-section{border-bottom:1px solid #e5e7eb}.shift-section-header{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:8px;background:#eceff3;padding:14px 16px 14px 14px;cursor:pointer;border:none}.shift-section-header.no-assign{grid-template-columns:1fr auto}.shift-section-header.collapsed{background:#eceff3}.shift-section-header.expanded{background:#d6dde6}.assign-shift-btn{border:none;border-radius:6px;background:#1f3f93;color:#fff;font-size:.68rem;font-weight:600;padding:6px 10px;min-width:84px;cursor:pointer}.shift-section-label{display:inline-flex;flex-direction:column;align-items:flex-start;gap:1vh}.shift-section-label-title{font-size:.88rem;color:#111827;font-weight:700;line-height:1.05}.shift-section-label-time{font-size:.66rem;color:#4b5563;font-weight:500;line-height:1.1}.shift-collapse-btn{border:none;background:transparent;color:#111827;font-size:1rem;font-weight:700;cursor:pointer;line-height:1;padding:0;width:18px}.shift-member-list{background:#fff}.shift-member-item{border-top:1px solid #eef2f7;padding:6px 16px 6px 14px;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:8px}.shift-member-item p{margin:0;font-size:.76rem;color:#111827;font-weight:600}.shift-member-empty{min-height:38px;align-items:center}.shift-member-item span{display:inline-block;margin-top:1px;font-size:.66rem;color:#6b7280}.shift-member-main{min-width:0}.shift-member-actions{display:contents}.shift-unassign-btn{border:none;border-radius:6px;background:#111827;color:#fff;font-size:.68rem;font-weight:600;padding:6px 10px;min-width:84px;cursor:pointer}.shift-remove-btn{border:none;background:transparent;color:#111827;font-size:.95rem;font-weight:700;cursor:pointer;width:18px;padding:0;justify-self:center}.shift-member-assign-slot{background:#e5e7eb}.shift-member-assign-slot .shift-member-main p{color:#111827}.shift-member-assign-slot .shift-member-main span{color:#6b7280}.shift-member-unassigned-meta strong{font-weight:700;color:#111827}.shift-member-item .shift-member-unit-cross-unit{display:inline-block;margin-top:1px;font-size:.66rem;font-weight:700;color:#dc2626;cursor:help}.shift-member-unit-row{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:0 4px}.shift-member-pto-hours{font-weight:600}.shift-member-item p.shift-member-double-scheduled-name,.shift-member-item.shift-member-double-scheduled .shift-member-main>p{color:#7f1d1d;font-weight:700}.shift-member-noshow{background:#111827}.shift-member-noshow p,.shift-member-noshow span,.shift-member-noshow .shift-remove-btn{color:#fff}.panel-close-btn{border:2px solid #9ca3af;border-radius:50%;background:#fff;color:#111827;font-size:1.1rem;font-weight:700;cursor:pointer;width:32px;height:32px;min-width:32px;min-height:32px;padding:0;line-height:1;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;box-sizing:border-box}.panel-close-btn:hover{background:#f3f4f6;border-color:#6b7280}.panel-close-btn:focus-visible{outline:2px solid #1f3f93;outline-offset:2px}.replacement-removal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;align-items:center;justify-content:center;background:#0f172a73;padding:1rem}.replacement-removal-dialog{width:min(100%,28rem);background:#fff;border-radius:12px;padding:1.25rem 1.35rem 1.1rem;box-shadow:0 18px 40px #0f172a2e}.replacement-removal-dialog h3{margin:0 0 .65rem;font-size:1.05rem;color:#111827}.replacement-removal-dialog p{margin:0 0 1rem;color:#374151;line-height:1.45}.replacement-removal-notify{display:flex;align-items:center;gap:.55rem;margin-bottom:1rem;color:#111827;font-size:.95rem}.replacement-removal-actions{display:flex;justify-content:flex-end;gap:.65rem}.replacement-removal-cancel,.replacement-removal-submit{border-radius:8px;padding:.45rem .85rem;font-size:.92rem;cursor:pointer}.replacement-removal-cancel{border:1px solid #d1d5db;background:#fff;color:#374151}.replacement-removal-submit{border:1px solid #b91c1c;background:#b91c1c;color:#fff}.replacement-removal-submit:disabled{opacity:.45;cursor:not-allowed}.shift-callout-badge,.employee-callout-badge{display:inline-flex;align-items:center;margin-left:.45rem;padding:.1rem .45rem;border-radius:999px;border:1px solid #dc2626;background:#fff;color:#dc2626;font-size:.72rem;font-weight:600;white-space:nowrap}.shift-cover-badge{display:inline-flex;align-items:center;margin-left:.45rem;padding:.1rem .45rem;border-radius:999px;border:1px solid #15803d;background:#fff;color:#15803d;font-size:.72rem;font-weight:600;white-space:nowrap;cursor:help}.employee-list-panel{--employee-header-height: 100px;--employee-list-base-width: 450px;--employee-list-scale: 1.1;--employee-layer-base: 0;--employee-layer-tooltip: 5;--employee-layer-menu: 10;position:absolute;top:-6px;right:100%;left:auto;width:calc(var(--employee-list-base-width) * var(--employee-list-scale));min-width:calc(var(--employee-list-base-width) * var(--employee-list-scale));height:101%;background:#fff;border:1px solid #d1d5db;border-right:1px solid #d1d5db;box-shadow:-8px 0 18px #0000001a;z-index:20;display:flex;flex-direction:column;overflow:visible;transition:max-height .28s ease,opacity .2s ease;max-height:110%;opacity:1;pointer-events:auto;isolation:isolate}.employee-list-panel.minimized{max-height:calc(var(--employee-header-height) + 1px)}.employee-list-header{padding:14px 14px 16px;border-bottom:1px solid #e5e7eb;display:flex;align-items:flex-start;justify-content:space-between;gap:8px;flex-shrink:0;min-height:var(--employee-header-height);box-sizing:border-box;cursor:pointer}.employee-list-title-wrap h3{margin:0;margin-top:1vh;font-size:1.5rem;color:#111827;line-height:1.1}.employee-list-title-wrap span{display:block;margin-top:1.2vh;padding-bottom:1vh;font-size:1rem;color:#6b7280;line-height:1.2}.employee-list-header-actions{display:flex;align-items:flex-start;gap:4px;padding-top:1px}.employee-list-action-btn{z-index:1}.employee-list-toolbar{flex-shrink:0;display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid #e5e7eb;background:#fafbfc;position:relative}.employee-list-search{flex:1 1 140px;min-width:0;height:34px;padding:0 10px;border:1px solid #d1d5db;border-radius:8px;font-size:.78rem;color:#111827;background:#fff}.employee-list-search::placeholder{color:#9ca3af}.employee-list-toolbar-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.employee-list-footer{flex-shrink:0;display:flex;align-items:center;justify-content:flex-end;gap:8px;min-height:56px;padding:14px;border-top:1px solid #e5e7eb;background:#fafbfc}.employee-list-assign-checked-btn{border:1px solid #1f3f93;border-radius:8px;background:#1f3f93;color:#fff;font-size:.78rem;font-weight:600;padding:11px 18px;cursor:pointer;white-space:nowrap}.employee-list-assign-checked-btn:hover:not(:disabled){background:#183578;border-color:#183578}.employee-list-assign-checked-btn:disabled{opacity:.45;cursor:not-allowed}.employee-list-sort-wrap,.employee-list-filter-wrap{position:relative;z-index:var(--employee-layer-menu)}.employee-list-icon-btn{border:1px solid #d1d5db;border-radius:8px;background:#fff;padding:6px 8px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#374151;line-height:0}.employee-list-icon-btn:hover{background:#f9fafb;border-color:#9ca3af}.employee-list-icon-btn svg{width:18px;height:18px;display:block}.employee-list-sort-menu{position:absolute;right:0;top:calc(100% + 6px);min-width:160px;padding:6px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 10px 28px #0f172a1f;z-index:var(--employee-layer-menu);display:flex;flex-direction:column;gap:2px}.employee-list-sort-menu .sort-menu-item+.sort-menu-item{margin-top:2px}.employee-list-filter-panel{position:absolute;right:0;top:calc(100% + 6px);width:min(240px,92vw);padding:12px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 10px 28px #0f172a1f;z-index:var(--employee-layer-menu);display:flex;flex-direction:column;gap:10px}.employee-list-filter-field{display:flex;flex-direction:column;gap:4px}.employee-list-filter-field label{font-size:.7rem;font-weight:600;color:#4b5563}.employee-list-filter-field select{width:100%;height:34px;padding:0 8px;border:1px solid #d1d5db;border-radius:8px;font-size:.78rem;color:#111827;background:#fff;cursor:pointer}.employee-list-filter-field select:disabled{opacity:.45;cursor:not-allowed;background:#f9fafb}.employee-list-filter-hint{font-size:.65rem;color:#6b7280;line-height:1.3}.employee-list-empty{margin:16px 2px;font-size:.8rem;color:#6b7280;text-align:center}.employee-list-body{flex:1;min-height:0;overflow:visible;display:flex;flex-direction:column;padding:0 8px;position:relative;z-index:var(--employee-layer-base)}.employee-list-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden}.employee-list-item{display:grid;grid-template-columns:44px minmax(0,1fr) max-content max-content;grid-template-rows:auto auto;row-gap:1.5vh;column-gap:0;align-items:center;border-bottom:1px solid #eef2f7;padding:2vh 0;position:relative;z-index:var(--employee-layer-base)}.employee-list-check{grid-column:1;grid-row:1 / -1;align-self:center;display:flex;align-items:center;justify-content:center;padding:0 .25vw 0 1vw;cursor:pointer}.employee-list-check input{width:15px;height:15px;margin:0;cursor:pointer;accent-color:#1f3f93}.employee-list-details{display:contents}.employee-list-name{grid-column:2;grid-row:1;align-self:center;margin:0;padding:0 1vw 0 .25vw;color:#111827;font-size:.8rem;font-weight:600;line-height:1.1}.employee-list-risk-col{grid-column:3;grid-row:1 / -1;align-self:center;display:flex;align-items:center;justify-content:flex-start;padding:0 1vw;flex-shrink:0}.employee-list-meta{grid-column:2;grid-row:2;align-self:start;display:block;margin:0;padding:0 1vw 0 .25vw;color:#6b7280;font-size:.7rem;font-weight:400;line-height:1.1}.employee-risk-badge{display:inline-flex;align-items:center;gap:5px;flex-shrink:0;font-size:.8rem;font-weight:600;line-height:1.15}.employee-risk-badge-dot{width:.55em;height:.55em;border-radius:50%;flex-shrink:0;align-self:center}.employee-risk-badge-label{border:1px solid transparent;border-radius:4px;padding:0 5px;line-height:1.1;text-transform:uppercase;letter-spacing:.1em}.employee-risk-badge--low .employee-risk-badge-dot{background:#22c55e}.employee-risk-badge--low .employee-risk-badge-label{color:#15803d;border-color:#22c55e}.employee-risk-badge--mid .employee-risk-badge-dot{background:#eab308}.employee-risk-badge--mid .employee-risk-badge-label{color:#a16207;border-color:#eab308}.employee-risk-badge--high .employee-risk-badge-dot{background:#ef4444}.employee-risk-badge--high .employee-risk-badge-label{color:#b91c1c;border-color:#ef4444}.employee-risk-loading{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;cursor:default}.employee-risk-tooltip-host{position:relative;display:inline-flex;align-items:center;cursor:default}.employee-risk-loading-spinner{width:14px;height:14px;border:2px solid rgba(31,63,147,.2);border-top-color:#1f3f93;border-radius:50%;animation:employee-risk-spin .85s linear infinite}.employee-risk-tooltip{padding:6px 10px;background:#111827;color:#fff;font-size:.68rem;font-weight:500;line-height:1.2;white-space:nowrap;border-radius:6px;box-shadow:0 8px 20px #0f172a2e;pointer-events:none}.employee-risk-tooltip--portaled{position:absolute;z-index:var(--employee-layer-tooltip)}.employee-risk-tooltip--fixed{opacity:1;visibility:visible}.employee-risk-tooltip--above:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#111827}.employee-risk-tooltip--below:after{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-bottom-color:#111827}.employee-assign-btn{grid-column:4;grid-row:1 / -1;align-self:center;border:none;border-radius:6px;background:#1f3f93;color:#fff;font-size:.72rem;font-weight:600;padding:5px 10px;line-height:1.1;cursor:pointer;margin:0 1vw;flex-shrink:0;white-space:nowrap}@keyframes employee-risk-spin{to{transform:rotate(360deg)}}.sort-menu-item{border:1px solid transparent;border-radius:6px;background:transparent;text-align:left;padding:8px 10px;font-size:.78rem;font-weight:500;color:#111827;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;box-sizing:border-box}.sort-menu-item:hover{background:#f3f4f6}.sort-menu-item.is-active{border-color:#3b82f6;background:#eff6ff;color:#1d4ed8;font-weight:600}.sort-menu-item.is-active:hover{background:#dbeafe}.sort-menu-item.is-disabled,.sort-menu-item:disabled{opacity:.45;cursor:not-allowed;color:#9ca3af}.sort-menu-item.is-disabled:hover,.sort-menu-item:disabled:hover{background:transparent}.sort-menu-item.is-disabled.is-active,.sort-menu-item:disabled.is-active{border-color:#cbd5e1;background:#f8fafc;color:#9ca3af}.sort-menu-item-label{min-width:0}.sort-menu-arrow{font-size:.85rem;line-height:1;flex-shrink:0;color:#2563eb}.calendar-mockup-page{position:relative;display:flex;flex-direction:column;height:100%;min-height:0;background:#f8fafc;overflow:hidden}.calendar-mockup-page.is-minimized{height:auto;min-height:0;overflow:visible}.calendar-mockup-combined-header{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 14px 10px;background:#fff;border-bottom:1px solid #e5e7eb}.calendar-mockup-combined-header-leading{flex-shrink:0;min-width:0;display:flex;align-items:center}.calendar-mockup-combined-header-leading-spacer{display:inline-block;min-width:1px;min-height:1px}.calendar-mockup-combined-header-trailing{display:inline-flex;align-items:center;flex-wrap:nowrap;justify-content:flex-end;gap:8px;min-width:0}.calendar-mockup-combined-header-trailing .calendar-mockup-toolbar-row{align-items:center}.calendar-mockup-window-actions{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.calendar-mockup-chrome-icon-btn{width:30px;height:30px;border:1px solid #d1d5db;border-radius:6px;background:#fff;cursor:pointer;font-weight:700;font-size:.95rem;color:#111827;line-height:1;display:inline-flex;align-items:center;justify-content:center}.calendar-mockup-chrome-icon-btn:hover{background:#f3f4f6;border-color:#9ca3af}.calendar-mockup-minimized-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;background:#fff}.calendar-mockup-minimized-label{font-size:.9rem;font-weight:600;color:#111827}.calendar-mockup-intro{flex-shrink:0;padding:16px 20px 12px;background:#fff;border-bottom:1px solid #e5e7eb}.calendar-mockup-title{margin:0 0 8px;font-size:1.25rem;font-weight:600;color:#111827;text-align:left}.calendar-mockup-desc{margin:0;max-width:72ch;font-size:.9rem;color:#4b5563;line-height:1.45}.calendar-mockup-split{flex:1;min-height:0;display:grid;grid-template-columns:1fr 410px;grid-template-rows:1fr;align-items:stretch;overflow:visible;position:relative;z-index:0}.calendar-mockup-left{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;background:#f8fafc}.calendar-mockup-calendar{flex:1;min-height:0;padding:16px 18px;overflow:auto;min-width:0}.calendar-mockup-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-bottom:8px;padding:0 4px}.calendar-mockup-weekdays span{font-size:.72rem;font-weight:600;color:#6b7280;text-align:center}.calendar-mockup-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.calendar-mockup-cell{border:1px solid #e5e7eb;border-radius:10px;background:#fff;padding:8px 8px 10px;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:6px;min-height:120px;transition:border-color .15s,box-shadow .15s}.calendar-mockup-cell:hover{border-color:#93c5fd}.calendar-mockup-cell.is-selected{border-color:#1f3f93;box-shadow:0 0 0 2px #1f3f9326}.calendar-mockup-cell-daynum{font-size:.85rem;font-weight:700;color:#111827}.calendar-mockup-slots{display:flex;flex-direction:column;gap:4px;flex:1}.calendar-mockup-slot{border-radius:6px;background:#e5e7eb;border:1px solid #d1d5db;padding:4px 6px;font-size:.65rem;font-weight:600;color:#374151;line-height:1.25;display:flex;justify-content:space-between;align-items:center;gap:4px}.calendar-mockup-slot-label{flex:1;min-width:0}.calendar-mockup-slot-count{flex-shrink:0;font-variant-numeric:tabular-nums}.calendar-mockup-slot.is-autogen-assigned{background:#fef9c3;border:2px solid #eab308;color:#713f12;box-shadow:0 0 0 1px #eab30859}.calendar-mockup-shift-editor{background:#fff;display:flex;flex-direction:column;min-height:0;min-width:0;overflow:visible;align-self:stretch;position:relative;z-index:1}.calendar-mockup-shift-editor .shift-schedule-panel>.employee-list-panel{z-index:45;box-shadow:-10px 0 32px #0f172a33;top:0;bottom:0;height:100%;max-height:none}.calendar-mockup-shift-editor .shift-schedule-panel>.employee-list-panel .employee-list-body,.calendar-mockup-shift-editor .shift-schedule-panel>.employee-list-panel .employee-list-scroll{flex:1;min-height:0}.calendar-mockup-shift-editor .shift-schedule-panel>.employee-list-panel .employee-list-scroll{overflow-y:auto}.calendar-mockup-shift-editor>.shift-schedule-panel{flex:1;min-height:0;border-left:1px solid #e5e7eb;overflow:visible}.calendar-mockup-shift-editor .shift-schedule-list{max-height:none}.calendar-mockup-shift-editor .shift-schedule-header.calendar-mockup-shift-editor-title{justify-content:flex-start}.calendar-mockup-shift-editor .shift-member-item,.calendar-mockup-shift-editor .shift-member-item.shift-member-pending,.calendar-mockup-shift-editor .shift-member-item.shift-member-accepted,.calendar-mockup-shift-editor .shift-member-item.shift-member-declined,.calendar-mockup-shift-editor .shift-member-item.shift-member-completed,.calendar-mockup-shift-editor .shift-member-item.shift-member-noshow{background:#fff!important;border-color:#d1d5db!important;color:#111827!important}.calendar-mockup-shift-editor .shift-member-item.is-autogen-placed{border:2px solid #eab308!important;box-shadow:0 0 0 1px #eab30859}.calendar-mockup-shift-editor .shift-member-item p,.calendar-mockup-shift-editor .shift-member-item span{color:#111827!important}.calendar-mockup-shift-editor .shift-member-assign-slot{background:#e5e7eb!important;border-color:#cbd5e1!important;color:#374151!important}.calendar-mockup-shift-editor .shift-member-assign-slot .shift-member-main p,.calendar-mockup-shift-editor .shift-member-assign-slot .shift-member-main span{color:#4b5563!important}.calendar-mockup-shift-editor .shift-remove-btn{color:#111827!important}.calendar-mockup-shift-editor .shift-unassign-btn{color:#fff!important;background:#111827!important;border:none!important}.calendar-mockup-shift-editor .shift-unassign-btn:hover{background:#374151!important;color:#fff!important}.calendar-mockup-editor-footer{flex-shrink:0;padding:12px 14px;border-top:1px solid #e5e7eb;background:#fff;display:flex;flex-direction:column;align-items:stretch}.calendar-mockup-go-back-btn{align-self:flex-start;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#111827;font-size:.88rem;font-weight:600;padding:8px 14px;cursor:pointer}.calendar-mockup-go-back-btn:hover{background:#f3f4f6;border-color:#9ca3af}.calendar-mockup-submit-schedule-btn{width:100%;border:none;border-radius:8px;background:#1f3f93;color:#fff;height:40px;font-size:.88rem;font-weight:700;cursor:pointer}.calendar-mockup-submit-schedule-btn:hover{background:#1a3479}.calendar-mockup-sort-wrap{position:relative}.calendar-mockup-toolbar-row{display:flex;flex-direction:row;align-items:flex-start;gap:8px}.calendar-mockup-sort-btn{border:1px solid #d1d5db;border-radius:8px;background:#fff;padding:6px 8px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#374151;line-height:0}.calendar-mockup-sort-btn:hover{background:#f9fafb;border-color:#9ca3af}.calendar-mockup-sort-btn svg{width:18px;height:18px;display:block}.calendar-mockup-sort-dropdown{position:absolute;right:0;top:calc(100% + 6px);min-width:180px;padding:10px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 10px 28px #0f172a1f;z-index:30;display:flex;flex-direction:column;gap:6px}.calendar-mockup-sort-dropdown .sort-menu-item+.sort-menu-item{margin-top:2px}@media (max-width: 1080px){.calendar-mockup-split{grid-template-columns:1fr;grid-template-rows:auto 1fr}.calendar-mockup-left{max-height:52vh}.calendar-mockup-shift-editor>.shift-schedule-panel{border-left:none;border-top:1px solid #e5e7eb;max-height:48vh}}.auto-generate-shell{position:fixed;top:8vh;left:0;right:0;bottom:0;height:92vh;padding:0;background:#f8fafc;display:flex;align-items:stretch;justify-content:center;animation:autoSlideUp .26s ease-out forwards;z-index:20;overflow:hidden}.auto-generate-shell.is-closing{animation:autoSlideDown .26s ease-in forwards}.auto-generate-modal{width:100%;height:100%;border:none;border-radius:0;background:#fff;box-shadow:none;padding:14px 18px 12px;display:flex;flex-direction:column;gap:12px;pointer-events:auto}.auto-generate-modal-body{position:relative;flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.auto-generate-form-plane{flex:1;min-height:0;width:100%;display:flex;flex-direction:column;overflow:hidden}.auto-generate-form-layout{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;gap:12px}.auto-generate-form-fixed-top{flex-shrink:0;display:flex;flex-direction:column;gap:12px}.auto-generate-form-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch}.auto-generate-modal.is-minimized{height:auto;min-height:54px;width:min(360px,92vw);border-radius:10px;border:1px solid #cbd5e1;box-shadow:0 8px 24px #0f172a33;padding:10px 12px;gap:0}.auto-generate-shell.is-minimized{background:transparent;justify-content:flex-end;align-items:flex-end;padding:0 14px 12px;pointer-events:none}.auto-generate-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e5e7eb;padding-bottom:8px;margin-left:1vw;margin-right:1vw}.auto-generate-modal.is-minimized .auto-generate-header{border-bottom:none;padding-bottom:0;margin-left:0;margin-right:0}.auto-generate-header-main{display:flex;flex-direction:column;gap:8px;min-width:0}.auto-generate-toggle-row--with-ai{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.auto-ai-suggestion-btn{margin-left:auto}.auto-ai-screen-header{display:flex;align-items:center;justify-content:space-between;flex-shrink:0;padding-bottom:8px;margin-bottom:4px;border-bottom:1px solid #e5e7eb}.auto-ai-screen-title{margin:0;font-size:1rem;font-weight:700;color:#111827}.auto-generate-generate-tab{flex:1;min-height:0;gap:0;margin-left:1vw;margin-right:1vw}.auto-generate-generate-tab .auto-start-date-row{margin-bottom:2vh}.auto-generate-generate-tab .auto-generate-form-fixed-top,.auto-generate-generate-tab .auto-generate-generate-scroll,.auto-generate-generate-tab .auto-generate-footer{width:100%;box-sizing:border-box}.auto-generate-generate-tab .auto-generate-toggle-row--with-ai{width:100%}.auto-generate-generate-scroll{flex:1;min-height:0;display:flex;flex-direction:column;margin-bottom:1vh;overflow:hidden}.auto-generate-generate-scroll>.auto-generate-settings-window{flex:1;min-height:0;width:101%;max-width:105%;box-sizing:border-box;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.auto-generate-settings-window{padding:12px 0}.auto-generate-settings-window .scheduler-settings-fields--embedded,.auto-generate-settings-window>.settings-field-desc{margin-left:1vw;margin-right:1vw}.auto-generate-header h2{margin:0;font-size:1.1rem;color:#111827}.auto-generate-modal.is-minimized .auto-generate-header h2{font-size:.9rem;font-weight:700}.auto-generate-header-actions{display:inline-flex;align-items:center;gap:8px}.auto-generate-icon-btn{width:28px;height:28px;border:1px solid #d1d5db;border-radius:6px;background:#fff;cursor:pointer;font-weight:700;color:#111827}.auto-generate-toggle-row{display:inline-flex;align-items:center;gap:8px}.auto-mode-btn{border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#334155;padding:7px 12px;font-size:.86rem;font-weight:600;cursor:pointer}.auto-mode-btn.active{background:#1f3f93;border-color:#1f3f93;color:#fff}.auto-start-date-row{display:flex;align-items:center;gap:10px}.auto-start-date-row label,.auto-start-date-row-label{font-size:.86rem;color:#374151;font-weight:600}.auto-autofill-calendar-sync{margin:0;flex:1;font-size:.86rem;color:#475569;line-height:1.35}.auto-start-date-row input{height:34px;border:1px solid #cbd5e1;border-radius:8px;padding:0 10px}.auto-generate-generate-tab .auto-start-date-row:has(.auto-custom-window-fields){align-items:stretch}.auto-custom-window-fields{display:flex;flex-direction:column;gap:10px;width:100%}.auto-custom-window-fields-row{display:flex;align-items:flex-end;gap:12px;width:100%}.auto-custom-window-field{display:flex;flex-direction:column;gap:6px;min-width:0}.auto-custom-window-field--date{flex:0 1 45%;max-width:45%}.auto-custom-window-field--date input{width:100%;box-sizing:border-box}.auto-custom-window-field--days{flex:0 0 auto;min-width:130px}.auto-custom-window-field--unit-picker{flex:1 1 0;max-width:45%}.auto-custom-day-count-input{width:130px}.auto-custom-unit-picker{width:100%;height:34px;border:1px solid #cbd5e1;border-radius:8px;padding:0 10px;background:#fff;box-sizing:border-box}.auto-generate-fields-window{border:1px solid #e5e7eb;border-radius:10px;background:#f8fafc;padding:10px}.auto-generate-instruction{margin:0;font-size:.86rem;color:#1f2937;font-weight:600}.auto-generate-subtext{margin:4px 0 10px;font-size:.75rem;color:#6b7280}.auto-generate-sections{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:10px;padding-right:4px}.auto-generate-sections--stacked{grid-template-columns:1fr}.auto-day-section{border:1px solid #d1d5db;border-radius:8px;background:#fff;padding:8px;min-width:0}.auto-day-section h4{margin:0 0 8px;font-size:.8rem;color:#111827}.auto-day-fields{display:flex;flex-direction:column;gap:7px}.auto-day-fields--generate{gap:12px}.auto-shift-block{border:1px solid #e5e7eb;border-radius:8px;padding:8px 10px;background:#fafbfc}.auto-shift-block-title{font-size:.78rem;font-weight:700;color:#1e293b;margin-bottom:8px}.auto-shift-mode-wrap{display:flex;flex-direction:column;gap:10px}.auto-shift-control-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px}.auto-shift-headcount-input{width:76px;height:34px;flex-shrink:0;border:1px solid #cbd5e1;border-radius:7px;padding:0 8px;font-size:.86rem;box-sizing:border-box}.auto-shift-revert-x-btn{width:76px;height:34px;flex-shrink:0;border:1px solid #cbd5e1;border-radius:7px;background:#f1f5f9;color:#475569;font-size:1.25rem;line-height:1;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0;box-sizing:border-box}.auto-shift-revert-x-btn:hover{background:#e2e8f0;color:#1e293b}.auto-shift-select-units-btn{border:1px solid #1f3f93;border-radius:8px;background:#fff;color:#1f3f93;font-size:.76rem;font-weight:600;padding:8px 14px;cursor:pointer;white-space:normal;text-align:center;max-width:100%}.auto-shift-select-units-btn:hover{background:#eff6ff}.auto-shift-unit-disclosures{display:flex;flex-direction:column;gap:6px}.auto-unit-disclosure{border:1px solid #d1d5db;border-radius:7px;background:#fff;margin-bottom:6px}.auto-unit-disclosure:last-child{margin-bottom:0}.auto-unit-disclosure-summary{cursor:pointer;list-style:none;font-size:.76rem;font-weight:700;color:#334155;padding:7px 10px;-webkit-user-select:none;user-select:none}.auto-unit-disclosure-summary::-webkit-details-marker{display:none}.auto-unit-disclosure-summary:before{content:"";display:inline-block;width:0;height:0;margin-right:7px;border-left:5px solid #64748b;border-top:4px solid transparent;border-bottom:4px solid transparent;transform:translateY(-1px);transition:transform .15s ease}.auto-unit-disclosure[open]>.auto-unit-disclosure-summary:before{transform:rotate(90deg) translate(1px)}.auto-unit-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px 28px;padding:12px 10px 10px;border-top:1px solid #e5e7eb;margin-top:0}.auto-unit-field{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.76rem;color:#374151;min-width:0;padding:8px 18px 8px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;box-sizing:border-box}.auto-unit-field-label{font-weight:600;color:#475569;flex-shrink:0}.auto-unit-field input{width:76px;height:30px;flex-shrink:0;margin-left:auto;border:1px solid #cbd5e1;border-radius:7px;padding:0 8px;background:#fff}.auto-day-fields--autofill{display:grid;grid-template-columns:1fr auto;column-gap:10px;row-gap:7px;align-items:center}.auto-day-fields--autofill .auto-shift-field{display:contents}.auto-day-fields--autofill .auto-unassigned-value{justify-self:stretch;text-align:right}.auto-shift-field{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.76rem;color:#374151}.auto-shift-field input{width:76px;height:30px;border:1px solid #cbd5e1;border-radius:7px;padding:0 8px}.auto-unassigned-value{font-size:.75rem;color:#92400e;font-weight:700;background:#fef3c7;border:1px solid #f59e0b;border-radius:6px;padding:4px 8px}.auto-generate-generate-tab .auto-generate-footer{justify-content:flex-end}.auto-generate-footer{display:flex;align-items:center;justify-content:space-between}.auto-generate-footer--bar{flex-shrink:0;margin-top:0;padding-top:12px;border-top:1px solid #e5e7eb;background:#fff}.auto-settings-btn{border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#334155;height:36px;padding:0 12px;display:inline-flex;align-items:center;gap:7px;cursor:pointer;font-weight:600}.auto-settings-gear-icon{width:17px;height:17px;display:block;flex-shrink:0;color:#475569}.auto-submit-btn{border:none;border-radius:8px;background:#1f3f93;color:#fff;height:38px;padding:0 20px;font-size:.88rem;font-weight:700;cursor:pointer}@keyframes autoSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes autoSlideDown{0%{transform:translateY(0)}to{transform:translateY(100%)}}.auto-settings-overlay-shell{position:absolute;top:0;right:0;bottom:0;left:0;z-index:25;display:flex;flex-direction:column;pointer-events:auto}.auto-settings-overlay-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a73;animation:autoSettingsFadeIn .2s ease-out forwards}.auto-settings-overlay-panel{position:relative;z-index:1;flex:1;min-height:0;display:flex;flex-direction:column;background:#fff;overflow:hidden}.auto-settings-overlay-header{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-shrink:0;padding:10px 18px;border-bottom:1px solid #e5e7eb;background:#fff}.auto-settings-overlay-header h2{margin:0;font-size:1.05rem;color:#111827}.auto-settings-overlay-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:12px 18px 16px;scrollbar-gutter:stable}.auto-settings-overlay-desc{margin:0 0 12px;font-size:.78rem;color:#64748b;line-height:1.45}.auto-settings-fields{display:flex;flex-direction:column;gap:10px;padding-right:2px}.auto-settings-units-disclosure{border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc;padding:0 10px 8px}.auto-settings-units-summary{cursor:pointer;font-size:.8rem;font-weight:700;color:#1e293b;padding:10px 4px 8px;list-style:none}.auto-settings-units-summary::-webkit-details-marker{display:none}.auto-settings-units-summary:before{content:"▸";display:inline-block;margin-right:6px;font-size:.65rem;transform:translateY(-1px);color:#64748b}.auto-settings-units-disclosure[open]>.auto-settings-units-summary:before{content:"▾"}.auto-settings-units-inner{display:flex;flex-direction:column;gap:10px;margin-top:2px;padding:10px 4px 4px 14px;border-top:1px solid #e2e8f0}.auto-settings-field{display:flex;flex-direction:column;gap:4px}.auto-settings-label{font-size:.76rem;font-weight:600;color:#334155}.auto-settings-field input{width:100%;max-width:120px;height:34px;border:1px solid #cbd5e1;border-radius:8px;padding:0 10px;font-size:.85rem;color:#111827;background:#fff}.auto-settings-overlay-footer{display:flex;justify-content:flex-end;gap:10px;flex-shrink:0;padding:12px 18px;border-top:1px solid #e5e7eb;background:#fff}.auto-settings-cancel-btn{border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#334155;height:36px;padding:0 14px;font-size:.82rem;font-weight:600;cursor:pointer}.auto-settings-apply-btn{border:none;border-radius:8px;background:#1f3f93;color:#fff;height:36px;padding:0 16px;font-size:.82rem;font-weight:700;cursor:pointer}@keyframes autoSettingsFadeIn{0%{opacity:0}to{opacity:1}}.auto-generate-transition-root{position:relative;flex:1;min-height:0;display:flex;flex-direction:column}.auto-generate-transition-root.mockup-open{flex:1;min-height:clamp(320px,62vh,900px)}.auto-generate-transition-root.mockup-open .auto-generate-form-plane,.auto-generate-transition-root.mockup-open .auto-generate-mockup-plane{position:absolute;left:0;right:0;top:0;bottom:0;overflow:hidden;transition:transform .42s cubic-bezier(.4,0,.2,1);will-change:transform}.auto-generate-transition-root.mockup-open .auto-generate-form-plane{transform:translate(0)}.auto-generate-transition-root.mockup-open.slide-active .auto-generate-form-plane{transform:translate(-100%)}.auto-generate-transition-root.mockup-open .auto-generate-mockup-plane{transform:translate(100%)}.auto-generate-transition-root.mockup-open.slide-active .auto-generate-mockup-plane{transform:translate(0)}.auto-generate-mockup-plane .calendar-mockup-page{height:100%;min-height:0}.auto-generate-modal.is-minimized.auto-generate-modal--mockup-only-minimized .auto-generate-modal-body{flex:0 1 auto;min-height:0;overflow:visible}.auto-generate-modal.is-minimized.auto-generate-modal--mockup-only-minimized .auto-generate-transition-root.mockup-open{min-height:0;flex:0 0 auto}.auto-generate-modal.is-minimized.auto-generate-modal--mockup-only-minimized .auto-generate-transition-root.mockup-open .auto-generate-form-plane{display:none}.auto-generate-modal.is-minimized.auto-generate-modal--mockup-only-minimized .auto-generate-transition-root.mockup-open .auto-generate-mockup-plane{position:relative;inset:auto;left:auto;right:auto;top:auto;bottom:auto;overflow:visible;transform:none!important}.auto-generate-transition-root.mockup-open.is-mockup-minimized{min-height:0}.auto-generate-mockup-plane.is-mockup-plane-minimized .calendar-mockup-page{height:auto;min-height:0}.pto-blocked{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;align-items:center;justify-content:center}.pto-blocked-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a73}.pto-blocked-dialog{position:relative;z-index:1;width:min(420px,calc(100vw - 2rem));padding:1.25rem 1.5rem;border-radius:10px;background:#fff;box-shadow:0 12px 40px #0f172a33}.pto-blocked-dialog h3{margin:0 0 .75rem;font-size:1.125rem}.pto-blocked-dialog p{margin:0;color:#334155;line-height:1.5}.pto-blocked-actions{margin-top:1.25rem;display:flex;justify-content:flex-end}.pto-blocked-btn{border:1px solid #cbd5e1;border-radius:6px;padding:.45rem 1rem;background:#fff;cursor:pointer}.pto-blocked-btn--primary{border-color:#1d4ed8;background:#2563eb;color:#fff}.calendar-print-preview{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1300;display:flex;align-items:center;justify-content:center;padding:1.5rem}.calendar-print-preview-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a80}.calendar-print-preview-dialog{position:relative;z-index:1;width:min(96vw,1200px);max-height:calc(100vh - 3rem);display:flex;flex-direction:column;background:#fff;border-radius:12px;box-shadow:0 20px 48px #0f172a38;overflow:hidden}.calendar-print-preview-chrome{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid #e5e7eb;background:#f8fafc}.calendar-print-preview-chrome h2{margin:0;font-size:1.1rem;color:#111827}.calendar-print-preview-actions{display:flex;align-items:center;gap:.5rem}.calendar-print-preview-grouping{display:inline-flex;align-items:center;gap:.4rem}.calendar-print-preview-grouping-label{font-size:.82rem;font-weight:600;color:#4b5563}.calendar-print-preview-grouping-select{height:34px;padding:0 .55rem;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#111827;font-size:.85rem;font-weight:600;cursor:pointer}.calendar-print-preview-grouping-select:focus{outline:2px solid rgba(31,63,147,.25);border-color:#1f3f93}.calendar-print-unit-groups{display:flex;flex-direction:column;gap:.35rem}.calendar-print-unit-group+.calendar-print-unit-group{margin-top:.15rem;padding-top:.3rem;border-top:1px dashed #d1d5db}.calendar-print-unit-label{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:#374151;margin-bottom:.15rem}.calendar-print-preview-btn{border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#111827;font-size:.85rem;font-weight:600;padding:.45rem .9rem;cursor:pointer}.calendar-print-preview-btn--primary{border-color:#1f3f93;background:#1f3f93;color:#fff}.calendar-print-preview-body{flex:1;min-height:0;overflow:auto;padding:1.25rem;background:#e5e7eb}.calendar-print-sheet{margin:0 auto;max-width:10.5in;padding:1rem 1.25rem 1.5rem;background:#fff;color:#111827}.calendar-print-sheet-header{margin-bottom:1.25rem;text-align:center;border-bottom:2px solid #111827;padding-bottom:.75rem}.calendar-print-sheet-header h1{margin:0;font-size:1.35rem;font-weight:700;letter-spacing:.01em}.calendar-print-sheet-subtitle{margin:0 0 .5rem;font-size:1rem;font-weight:600;color:#374151}.calendar-print-preview-status{margin:2rem auto;max-width:28rem;text-align:center;font-size:.95rem;color:#374151}.calendar-print-preview-status--error{color:#b91c1c}.calendar-print-week-block+.calendar-print-week-block{margin-top:1.5rem;page-break-before:auto}.calendar-print-week-title{margin:0 0 .5rem;font-size:.95rem;font-weight:600;color:#374151}.calendar-print-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:.72rem}.calendar-print-table th,.calendar-print-table td{border:1px solid #9ca3af;vertical-align:top;padding:.35rem .4rem;word-break:break-word}.calendar-print-table thead th{background:#eceff3;text-align:center;font-weight:700}.calendar-print-corner-cell{width:4.5rem;text-align:left}.calendar-print-col-weekday{display:block;font-size:.72rem;font-weight:700}.calendar-print-col-date{display:block;margin-top:.1rem;font-size:.66rem;font-weight:500;color:#4b5563}.calendar-print-row-header{background:#f3f4f6;font-weight:700;text-align:left;white-space:nowrap}.calendar-print-name-list{margin:0;padding:0;list-style:none}.calendar-print-name-list li+li{margin-top:.2rem}@media print{@page{size:landscape;margin:.45in}body{background:#fff}.calendar-page-shell,.staff-manager-page{visibility:hidden}.calendar-print-preview,.calendar-print-preview *{visibility:visible}.calendar-print-preview{position:absolute;top:0;right:0;bottom:0;left:0;padding:0;display:block;background:#fff}.calendar-print-preview-backdrop,.calendar-print-preview-chrome{display:none!important}.calendar-print-preview-dialog{width:100%;max-height:none;border-radius:0;box-shadow:none;overflow:visible}.calendar-print-preview-body{overflow:visible;padding:0;background:#fff}.calendar-print-sheet{max-width:none;padding:0}.calendar-print-week-block{break-inside:avoid-page}.calendar-print-table{font-size:.62rem}.calendar-print-unit-label{font-size:.55rem}}.calendar-page-shell{height:100vh;background:#f8fafc;overflow:hidden}.calendar-layout{height:92vh;position:relative;display:grid;grid-template-columns:1vw minmax(0,1fr) 410px;overflow:hidden}.calendar-main{grid-column:2;padding:22px;overflow:hidden;min-width:0}.call-queue-panel{grid-column:3;width:100%;max-width:100%;min-width:0;border-left:1px solid #e5e7eb;background:#fff;padding:14px 12px;display:flex;flex-direction:column;gap:12px;height:100%;min-height:0}.calendar-layout>.shift-schedule-panel{grid-column:3;width:100%;max-width:100%;min-width:0}.queue-metric-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.queue-metric-card{border:1px solid #e5e7eb;border-radius:8px;padding:8px 10px;background:#fff}.queue-metric-card h4{margin:0 0 4px;font-size:.7rem;color:#6b7280;text-transform:uppercase}.queue-metric-card p{margin:0;font-size:1.45rem;font-weight:700;color:#111827}.queue-metric-card span{font-size:.68rem;color:#9ca3af}.queue-metric-open p{color:#d97706}.queue-metric-noshow p{color:#dc2626}.queue-metric-unassigned p{color:#d97706}.queue-sort-menu .sort-menu-item+.sort-menu-item{margin-top:2px}.queue-item.queue-coverage{cursor:pointer}.queue-coverage-status{font-size:.7rem;font-weight:700;white-space:nowrap}.queue-item.queue-coverage-noshow{background:#dc2626;color:#fff;border-bottom-color:#ffffff26}.queue-item.queue-coverage-noshow:hover{background:#b91c1c}.queue-item.queue-coverage-noshow .queue-item-name-row p,.queue-item.queue-coverage-noshow .queue-unit,.queue-item.queue-coverage-noshow .queue-coverage-status,.queue-item.queue-coverage-noshow .queue-assignment-label,.queue-item.queue-coverage-noshow .queue-assignment-value,.queue-item.queue-coverage-noshow .queue-assignment-shift{color:#fff}.queue-item.queue-coverage-noshow .queue-assignment{background:#ffffff1f;border-color:#ffffff47}.queue-item.queue-coverage-unassigned{background:#e5e7eb;color:#111827;border-bottom-color:#d1d5db}.queue-item.queue-coverage-unassigned:hover{background:#d1d5db}.queue-item.queue-coverage-unassigned .queue-item-name-row p,.queue-item.queue-coverage-unassigned .queue-coverage-status,.queue-item.queue-coverage-unassigned .queue-assignment-value{color:#111827}.queue-item.queue-coverage-unassigned .queue-unit,.queue-item.queue-coverage-unassigned .queue-assignment-label,.queue-item.queue-coverage-unassigned .queue-assignment-shift{color:#1f2937}.queue-item.queue-coverage-unassigned .queue-assignment{background:#ffffffa6;border-color:#9ca3af}.queue-item.queue-coverage .queue-assignment-shift strong{font-weight:700;color:#111827}.queue-list-header{display:flex;align-items:center;justify-content:space-between}.queue-list-header h3{margin:0;font-size:1rem;color:#111827}.queue-clear-all-btn{height:30px;padding:0 12px;font-size:.78rem}.queue-clear-btn{border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#6b7280;font-size:.72rem;padding:4px 10px;cursor:pointer}.queue-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px}.queue-toolbar-search{flex:1 1 auto;min-width:0;width:auto;max-width:none;border:1px solid #d1d5db;border-radius:8px;height:34px;padding:0 10px;font-size:.8rem;color:#111827;background:#fff}.queue-toolbar-actions{display:flex;align-items:center;gap:6px;flex:0 0 auto;justify-content:flex-end}.queue-sort-wrap,.queue-filter-wrap{position:relative}.queue-icon-btn{border:1px solid #d1d5db;border-radius:8px;background:#fff;padding:6px 8px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#374151;line-height:0}.queue-icon-btn:hover{background:#f9fafb;border-color:#9ca3af}.queue-icon-btn svg{width:18px;height:18px;display:block}.queue-sort-menu{position:absolute;right:0;top:calc(100% + 6px);min-width:188px;padding:6px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 10px 28px #0f172a1f;z-index:25;display:flex;flex-direction:column;gap:2px}.queue-filter-dropdown{position:absolute;right:0;top:calc(100% + 6px);min-width:200px;width:max-content;max-width:min(260px,92vw);padding:10px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 10px 28px #0f172a1f;z-index:25;display:flex;flex-direction:column;gap:8px}.queue-filter-dropdown label{font-size:.68rem;font-weight:600;color:#4b5563}.queue-filter-dropdown select{width:100%;height:34px;padding:0 8px;border:1px solid #d1d5db;border-radius:8px;font-size:.75rem;color:#111827;background:#fff;cursor:pointer}.queue-list-box{border:1px solid #e5e7eb;border-radius:10px;background:#fff;flex:1;min-height:0;overflow-y:auto}.queue-empty-text{margin:12px 0 0;text-align:center;color:#6b7280;font-size:.84rem}.queue-item{border-bottom:1px solid #e5e7eb;padding:10px;display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.queue-item:last-child{border-bottom:none}.queue-item-main{flex:1}.queue-item-name-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.queue-item-name-row p{margin:0;font-size:.82rem;color:#111827;font-weight:600}.queue-unit{display:block;margin-top:3px;font-size:.72rem;color:#6b7280}.queue-assignment{display:flex;flex-direction:column;gap:2px;margin-top:6px;padding:6px 8px;border-radius:6px;background:#ffffff8c;border:1px solid rgba(209,213,219,.9)}.queue-assignment-label{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#6b7280}.queue-assignment-value{font-size:.74rem;font-weight:600;color:#374151}.queue-assignment-shift{font-size:.72rem;color:#4b5563;line-height:1.35}.queue-status{font-size:.7rem;font-weight:700}.pending-status{display:inline-flex;align-items:center;gap:3px;color:#92400e}.declined-status{color:#fff}.loading-dots span{animation:queueDotPulse 1.2s infinite}.loading-dots span:nth-child(2){animation-delay:.15s}.loading-dots span:nth-child(3){animation-delay:.3s}@keyframes queueDotPulse{0%,80%,to{opacity:.25}40%{opacity:1}}.queue-item-actions{display:flex;align-items:center;gap:8px}.queue-accept-btn{border:none;border-radius:6px;background:#111827;color:#fff;font-size:.7rem;padding:5px 8px;cursor:pointer}.queue-remove-btn{border:none;background:transparent;color:#111827;font-size:.9rem;font-weight:700;cursor:pointer}.queue-pending{background:#fef3c7}.queue-accepted{background:#22c55e}.queue-accepted .queue-item-name-row p,.queue-accepted .queue-unit,.queue-accepted .queue-assignment,.queue-accepted .queue-assignment-label,.queue-accepted .queue-assignment-value,.queue-accepted .queue-assignment-shift{color:#052e16}.queue-declined{background:#ef4444}.queue-declined .queue-item-name-row p,.queue-declined .queue-unit,.queue-declined .queue-assignment,.queue-declined .queue-assignment-label,.queue-declined .queue-assignment-value,.queue-declined .queue-assignment-shift,.queue-declined .queue-remove-btn{color:#fff}.calendar-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;column-gap:7.4vw;margin-top:1vh;margin-bottom:0vh;min-height:40px}.calendar-legends{display:grid;grid-template-columns:repeat(2,1fr);row-gap:1vh;column-gap:1vw;justify-self:end;width:100%;max-width:360px;min-width:260px;align-items:center;margin-top:-.5vh}.legend-item{display:inline-flex;align-items:center;gap:6px;justify-self:center;justify-content:flex-start;width:100%;max-width:180px;min-width:0;color:#6b7280;font-size:.78rem;font-weight:500;white-space:nowrap;margin-top:-.5vh}.legend-dot{width:10px;height:10px;min-width:10px;min-height:10px;flex-shrink:0;box-sizing:border-box;border-radius:50%;display:inline-block}.legend-white{background:#fff;border:1px solid #cbd5e1}.legend-yellow{background:#facc15;border:1px solid #ca8a04}.legend-green{background:#22c55e}.legend-grey{background:#9ca3af}.legend-red{background:#dc2626;border:1px solid #b91c1c}.legend-black{background:#111827;border:1px solid #000000}.legend-pink{background:#f9a8d4;border:1px solid #f472b6}.calendar-date-controls{display:flex;align-items:center;gap:14px;justify-self:center}.calendar-toolbar h1{margin:0;width:280px;text-align:center;white-space:nowrap;font-size:1.2rem;color:#111827}.month-nav-btn{width:36px;height:36px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#111827;cursor:pointer}.print-schedule-btn{border:none;border-radius:8px;background:#1f3f93;color:#fff;height:38px;padding:0 16px;font-size:.9rem;font-weight:600;cursor:pointer}.auto-generate-schedule-btn{flex-shrink:0;white-space:nowrap;padding:0 22px;min-width:12.5rem}.print-icon-btn{width:44px;padding:0;display:inline-flex;align-items:center;justify-content:center}.print-icon-btn svg{width:18px;height:18px;display:block}.calendar-print-actions{display:flex;align-items:center;gap:10px;justify-self:end}.calendar-divider{width:90%;height:1px;background:#d1d5db;margin:4vh auto}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(90px,1fr));gap:8px}.calendar-weekday{text-align:center;color:#6b7280;font-weight:600;font-size:.86rem;padding-bottom:4px}.calendar-cell{height:142px;border:1px solid #e5e7eb;border-radius:8px;display:block;text-align:left;padding:6px;font-size:.82rem;cursor:pointer;overflow:hidden}.calendar-cell.in-month{background:#fff;color:#111827;border-color:#e5e7eb}.calendar-cell.out-month{color:#64748b;background:#e2e8f0;border-color:#cbd5e1}.calendar-cell.out-month .calendar-day-number{color:#64748b}.calendar-cell.out-month .calendar-shift-slot.slot-empty{opacity:.45}.calendar-cell.out-month .calendar-shift-slot.shift-assigned,.calendar-cell.out-month .calendar-shift-slot.shift-unassigned,.calendar-cell.out-month .calendar-shift-slot.shift-noshow,.calendar-cell.out-month .calendar-shift-slot.shift-pto{background-color:#cbd5e1;border-color:#94a3b8;color:#475569}.calendar-cell.selected{border-color:#1f3f93;box-shadow:0 0 0 2px #1f3f9326}.calendar-cell.current-day{border-color:#b91c1c;box-shadow:0 0 0 2px #b91c1c2e}.calendar-day-number{display:inline-block;margin-bottom:6px}.calendar-shift-slots{display:grid;grid-template-rows:repeat(4,1fr);gap:4px;height:calc(100% - 24px);padding-top:7px;box-sizing:border-box;overflow:visible}.calendar-shift-slot{position:relative;width:100%;border-radius:4px;font-size:.66rem;font-weight:600;display:flex;align-items:center;justify-content:center;overflow:visible}.calendar-shift-count-bubble{position:absolute;top:0;right:6px;z-index:2;transform:translateY(-50%);min-width:1.5rem;height:1.5rem;padding:0 5px;border-radius:999px;background:#e5e7eb;border:1px solid #9ca3af;color:#374151;font-size:.72rem;font-weight:700;line-height:1;display:inline-flex;align-items:center;justify-content:center;pointer-events:none;box-sizing:border-box}.calendar-shift-slot.slot-empty{background:transparent;border:1px dashed transparent}.calendar-shift-slot.shift-assigned{background:#fff;border:1px solid #9ca3af;color:#111827}.calendar-shift-slot.shift-unassigned{background:#d1d5db;border:1px solid #111827;color:#111827}.calendar-shift-slot.shift-noshow{background:#dc2626;border:1px solid #b91c1c;color:#fff}.calendar-shift-slot.shift-pto{background:#f9a8d4;border:1px solid #f472b6;color:#831843;font-size:.58rem;font-weight:700;line-height:1.1;text-align:center;padding:0 2px}@media (max-width: 1080px){.calendar-layout{grid-template-columns:1fr}.calendar-main{grid-column:1;margin-left:1vw}.calendar-grid{grid-template-columns:repeat(7,minmax(70px,1fr))}.call-queue-panel{grid-column:1;width:auto;max-width:none;min-width:0;border-left:none;border-top:1px solid #e5e7eb}.calendar-layout>.shift-schedule-panel{grid-column:1;width:auto;max-width:none;min-width:0}}@media (max-width: 860px){.calendar-layout{grid-template-columns:1fr}}.cw-root{position:fixed;z-index:1000;display:flex;flex-direction:column;align-items:flex-start;gap:12px}.cw-fab{width:48px;height:48px;border-radius:50%;background:#1f3f93;color:#fff;border:none;cursor:grab;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #0000002e;transition:background .15s;-webkit-user-select:none;user-select:none;flex-shrink:0}.cw-fab:active{cursor:grabbing;background:#17306e}.cw-panel{width:360px;max-height:520px;border-radius:18px;border:1px solid #e5e7eb;background:#fff;box-shadow:0 8px 32px #00000026;display:flex;flex-direction:column;overflow:hidden}.cw-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#1f3f93;color:#fff;cursor:grab;-webkit-user-select:none;user-select:none;flex-shrink:0}.cw-header:active{cursor:grabbing}.cw-header-left{display:flex;align-items:center;gap:8px}.cw-header-name{font-weight:600;font-size:14px}.cw-header-sub{font-size:12px;opacity:.7}.cw-header-right{display:flex;align-items:center;gap:8px}.cw-close-btn{background:none;border:none;color:#fff;cursor:pointer;opacity:.7;display:flex;align-items:center;padding:0;transition:opacity .15s}.cw-close-btn:hover{opacity:1}.cw-messages{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:12px;min-height:0}.cw-empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding-top:16px}.cw-empty-hint{font-size:12px;color:#6b7280;text-align:center;padding:0 8px}.cw-suggestion-btn{display:flex;align-items:center;gap:8px;width:100%;border:1px solid rgba(31,63,147,.2);background:#1f3f930d;border-radius:12px;padding:10px 12px;cursor:pointer;text-align:left;color:#1f3f93;font-size:12px;transition:background .15s}.cw-suggestion-btn:hover{background:#1f3f931a}.cw-suggestion-title{font-weight:600;display:block}.cw-suggestion-sub{color:#6b7280}.cw-msg-row{display:flex;align-items:flex-start;gap:8px}.cw-msg-row.user{flex-direction:row-reverse}.cw-avatar{flex-shrink:0;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center}.cw-avatar.bot{background:#f3f4f6;color:#6b7280}.cw-avatar.user{background:#1f3f93;color:#fff}.cw-bubble{border-radius:18px;padding:8px 12px;font-size:14px;max-width:270px;white-space:pre-wrap;line-height:1.5}.cw-bubble.bot{background:#f3f4f6;color:#111827;border-top-left-radius:4px}.cw-bubble.user{background:#1f3f93;color:#fff;border-top-right-radius:4px}.cw-typing{display:flex;gap:4px;padding:4px 0}.cw-dot{width:6px;height:6px;border-radius:50%;background:#9ca3af;animation:cw-bounce 1s infinite}.cw-dot:nth-child(2){animation-delay:.15s}.cw-dot:nth-child(3){animation-delay:.3s}@keyframes cw-bounce{0%,80%,to{transform:translateY(0)}40%{transform:translateY(-5px)}}.cw-report-bubble{background:#f3f4f6;border-radius:4px 18px 18px;padding:10px 12px;max-width:270px;display:flex;flex-direction:column;gap:8px}.cw-report-name{font-size:13px;font-weight:600;color:#111827;margin:0}.cw-report-desc{font-size:11px;color:#6b7280;margin:0}.cw-report-prompt{font-size:13px;color:#111827;margin:0}.cw-report-error{font-size:13px;color:#dc2626;margin:0}.cw-report-btns{display:flex;flex-direction:column;gap:6px}.cw-dl-btn{display:flex;align-items:center;gap:6px;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:500;cursor:pointer;border:none;transition:background .15s,opacity .15s}.cw-dl-btn:disabled{opacity:.7;cursor:not-allowed}.cw-dl-btn.primary{background:#1f3f93;color:#fff}.cw-dl-btn.primary:not(:disabled):hover{background:#17306e}.cw-dl-btn.secondary{background:#fff;color:#111827;border:1px solid #e5e7eb}.cw-dl-btn.secondary:not(:disabled):hover{background:#f3f4f6}.cw-spinner{display:inline-block;width:12px;height:12px;border:2px solid rgba(255,255,255,.4);border-top-color:currentColor;border-radius:50%;animation:cw-spin .6s linear infinite;flex-shrink:0}.cw-dl-btn.secondary .cw-spinner{border-color:#00000026;border-top-color:#374151}@keyframes cw-spin{to{transform:rotate(360deg)}}.cw-input-row{padding:12px;border-top:1px solid #e5e7eb;display:flex;gap:8px;flex-shrink:0}.cw-input{flex:1;height:36px;padding:0 10px;border:1px solid #e5e7eb;border-radius:8px;font-size:13px;outline:none;background:#fff;color:#111827;transition:border-color .15s}.cw-input:focus{border-color:#1f3f93}.cw-input:disabled{background:#f9fafb;color:#9ca3af}.cw-send-btn{width:36px;height:36px;border-radius:8px;background:#1f3f93;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;flex-shrink:0}.cw-send-btn:disabled{background:#7b97cf;cursor:not-allowed}.cw-send-btn:not(:disabled):hover{background:#17306e}.http-error-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f6f8}.http-error-main{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1.5rem 3rem;text-align:center;max-width:32rem;margin:0 auto}.http-error-code{margin:0 0 .5rem;font-size:3rem;font-weight:700;line-height:1;color:#1f3f93}.http-error-main h1{margin:0 0 .75rem;font-size:1.5rem;font-weight:600;color:#1a1d24}.http-error-message{margin:0 0 1.5rem;color:#5c6370;line-height:1.55}.http-error-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}.http-error-btn{display:inline-flex;align-items:center;justify-content:center;min-width:10rem;padding:.65rem 1.25rem;border-radius:8px;font-size:.95rem;font-weight:600;text-decoration:none;cursor:pointer;border:1px solid transparent}.http-error-btn--primary{background:#1f3f93;color:#fff}.http-error-btn--primary:hover{background:#183578}.http-error-btn--secondary{background:#fff;color:#1a1d24;border-color:#c8ccd4}.http-error-btn--secondary:hover{background:#eef1f6}.login-page{min-height:100vh;width:100%;display:grid;grid-template-columns:1fr 1fr;background-color:#fff}.login-left-panel{position:relative;overflow:hidden}.login-left-image{width:100%;height:100%;object-fit:cover}.login-overlay-logo{position:absolute;top:18px;left:16px;display:flex;align-items:center;background:#ffffffeb;padding:10px 14px;border-radius:10px;--login-logo-height: 44px}.login-overlay-logo-wordmark{height:var(--login-logo-height);width:calc(var(--login-logo-height) * 371 / 80);display:block;object-fit:contain;object-position:left center}.login-overlay-footer{position:absolute;left:18px;bottom:16px;color:#fff}.login-overlay-footer h2{margin:0 0 8px;font-size:clamp(1.6rem,2vw,2.2rem);font-weight:700}.login-overlay-footer p{margin:0;font-size:.72rem}.login-right-panel{display:flex;align-items:center;justify-content:center;padding:24px}.login-form{width:min(420px,90%)}.login-error{margin:0 0 12px;padding:10px 12px;border-radius:8px;background:#fdecea;color:#b42318;font-size:14px;line-height:1.4}.login-form h1{margin:0 0 24px;color:#1f2937;font-size:2rem;font-weight:700}.login-form>label{display:block;margin-bottom:8px;font-size:.95rem;color:#374151}.login-form-hint{margin:-12px 0 20px;font-size:.9rem;color:#6b7280;line-height:1.45}.login-success{margin:0 0 12px;padding:10px 12px;border-radius:8px;background:#ecfdf3;color:#027a48;font-size:14px;line-height:1.4}.login-form select.login-select,.login-form input[type=email],.login-form input[type=password],.login-form input[type=text]{width:100%;height:42px;margin-bottom:18px;border:1px solid #d1d5db;border-radius:4px;padding:0 12px;font-size:.95rem;color:#111827}.password-wrapper{position:relative}.password-wrapper input{margin-bottom:12px;padding-right:40px}.password-toggle{position:absolute;top:8px;right:10px;border:none;background:transparent;color:#9ca3af;padding:0;cursor:pointer}.password-toggle svg{width:20px;height:20px;display:block}.login-row{margin:2px 0 20px;display:flex;align-items:center;justify-content:space-between}.login-row .remember-me{display:inline-flex;align-items:center;gap:10px}.login-row .remember-me input[type=checkbox]{margin:0;flex:0 0 auto;width:16px;height:16px;cursor:pointer}.login-row .remember-me label{display:inline;margin:0;padding:0;font-size:.86rem;color:#374151;cursor:pointer;-webkit-user-select:none;user-select:none}.login-row a{font-size:.86rem;color:#1f3f93;text-decoration:none}.login-button{width:100%;height:44px;border:none;border-radius:4px;background:#1f3f93;color:#fff;font-size:1rem;font-weight:700;cursor:pointer}.login-button:disabled{opacity:.7;cursor:not-allowed}.login-back-link{display:block;width:100%;margin-top:16px;padding:0;border:none;background:transparent;color:#1f3f93;font-size:.95rem;font-weight:600;text-align:center;cursor:pointer;text-decoration:underline}.login-back-link:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 980px){.login-page{grid-template-columns:1fr}.login-left-panel{min-height:40vh}}.reset-password-form{width:min(720px,96%)}.reset-password-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.9fr);gap:20px 28px;align-items:start;margin-bottom:8px}.reset-password-fields{min-width:0}.reset-password-mismatch{margin:-6px 0 14px;font-size:.85rem;color:#b42318}.password-strength-panel{margin-top:4px;padding:14px 14px 12px;border:1px solid #e5e7eb;border-radius:10px;background:#f9fafb}.password-strength-heading{margin:0 0 10px;font-size:.9rem;font-weight:700;color:#374151}.password-strength-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.password-strength-item{display:flex;align-items:flex-start;gap:8px;font-size:.8rem;line-height:1.35}.password-strength-icon{flex:0 0 auto;width:1.1rem;font-weight:700;line-height:1.35}.password-strength-item.is-met{color:#027a48}.password-strength-item.is-unmet{color:#b42318}@media (max-width: 720px){.reset-password-layout{grid-template-columns:1fr}}.consent-opt-in-panel input[type=tel]{width:100%;height:42px;margin-bottom:18px;border:1px solid #d1d5db;border-radius:4px;padding:0 12px;font-size:.95rem;color:#111827}.consent-opt-in-panel{max-width:520px}.consent-opt-in-panel h1{margin:0 0 1rem;font-size:1.45rem;font-weight:700;color:#111827}.consent-opt-in-legal{margin:0 0 1.25rem;padding:.9rem 1rem;border:1px solid #d1d5db;border-radius:10px;background:#f9fafb}.consent-opt-in-legal-legend{padding:0 .35rem;font-size:.82rem;font-weight:600;color:#374151}.consent-opt-in-legal p{margin:0;font-size:.92rem;line-height:1.55;color:#1f2937}.consent-opt-in-legal a{color:#2563eb;text-decoration:underline}.consent-opt-in-legal a:hover{color:#1d4ed8}.consent-opt-in-checkbox{display:flex;align-items:flex-start;gap:.55rem;margin:.75rem 0 0;font-size:.92rem;line-height:1.45;color:#111827;cursor:pointer}.consent-opt-in-checkbox input{margin-top:.2rem;flex-shrink:0}.consent-opt-in-success .consent-opt-in-thank-you{margin:0;font-size:1rem;line-height:1.6;color:#111827}.consent-opt-in-actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.consent-opt-in-actions>.login-button,.consent-opt-in-actions>.consent-opt-in-decline-btn{flex:1 1 0;width:auto;min-width:0;height:44px}.consent-opt-in-decline-btn{border:1px solid #cbd5e1;border-radius:4px;background:#fff;color:#374151;padding:.65rem 1rem;font-size:.95rem;font-weight:600;cursor:pointer}.consent-opt-in-decline-btn:hover:not(:disabled){background:#f8fafc}.consent-opt-in-decline-btn:disabled{opacity:.6;cursor:not-allowed}.metrics-dashboard-page{height:100vh;min-height:100vh;display:flex;flex-direction:column;overflow:hidden;background:#eef3fa}.metrics-content{flex:1;min-height:0;width:90vw;max-width:90vw;margin:0 auto;padding:20px;box-sizing:border-box;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.metrics-cards,.metrics-chart-grid,.metrics-status{width:100%;max-width:100%;box-sizing:border-box}.metrics-cards{display:grid;grid-template-columns:repeat(5,minmax(180px,1fr));gap:14px;margin-bottom:16px;overflow:visible}.metric-card-ot-wrap{position:relative;min-width:0}.metrics-status{background:#fff;border-radius:10px;padding:24px;color:#374151;box-shadow:0 1px 3px #00000014;margin-bottom:16px}.metrics-status--error{color:#b91c1c;border:1px solid #fecaca}.metric-card{background:#fff;border-radius:10px;border-top:4px solid #3b82f6;box-shadow:0 1px 3px #00000014;padding:14px 16px}.metric-card--coverage{border-top-color:#2563eb}.metric-card--open{border-top-color:#60a5fa}.metric-card--callout{border-top-color:#f87171}.metric-card--noshow{border-top-color:#111827}.metric-card--overtime{border-top-color:#7f1d1d}.metric-card--ot-open{width:100%;border:none;border-top:4px solid #7f1d1d;text-align:left;cursor:pointer;font:inherit;transition:box-shadow .15s ease,transform .15s ease}.metric-card--ot-open:hover{box-shadow:0 4px 14px #7f1d1d33}.metric-card--ot-open:focus-visible{outline:none;box-shadow:0 0 0 2px #fff,0 0 0 4px #7f1d1d}.metric-change--hint{margin-top:2px;font-size:.72rem;color:#9ca3af}.metric-card-ot-wrap--open{z-index:40}.metric-card--ot-open[aria-expanded=true]{box-shadow:0 4px 14px #7f1d1d33}.rn-ot-panel{position:absolute;top:calc(100% + 8px);right:0;left:auto;z-index:1;width:200%;max-width:calc(100vw - 40px);box-sizing:border-box;border:1px solid #e2e8f0;border-top:4px solid #7f1d1d;border-radius:10px;background:#fff;box-shadow:0 8px 24px #0f172a1f;overflow:hidden}.rn-ot-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid #e5e7eb;background:#fff}.rn-ot-panel-header h2{margin:0;font-size:1rem;color:#111827}.rn-ot-panel-subtitle{margin:4px 0 0;font-size:.76rem;color:#64748b}.rn-ot-panel-close{border:none;background:transparent;color:#64748b;font-size:1.35rem;line-height:1;padding:0 4px;cursor:pointer}.rn-ot-panel-close:hover{color:#111827}.rn-ot-panel-body{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:14px 16px}.rn-ot-panel-metric{border-radius:10px;padding:12px;border:1px solid #e5e7eb;background:#fff}.rn-ot-panel-metric--daily{border-top:4px solid #7f1d1d}.rn-ot-panel-metric--biweekly{border-top:4px solid #9a3412}.rn-ot-panel-metric h3{margin:0 0 6px;font-size:.88rem;color:#374151}.rn-ot-panel-value{margin:0 0 6px;font-size:1.6rem;font-weight:700;color:#111827}.rn-ot-panel-meta{display:block;font-size:.7rem;line-height:1.35;color:#6b7280}.rn-ot-panel-footer{padding:10px 16px 14px;border-top:1px solid #e5e7eb;background:#fff}.rn-ot-panel-footer p{margin:0;font-size:.72rem;color:#64748b;line-height:1.4}.metric-card h2{margin:0 0 8px;font-size:1.1rem;color:#374151}.metric-card p{margin:0 0 6px;font-size:2rem;font-weight:700;color:#111827}.metric-card span,.metric-change{color:#6b7280;font-size:.8rem;display:block}.metric-change--up{color:#059669}.metric-change--down{color:#dc2626}.metrics-chart-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.chart-card{background:#fff;border-radius:10px;box-shadow:0 1px 3px #00000014;padding:16px;min-height:260px;width:100%;max-width:100%;box-sizing:border-box;overflow:hidden}.chart-card h3{margin:0 0 14px;color:#374151;font-size:1.1rem}.chart-svg{width:100%;height:220px;display:block}.chart-svg--monthly-hours{height:300px;min-height:300px}.chart-empty{margin:0;min-height:190px;display:flex;align-items:center;justify-content:center;color:#6b7280;font-size:.95rem}.overtime-chart-point{cursor:pointer}.overtime-chart-point:focus-visible circle:last-of-type{outline:2px solid #1d4ed8;outline-offset:2px}@media (max-width: 1320px){.metrics-cards{grid-template-columns:repeat(3,minmax(180px,1fr))}}@media (max-width: 920px){.metrics-cards{grid-template-columns:repeat(2,minmax(180px,1fr))}.metrics-chart-grid,.rn-ot-panel-body{grid-template-columns:1fr}}.callout-manager-page{height:100vh;display:flex;flex-direction:column;overflow:hidden;background:#f5f6f8}.callout-manager-main{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column;padding:1rem 1.5rem 1.25rem;width:100%;max-width:90vw;margin:0 auto;box-sizing:border-box;overflow-x:hidden}.callout-manager-main--wide{max-width:90vw}.callout-manager-hero{flex-shrink:0;margin-bottom:1rem}.callout-manager-hero h1{margin:0 0 .35rem;font-size:1.5rem;font-weight:600;color:#111827}.callout-manager-hero-desc{margin:0 0 1rem;font-size:.95rem;color:#4b5563;line-height:1.45}.callout-manager-steps{display:flex;flex-wrap:wrap;gap:.5rem 1rem;align-items:flex-start;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.callout-manager-step-pill{display:flex;align-items:center;gap:.5rem;padding:.35rem 0;font-size:.875rem;color:#6b7280;background:none;border:none;cursor:default;text-align:left}.callout-manager-step-pill.is-active{color:#1d4ed8;font-weight:600}.callout-manager-step-num{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border-radius:999px;font-size:.75rem;font-weight:700;background:#e5e7eb;color:#374151}.callout-manager-step-pill.is-active .callout-manager-step-num{background:#2563eb;color:#fff}.callout-manager-step-pill.is-done .callout-manager-step-num{background:#10b981;color:#fff}.callout-manager-slide-viewport{flex:1;min-height:0;min-width:0;overflow:hidden;margin-top:.75rem}.callout-manager-slide-track{display:flex;width:300%;height:100%;transition:transform .42s cubic-bezier(.4,0,.2,1)}.callout-manager-slide-panel{width:33.333%;flex-shrink:0;height:100%;min-height:0;box-sizing:border-box;padding-right:.25rem}.callout-manager-slide-embed{height:100%;min-height:0;min-width:0;overflow:auto;background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:1.25rem 1.25rem 1.5rem;box-shadow:0 1px 2px #0000000a}.callout-manager-slide-embed--split{padding:0;overflow:hidden;display:flex;flex-direction:column}.callout-select-layout{flex:1;min-height:0;min-width:0;height:100%;display:grid;grid-template-columns:minmax(min(280px,100%),340px) 1fr;align-items:stretch}.callout-fillins-sidebar{display:flex;flex-direction:column;min-height:0;padding:0;border-right:1px solid #e5e7eb;background:#fafbfc;overflow:hidden}.callout-fillins-sidebar-top{flex-shrink:0;padding:1.1rem 1rem 0}.callout-fillins-sidebar-title{margin:0 0 .65rem;font-size:1.05rem;font-weight:700;color:#111827;line-height:1.3}.callout-fillins-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem 1rem;margin-bottom:1rem;font-size:.82rem;color:#4b5563}.callout-fillins-meta-item{display:inline-flex;align-items:center;gap:.35rem}.callout-meta-icon{width:1rem;height:1rem;flex-shrink:0;color:#6b7280}.callout-tab-list{display:flex;flex-direction:column;gap:.65rem;flex:1;min-height:0;overflow-y:auto;padding:1rem}.callout-tab-list-empty{margin:0;font-size:.85rem;color:#6b7280;line-height:1.45}.callout-tab{display:flex;align-items:stretch;gap:.65rem;width:100%;padding:.65rem .75rem;border:1px solid #fbcfe8;border-radius:10px;background:#fdf2f8;cursor:pointer;text-align:left;transition:border-color .15s,box-shadow .15s,background .15s}.callout-tab:hover{border-color:#f9a8d4;background:#fce7f3}.callout-tab.is-active{border-color:#f472b6;background:#fce7f3;box-shadow:0 0 0 2px #f472b633}.callout-tab-icon-wrap{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:3.25rem;color:#9f1239}.callout-tab-person-icon{width:2.75rem;height:auto;display:block}.callout-tab-text{flex:1;min-width:0;display:flex;align-items:center}.callout-tab-name{font-size:.88rem;font-weight:700;color:#111827;line-height:1.35}.callout-fillins-main{display:flex;flex-direction:column;min-height:0;overflow:hidden;background:#fff}.callout-fillins-main-scroll{flex:1;min-height:0;overflow-y:auto;padding:1.25rem 1.25rem 1rem}.callout-fillins-main-footer{flex-shrink:0;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem 1.25rem 1rem;border-top:1px solid #e5e7eb;background:#fafbfc}.callout-fillins-main-footer-left,.callout-fillins-main-footer-right{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.callout-fillins-main-footer-right{margin-left:auto}.callout-fillins-main-footer button{border:1px solid #d1d5db;border-radius:8px;background:#fff;padding:.45rem .85rem;font-size:.82rem;cursor:pointer}.callout-fillins-main-footer button:hover:not(:disabled){background:#f9fafb}.callout-fillins-main-footer button:disabled{opacity:.45;cursor:not-allowed}.callout-no-replacement-btn{display:inline-flex;align-items:center;gap:.5rem}.callout-no-replacement-btn input[type=checkbox]{width:1rem;height:1rem;margin:0;cursor:pointer;pointer-events:none}.callout-no-replacement-btn[aria-pressed=true]{border-color:#6b7280;background:#f3f4f6}.callout-no-replacement-btn:disabled{opacity:.45;cursor:not-allowed}.callout-fillins-main.is-panel-disabled .callout-fillins-main-scroll{opacity:.55;pointer-events:none;-webkit-user-select:none;user-select:none;overflow:hidden}.callout-select-replacement.is-non-interactive{pointer-events:none}.callout-tab.is-no-replacement:not(.is-active){opacity:.72;border-style:dashed}.callout-tab.is-loading .callout-tab-icon-wrap{color:#2563eb}.callout-tab-spinner{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem}.callout-tab-spinner-ring{width:1.35rem;height:1.35rem;border:2px solid rgba(37,99,235,.2);border-top-color:#2563eb;border-radius:50%;animation:callout-tab-spin .85s linear infinite}@keyframes callout-tab-spin{to{transform:rotate(360deg)}}.callout-job-loader{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;min-height:14rem;padding:2rem 1rem;text-align:center}.callout-job-loader-ring{width:2.75rem;height:2.75rem;border:3px solid rgba(37,99,235,.18);border-top-color:#2563eb;border-right-color:#60a5fa;border-radius:50%;animation:callout-tab-spin .9s linear infinite}.callout-job-loader-text{margin:0;max-width:22rem;font-size:.92rem;font-weight:600;color:#374151;line-height:1.45}.callout-job-error{margin:1.5rem 0;padding:.85rem 1rem;border-radius:8px;background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;font-size:.88rem;line-height:1.45}.callout-select-empty{margin:0;font-size:.9rem;color:#6b7280;line-height:1.45}.callout-select-replacement{display:flex;flex-direction:column;gap:.85rem;min-width:0}.callout-match-heading{margin:0;font-size:1.05rem;font-weight:700;color:#111827}.callout-match-stats{display:flex;flex-wrap:wrap;gap:.5rem}.callout-match-stat{flex:1 1 auto;min-width:min(100%,10rem);padding:.55rem .75rem;border-radius:8px;background:#f3f4f6;border:1px solid #e5e7eb}.callout-match-stat-value{font-size:.78rem;font-weight:600;color:#374151;line-height:1.35}.callout-ranked-title{margin:.25rem 0 0;font-size:1rem;font-weight:700;color:#111827}.callout-ranked-desc{margin:0;font-size:.82rem;color:#6b7280;line-height:1.45}.callout-ranked-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem}.callout-ranked-search-wrap{flex:1 1 12rem;min-width:0;display:flex;align-items:center;gap:.45rem;height:36px;padding:0 .65rem;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#6b7280}.callout-ranked-search-wrap svg{width:18px;height:18px;flex-shrink:0}.callout-ranked-search{flex:1;min-width:0;border:none;outline:none;font-size:.82rem;color:#111827;background:transparent}.callout-ranked-toolbar-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-left:auto}.callout-send-selected-btn,.callout-send-all-btn{display:inline-flex;align-items:center;gap:.4rem;height:36px;padding:0 .85rem;border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer;white-space:nowrap}.callout-send-selected-btn svg,.callout-send-all-btn svg{width:16px;height:16px;flex-shrink:0}.callout-send-selected-btn{border:none;background:#93c5fd;color:#1e3a8a}.callout-send-selected-btn:hover:not(:disabled){background:#60a5fa}.callout-send-all-btn{border:1px solid #2563eb;background:#fff;color:#1d4ed8}.callout-send-all-btn:hover:not(:disabled){background:#eff6ff}.callout-send-selected-btn:disabled,.callout-send-all-btn:disabled{opacity:.45;cursor:not-allowed}.callout-ranked-sections{display:flex;flex-direction:column;gap:.65rem}.callout-tier-section{border:1px solid #e5e7eb;border-radius:10px;background:#fff;overflow:hidden}.callout-tier-section--best{border-color:#93c5fd}.callout-tier-section-title--static{display:flex;align-items:center;gap:.4rem;margin:0;padding:.65rem .85rem;font-size:.88rem;font-weight:700;color:#111827;background:#f9fafb;border-bottom:1px solid #e5e7eb}.callout-tier-section-header{display:flex;align-items:center;gap:.4rem;width:100%;padding:.65rem .85rem;border:none;background:#f9fafb;font-size:.88rem;font-weight:700;color:#111827;text-align:left;cursor:pointer}.callout-tier-section-header:hover{background:#f3f4f6}.callout-tier-star-icon,.callout-tier-chevron{width:1rem;height:1rem;flex-shrink:0;color:#6b7280}.callout-tier-section-title--static .callout-tier-star-icon{color:#eab308}.callout-tier-chevron{transition:transform .15s ease}.callout-tier-chevron.is-expanded{transform:rotate(90deg)}.callout-tier-section-body{display:flex;flex-direction:column;gap:.5rem;padding:.65rem}.callout-tier-empty{margin:0;padding:.35rem .25rem;font-size:.8rem;color:#6b7280}.callout-candidate-card{display:grid;grid-template-columns:[check] auto [rank] auto [info] minmax(0,1fr) [score] 5.5rem [actions] 12rem;grid-template-areas:"check rank info score actions";align-items:center;column-gap:.75rem;row-gap:.55rem;padding:.65rem .75rem;border:1px solid #e5e7eb;border-radius:8px;background:#fff;cursor:pointer;text-align:left}.callout-candidate-card.is-expanded{grid-template-areas:"check rank info score actions" "breakdown breakdown breakdown breakdown breakdown"}.callout-candidate-card:focus-visible{outline:2px solid #1f3f93;outline-offset:2px}.callout-candidate-card--contact{background:#fff;border-color:#e5e7eb}.callout-candidate-card--contact.is-best-match{border-color:#60a5fa;background:#eff6ff}.callout-candidate-card--pending{background:#fefce8;border-color:#ca8a04}.callout-candidate-card--accepted,.callout-candidate-card--confirmed{background:#f0fdf4;border-color:#16a34a}.callout-candidate-card--declined{background:#fef2f2;border-color:#dc2626}.callout-candidate-check{grid-area:check;display:flex;align-items:center;justify-self:start}.callout-candidate-check input{width:1rem;height:1rem;cursor:pointer}.callout-candidate-rank{grid-area:rank;justify-self:start;font-size:.82rem;font-weight:700;color:#374151;white-space:nowrap}.callout-candidate-details{grid-area:info;min-width:0;justify-self:stretch;align-self:center}.callout-candidate-primary-line{display:flex;align-items:baseline;flex-wrap:nowrap;gap:0;margin:0;min-width:0;font-size:.82rem;line-height:1.35;white-space:nowrap}.callout-candidate-identity{font-weight:600;color:#111827;flex-shrink:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.callout-candidate-meta-inline{margin-left:.35rem;font-weight:500;color:#4b5563;flex-shrink:0}.callout-candidate-status{margin-left:.5rem;flex-shrink:0;font-size:.75rem;font-weight:700}.callout-candidate-status.is-pending{color:#a16207}.callout-candidate-status.is-accepted,.callout-candidate-status.is-confirmed{color:#15803d}.callout-candidate-confirmed-mark{display:flex;align-items:center;justify-content:flex-end;width:100%;color:#16a34a;pointer-events:none;-webkit-user-select:none;user-select:none}.callout-candidate-confirmed-icon{width:1.75rem;height:1.75rem;display:block}.callout-candidate-status.is-declined{color:#b91c1c}.callout-candidate-status.is-other-shift-callout{color:#dc2626;background:#fff;border:1px solid #dc2626;border-radius:999px;padding:2px 8px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}.callout-candidate-score-wrap{grid-area:score;display:inline-flex;align-items:center;justify-content:flex-end;gap:.2rem;justify-self:end;align-self:center}.callout-candidate-score{font-size:1.15rem;font-weight:700;color:#111827;white-space:nowrap}.callout-candidate-expand-icon{width:1.1rem;height:1.1rem;flex-shrink:0;color:#6b7280;transition:transform .15s ease}.callout-candidate-expand-icon.is-expanded{transform:rotate(180deg)}.callout-candidate-breakdown{grid-area:breakdown;display:flex;flex-direction:column;gap:.55rem;padding:.55rem .15rem .15rem;border-top:1px solid #e5e7eb;margin-top:.15rem;cursor:default}.callout-score-breakdown-row{display:grid;grid-template-columns:minmax(5.5rem,7rem) 1fr;align-items:center;gap:.75rem;cursor:help}.callout-score-breakdown-label{font-size:.82rem;font-weight:500;color:#374151;cursor:help}.callout-score-breakdown-track{height:.55rem;border-radius:999px;background:#e5e7eb;overflow:hidden;cursor:help}.callout-score-breakdown-fill{height:100%;border-radius:999px;min-width:2px}.callout-score-breakdown-fill--hours{background:#22c55e}.callout-score-breakdown-fill--unit{background:#9333ea}.callout-score-breakdown-fill--home{background:#f97316}.callout-score-breakdown-fill--distance{background:#3b82f6}.callout-candidate-actions{grid-area:actions;display:flex;align-items:center;justify-content:flex-end;gap:.4rem;flex-wrap:nowrap;width:100%;min-width:0;justify-self:stretch;align-self:center}.callout-candidate-btn{display:inline-flex;align-items:center;justify-content:center;gap:.3rem;padding:.42rem .7rem;border-radius:8px;font-size:.76rem;font-weight:600;cursor:pointer;white-space:nowrap;line-height:1.2}.callout-candidate-btn svg{width:14px;height:14px;flex-shrink:0}.callout-candidate-btn--contact{border:1px solid #2563eb;background:#fff;color:#1d4ed8}.callout-candidate-btn--contact:hover{background:#eff6ff}.callout-candidate-btn--decline{border:1px solid #d1d5db;background:#fff;color:#374151}.callout-candidate-btn--decline:hover{background:#f9fafb}.callout-candidate-btn--accept{border:none;background:#2563eb;color:#fff}.callout-candidate-btn--accept:hover{background:#1d4ed8}.callout-candidate-btn--confirm{border:none;background:#16a34a;color:#fff}.callout-candidate-btn--confirm:hover{background:#15803d}.callout-candidate-btn--remove{border:1px solid #fca5a5;background:#fff;color:#b91c1c}.callout-candidate-btn--remove:hover{background:#fef2f2}.callout-step-inner-title{margin:0 0 .35rem;font-size:1.2rem;font-weight:600;color:#111827}.callout-step-inner-desc{margin:0 0 1.25rem;font-size:.9rem;color:#6b7280;line-height:1.45}.callout-report-fields{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.25rem}.callout-report-date label{display:block;font-size:.8rem;font-weight:600;color:#374151;margin-bottom:.35rem}.callout-report-date input[type=date]{max-width:220px;padding:.45rem .6rem;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem}.callout-shift-fieldset{border:none;padding:0;margin:0}.callout-shift-legend{font-size:.8rem;font-weight:600;color:#374151;margin-bottom:.5rem}.callout-shift-options{display:flex;flex-wrap:wrap;gap:.6rem}.callout-shift-option{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;padding:.65rem .85rem;border:2px solid #e5e7eb;border-radius:10px;background:#fafafa;cursor:pointer;text-align:left;min-width:140px;transition:border-color .15s,background .15s}.callout-shift-option:hover{border-color:#93c5fd;background:#f8fafc}.callout-shift-option.is-selected{border-color:#2563eb;background:#eff6ff}.callout-shift-option.is-disabled,.callout-shift-option:disabled{cursor:not-allowed;opacity:.45;border-color:#e5e7eb;background:#f3f4f6}.callout-shift-option.is-disabled:hover,.callout-shift-option:disabled:hover{border-color:#e5e7eb;background:#f3f4f6}.callout-shift-option.is-disabled.is-selected,.callout-shift-option:disabled.is-selected{border-color:#93c5fd;background:#eff6ff;opacity:.55}.callout-shift-option-title{font-size:.9rem;font-weight:600;color:#111827}.callout-shift-option-window{font-size:.78rem;color:#6b7280;line-height:1.3;white-space:pre-line}.callout-report-status{font-size:.85rem;color:#6b7280;margin-bottom:.75rem}.callout-report-status.is-error{color:#b91c1c}.callout-report-table-wrap{overflow:auto;margin-bottom:1.25rem;border:1px solid #e5e7eb;border-radius:8px}.callout-report-table{width:100%;border-collapse:collapse;font-size:.875rem}.callout-report-table th,.callout-report-table td{padding:.65rem .75rem;text-align:left;border-bottom:1px solid #f3f4f6}.callout-report-table th{background:#f9fafb;font-weight:600;color:#374151;white-space:nowrap}.callout-report-table tr:last-child td{border-bottom:none}.callout-report-table .callout-checkbox-cell{width:2.5rem;vertical-align:middle}.callout-search-fillins-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.55rem 1.1rem;border:none;border-radius:8px;background:#2563eb;color:#fff;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .15s}.callout-search-fillins-btn:hover:not(:disabled){background:#1d4ed8}.callout-search-fillins-btn:disabled{opacity:.45;cursor:not-allowed}.callout-search-fillins-btn svg{width:18px;height:18px;flex-shrink:0}.callout-placeholder-step{font-size:.95rem;color:#4b5563;line-height:1.5}.callout-confirm-sidebar-desc{margin:0 0 .5rem;font-size:.82rem;color:#6b7280;line-height:1.4}.callout-confirmed-card-list{display:flex;flex-direction:column;gap:.75rem;flex:1;min-height:0;overflow-y:auto;padding:0 1rem 1rem}.callout-confirmed-card{display:flex;flex-direction:column;gap:.5rem;padding:.85rem .9rem;border:1px solid #bbf7d0;border-radius:10px;background:#f0fdf4}.callout-confirmed-card-name{margin:0;font-size:.8rem;font-weight:600;color:#14532d;line-height:1.35}.callout-confirmed-card-meta{display:flex;flex-direction:column;gap:.45rem;margin-top:.15rem}.callout-confirmed-card-meta-row{display:inline-flex;align-items:center;gap:.4rem;font-size:.78rem;color:#374151;line-height:1.35}.callout-confirmed-card-meta-row svg{width:1rem;height:1rem;flex-shrink:0;color:#6b7280}.callout-confirmed-card-meta-row--shift{margin-top:.15rem;padding-top:.45rem;border-top:1px solid #bbf7d0}.callout-confirmed-card-shift-time{display:block;font-size:.72rem;color:#6b7280;font-weight:500}.callout-fillins-main-scroll--calendar{padding:1rem 1.25rem}.callout-fillins-main-footer--confirm{justify-content:flex-end;gap:.75rem}.callout-fillins-main-footer--confirm .callout-confirm-primary-btn{border:1px solid #1f3f93;border-radius:8px;background:#1f3f93;color:#fff;padding:.5rem 1.1rem;font-size:.85rem;font-weight:600;cursor:pointer}.callout-fillins-main-footer--confirm .callout-confirm-primary-btn:hover:not(:disabled),.callout-fillins-main-footer--confirm .callout-confirm-primary-btn:focus-visible{background:#1f3f93;border-color:#1f3f93;color:#fff}.callout-confirm-calendar{display:flex;flex-direction:column;gap:.85rem;min-height:0}.callout-confirm-calendar-header{display:flex;align-items:center;justify-content:center;gap:.75rem}.callout-confirm-calendar-range{margin:0;font-size:1rem;font-weight:700;color:#111827;min-width:12rem;text-align:center}.callout-confirm-calendar-nav{border:1px solid #d1d5db;border-radius:6px;background:#fff;width:2rem;height:2rem;font-size:1rem;line-height:1;cursor:pointer;color:#374151}.callout-confirm-calendar-nav:hover{background:#f9fafb}.callout-confirm-calendar-body{position:relative}.callout-confirm-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(72px,1fr));gap:6px}.callout-confirm-calendar-weekday{text-align:center;color:#6b7280;font-weight:600;font-size:.8rem;padding-bottom:2px}.callout-confirm-calendar-cell{min-height:108px;border:1px solid #e5e7eb;border-radius:8px;padding:5px;display:flex;flex-direction:column;background:#fff;overflow:hidden}.callout-confirm-calendar-cell.out-month{background:#e2e8f0;border-color:#cbd5e1;color:#64748b}.callout-confirm-calendar-cell.current-day{border-color:#b91c1c;box-shadow:0 0 0 2px #b91c1c26}.callout-confirm-calendar-day-num{font-size:.78rem;font-weight:600;margin-bottom:4px;color:inherit}.callout-confirm-calendar-slots{display:flex;flex-direction:column;gap:3px;flex:1;min-height:0}.callout-confirm-calendar-slot-empty{flex:1;min-height:.5rem}.callout-confirm-shift-chip{width:100%;border:1px solid #16a34a;border-radius:4px;background:#dcfce7;color:#14532d;padding:4px 6px;font-size:.68rem;font-weight:700;line-height:1.2;text-align:center;cursor:pointer}.callout-confirm-shift-chip.is-open{box-shadow:0 0 0 2px #16a34a59}.callout-confirm-replacement-popover{position:fixed;z-index:2000;width:min(248px,calc(100% - 16px));max-height:min(220px,42vh);display:flex;flex-direction:column;border:1px solid #d1d5db;border-radius:10px;background:#fff;box-shadow:0 10px 24px #0f172a24;overflow:hidden}.callout-confirm-replacement-popover.is-measuring{pointer-events:none}.callout-confirm-popover-heading{margin:0;padding:.55rem .7rem;font-size:.72rem;font-weight:700;color:#374151;border-bottom:1px solid #e5e7eb;background:#f9fafb;flex-shrink:0}.callout-confirm-popover-list{margin:0;padding:.45rem;list-style:none;overflow-y:auto;flex:1;min-height:0;display:flex;flex-direction:column;gap:.45rem}.callout-confirm-popover-item{margin:0;padding:.5rem .55rem;border:1px solid #e5e7eb;border-radius:8px;background:#fafbfc}.callout-confirm-popover-swap{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.35rem}.callout-confirm-popover-person{min-width:0}.callout-confirm-popover-person--replacement .callout-confirm-popover-name{color:#166534}.callout-confirm-popover-label{display:block;font-size:.62rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:#6b7280;margin-bottom:.15rem}.callout-confirm-popover-name{display:block;font-size:.78rem;font-weight:700;color:#111827;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.callout-confirm-popover-arrow{font-size:.9rem;font-weight:700;color:#9ca3af;line-height:1}.callout-confirmed-list{margin-top:1rem;padding:.75rem .85rem;border:1px solid #bbf7d0;border-radius:8px;background:#f0fdf4}.callout-confirmed-list-title{margin:0 0 .5rem;font-size:.82rem;font-weight:700;color:#166534}.callout-confirmed-list ul{margin:0;padding-left:1.1rem;font-size:.8rem;color:#14532d;line-height:1.45}.callout-placeholder-step-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.callout-placeholder-step-actions button:hover{background:#f9fafb}@media (max-width: 900px){.callout-select-layout{grid-template-columns:1fr;grid-template-rows:auto 1fr}.callout-fillins-sidebar{border-right:none;border-bottom:1px solid #e5e7eb;max-height:42vh}.callout-candidate-card{grid-template-columns:auto auto minmax(0,1fr);grid-template-areas:"check rank score" "info info info" "actions actions actions";column-gap:.65rem}.callout-candidate-card.is-expanded{grid-template-areas:"check rank score" "info info info" "actions actions actions" "breakdown breakdown breakdown"}.callout-candidate-score-wrap{justify-self:end}.callout-score-breakdown-row{grid-template-columns:1fr;gap:.35rem}.callout-candidate-actions{justify-self:end;flex-wrap:wrap}}.callout-reason-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:1.25rem;background:#11182773}.callout-reason-modal{width:min(860px,100%);max-height:min(720px,92vh);display:flex;flex-direction:column;border-radius:12px;background:#fff;border:1px solid #d1d5db;box-shadow:0 18px 40px #0f172a38;overflow:hidden}.callout-reason-modal-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.15rem;border-bottom:1px solid #e5e7eb}.callout-reason-modal-header h2{margin:0;font-size:1.1rem;font-weight:700;color:#111827}.callout-reason-modal-close{border:none;background:transparent;color:#6b7280;font-size:1.5rem;line-height:1;cursor:pointer;padding:.15rem .4rem}.callout-reason-modal-close:hover{color:#111827}.callout-reason-modal-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(160px,220px) 1fr}.callout-reason-modal-tabs{display:flex;flex-direction:column;gap:.35rem;padding:.85rem;border-right:1px solid #e5e7eb;background:#f8fafc;overflow-y:auto}.callout-reason-modal-tab{text-align:left;border:1px solid transparent;border-radius:8px;background:transparent;color:#1f2937;padding:.65rem .75rem;font-size:.9rem;font-weight:600;cursor:pointer}.callout-reason-modal-tab:hover{background:#eef2ff}.callout-reason-modal-tab.is-active{background:#fff;border-color:#c7d2fe;color:#1d4ed8;box-shadow:0 1px 2px #0f172a0f}.callout-reason-modal-panel{display:flex;flex-direction:column;gap:.9rem;padding:1rem 1.15rem;overflow-y:auto}.callout-reason-modal-field{display:flex;flex-direction:column;gap:.4rem;font-size:.85rem;font-weight:600;color:#374151}.callout-reason-modal-field select,.callout-reason-modal-field textarea{width:100%;border:1px solid #d1d5db;border-radius:8px;padding:.65rem .75rem;font-size:.92rem;font-weight:400;color:#111827;background:#fff;box-sizing:border-box}.callout-reason-modal-field textarea{resize:vertical;min-height:160px;line-height:1.5}.callout-reason-modal-error{margin:0;padding:0 1.15rem .75rem;color:#b91c1c;font-size:.88rem}.callout-reason-modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:.9rem 1.15rem;border-top:1px solid #e5e7eb;background:#f9fafb}.callout-reason-modal-footer button{border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#111827;padding:.5rem 1rem;font-size:.85rem;font-weight:600;cursor:pointer}.callout-reason-modal-footer .callout-confirm-primary-btn{border-color:#1f3f93;background:#1f3f93;color:#fff}.callout-reason-modal-footer button:disabled{opacity:.65;cursor:not-allowed}@media (max-width: 720px){.callout-reason-modal-body{grid-template-columns:1fr}.callout-reason-modal-tabs{flex-direction:row;flex-wrap:wrap;border-right:none;border-bottom:1px solid #e5e7eb}}.staff-import-file,.staff-import-confirm,.staff-import-duplicate{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box}.staff-import-confirm{z-index:125;align-items:stretch;justify-content:center;padding:1rem}.staff-import-file-backdrop,.staff-import-confirm-backdrop,.staff-import-duplicate-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a80}.staff-import-file-dialog{position:relative;z-index:1;width:min(560px,100%);display:flex;flex-direction:column;border:1px solid #e2e8f0;border-radius:12px;background:#fff;box-shadow:0 20px 48px #0f172a38;overflow:hidden}.staff-import-confirm-dialog{position:relative;z-index:1;width:min(96vw,1200px);height:min(calc(95vh - 2rem),920px);max-height:calc(95vh - 2rem);margin:auto;transform:translateY(5vh);display:flex;flex-direction:column;border:1px solid #e2e8f0;border-radius:12px;background:#fff;box-shadow:0 20px 48px #0f172a38;overflow:hidden}.staff-import-file-header,.staff-import-confirm-header{flex-shrink:0}.staff-import-confirm-header{padding:14px 18px;border-bottom:1px solid #e5e7eb;background:#f8fafc}.staff-import-file-header{padding:16px 18px;border-bottom:1px solid #e5e7eb}.staff-import-file-header h2,.staff-import-confirm-header h2{margin:0;font-size:1.1rem;color:#111827}.staff-import-file-body{padding:16px 18px}.staff-import-file-desc{margin:0 0 14px;font-size:.88rem;line-height:1.5;color:#475569}.staff-import-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:180px;padding:20px;border:2px dashed #cbd5e1;border-radius:12px;background:#f8fafc;text-align:center}.staff-import-dropzone--active{border-color:#1f3f93;background:#eff6ff}.staff-import-dropzone--filled{border-style:solid;border-color:#93c5fd}.staff-import-dropzone-title{margin:0;font-size:.95rem;font-weight:600;color:#111827;word-break:break-word}.staff-import-dropzone-hint{margin:0;font-size:.82rem;color:#64748b}.staff-import-open-btn{margin-top:4px;height:36px;padding:0 14px;border:1px solid #1f3f93;border-radius:8px;background:#fff;color:#1f3f93;font-size:.86rem;font-weight:600;cursor:pointer}.staff-import-open-btn:hover:not(:disabled){background:#eff6ff}.staff-import-file-input{display:none}.staff-import-file-footer{display:flex;justify-content:space-between;gap:12px;padding:14px 18px;border-top:1px solid #e5e7eb;background:#f8fafc}.staff-import-btn{height:40px;padding:0 18px;border-radius:8px;font-size:.88rem;font-weight:600;cursor:pointer}.staff-import-btn:disabled{opacity:.6;cursor:not-allowed}.staff-import-btn--secondary{border:1px solid #cbd5e1;background:#fff;color:#334155}.staff-import-btn--primary{border:none;background:#1f3f93;color:#fff}.staff-import-error{margin:12px 0 0;padding:10px 12px;border-radius:8px;background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;font-size:.86rem}.staff-import-confirm-body{flex:1;min-height:0;overflow:auto;padding:1rem 1.25rem;background:#e5e7eb}.staff-import-confirm-footer{flex-shrink:0;display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:14px 18px;border-top:1px solid #e5e7eb;background:#f8fafc}.staff-import-staff-list{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.75rem}.staff-import-staff-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem 1rem;font-size:.86rem}.staff-import-staff-name{font-weight:600;color:#111827}.staff-import-staff-line--existing .staff-import-staff-name,.staff-import-existing-note{color:#b91c1c}.staff-import-existing-note{margin-left:.5rem;font-size:.78rem;font-weight:700}.staff-import-staff-meta{color:#64748b}.staff-import-meta-sep{margin:0 .35rem}.staff-import-undetermined{color:#b91c1c;font-weight:700}.staff-import-unit-section{margin-bottom:1.75rem;padding-bottom:1rem;border-bottom:2px solid #d1d5db}.staff-import-unit-section:last-child{border-bottom:none;margin-bottom:0}.staff-import-unit-header h2{margin:0 0 .35rem;font-size:1.1rem;color:#111827}.staff-import-unit-header p{margin:0 0 .75rem;font-size:.86rem;color:#4b5563}.staff-import-unit-empty{margin:0;font-size:.86rem;color:#6b7280;font-style:italic}.staff-import-block+.staff-import-block{margin-top:1.25rem}.staff-import-duplicate{z-index:140;align-items:stretch;justify-content:center;padding:1rem}.staff-import-duplicate-dialog{position:relative;z-index:1;width:min(96vw,920px);max-width:100%;max-height:min(calc(100vh - 2rem),720px);margin:auto;display:flex;flex-direction:column;border:1px solid #e2e8f0;border-radius:12px;background:#fff;box-shadow:0 20px 48px #0f172a47;overflow-x:hidden;overflow-y:hidden}.staff-import-duplicate-header{flex-shrink:0;padding:16px 18px 10px;border-bottom:1px solid #e5e7eb;background:#f8fafc}.staff-import-duplicate-header h2{margin:0 0 8px;font-size:1.1rem;color:#111827}.staff-import-duplicate-desc{margin:0;font-size:.88rem;line-height:1.45;color:#475569}.staff-import-duplicate-toolbar{position:relative;z-index:5;flex-shrink:0;display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;padding:10px 18px;border-bottom:1px solid #e5e7eb;background:#fff}.staff-import-duplicate-toolbar-bulk{display:flex;flex-wrap:wrap;gap:8px;flex-shrink:0}.staff-import-duplicate-toolbar-controls{--employee-layer-base: 0;--employee-layer-tooltip: 5;--employee-layer-menu: 30;flex:1 1 220px;min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:0;border-bottom:none;background:transparent;position:relative;z-index:6}.staff-import-duplicate-toolbar .staff-import-btn{height:34px;padding:0 12px;font-size:.82rem}.staff-import-duplicate-body{position:relative;z-index:1;flex:1;min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;padding:0}.staff-import-duplicate-table{width:100%;max-width:100%;table-layout:fixed;border-collapse:collapse;font-size:.86rem}.staff-import-duplicate-col-staff{width:28%}.staff-import-duplicate-col-check{width:18%}.staff-import-duplicate-table th,.staff-import-duplicate-table td{box-sizing:border-box;padding:10px;border-bottom:1px solid #e5e7eb;text-align:center;vertical-align:middle;overflow:hidden}.staff-import-duplicate-table thead th{position:sticky;top:0;z-index:1;background:#f1f5f9;font-weight:600;color:#1e293b;white-space:normal;word-break:break-word}.staff-import-duplicate-table tbody th{text-align:left;font-weight:600;color:#111827;white-space:normal;overflow-wrap:anywhere}.staff-import-duplicate-empty{text-align:center!important;color:#64748b;font-style:italic;padding:24px 12px!important}.staff-import-duplicate-license{font-weight:500;color:#64748b}.staff-import-duplicate-col-label{cursor:help;border-bottom:1px dotted #94a3b8}.staff-import-duplicate-col-heading{display:inline-flex;align-items:center;justify-content:center;gap:8px;max-width:100%;cursor:pointer}.staff-import-duplicate-col-heading input{width:16px;height:16px;flex-shrink:0;margin:0;cursor:pointer}.staff-import-duplicate-check{position:relative;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.staff-import-duplicate-check input{width:16px;height:16px;margin:0;cursor:pointer}.staff-import-duplicate-check-hint{position:absolute;left:50%;bottom:calc(100% + 8px);transform:translate(-50%);width:max-content;max-width:min(200px,40vw);padding:6px 8px;border-radius:6px;background:#0f172a;color:#f8fafc;font-size:.75rem;font-weight:500;line-height:1.35;text-align:left;white-space:normal;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .12s ease;z-index:2}.staff-import-duplicate-check:hover .staff-import-duplicate-check-hint,.staff-import-duplicate-check:focus-within .staff-import-duplicate-check-hint{opacity:1;visibility:visible}.staff-import-duplicate-table tr>td:last-child .staff-import-duplicate-check-hint{left:auto;right:0;transform:none}.staff-import-duplicate-footer{flex-shrink:0;display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:14px 18px;border-top:1px solid #e5e7eb;background:#f8fafc}.add-staff-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:110;display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box}.add-staff-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a73;cursor:pointer}.add-staff-modal{position:relative;z-index:1;width:min(560px,100%);max-height:min(92vh,720px);display:flex;flex-direction:column;border:1px solid #e2e8f0;border-radius:12px;background:#fff;box-shadow:0 20px 50px #0f172a33;overflow:hidden}.add-staff-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid #e5e7eb;flex-shrink:0}.add-staff-header h2{margin:0;font-size:1.2rem;color:#111827}.add-staff-import-btn{height:36px;padding:0 14px;border:1px solid #1f3f93;border-radius:8px;background:#fff;color:#1f3f93;font-size:.86rem;font-weight:600;font-family:inherit;cursor:pointer;flex-shrink:0}.add-staff-import-btn:hover{background:#eff6ff}.add-staff-body{padding:14px 18px 18px;overflow-y:auto;flex:1;min-height:0}.add-staff-desc{margin:0 0 16px;font-size:.88rem;line-height:1.5;color:#475569}.add-staff-form{display:flex;flex-direction:column;gap:14px}.add-staff-field{display:flex;flex-direction:column;gap:6px;min-width:0}.add-staff-field label{font-size:.8rem;font-weight:600;color:#475569}.add-staff-field input,.add-staff-field select{width:100%;max-width:100%;min-width:0;height:40px;border:1px solid #cbd5e1;border-radius:8px;padding:0 12px;font-size:.9rem;font-family:inherit;background:#fff;color:#111827;box-sizing:border-box}.add-staff-field select{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.add-staff-field input:focus,.add-staff-field select:focus{outline:2px solid rgba(31,63,147,.25);border-color:#1f3f93}.add-staff-field-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:start}.add-staff-error{margin:0;padding:10px 12px;border-radius:8px;background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;font-size:.86rem}.add-staff-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-top:1px solid #e5e7eb;background:#f8fafc;flex-shrink:0}.add-staff-btn{height:40px;padding:0 18px;border-radius:8px;font-size:.88rem;font-weight:600;font-family:inherit;cursor:pointer}.add-staff-btn:disabled{opacity:.6;cursor:not-allowed}.add-staff-btn--cancel{border:1px solid #cbd5e1;background:#fff;color:#334155}.add-staff-btn--cancel:hover:not(:disabled){background:#f1f5f9}.add-staff-btn--submit{border:none;background:#1f3f93;color:#fff}.add-staff-btn--submit:hover:not(:disabled){background:#16306f}.add-staff-units-loading{margin:0;font-size:.86rem;color:#64748b}@media (max-width: 520px){.add-staff-field-row{grid-template-columns:1fr}}.ot-warning{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;align-items:center;justify-content:center}.ot-warning-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a73}.ot-warning-dialog{position:relative;z-index:1;width:min(560px,calc(100vw - 2rem));padding:1.25rem 1.5rem;border-radius:10px;background:#fff;box-shadow:0 12px 40px #0f172a33}.ot-warning-dialog h3{margin:0 0 .5rem;font-size:1.125rem;color:#111827}.ot-warning-copy{margin:0 0 1rem;color:#475569;line-height:1.45;font-size:.92rem}.ot-warning-table-wrap{overflow-x:auto;border:1px solid #e2e8f0;border-radius:8px}.ot-warning-table{width:100%;border-collapse:collapse;font-size:.9rem}.ot-warning-table th,.ot-warning-table td{padding:.65rem .75rem;text-align:left;border-bottom:1px solid #e2e8f0}.ot-warning-table th{background:#f8fafc;color:#334155;font-weight:600}.ot-warning-table tbody tr:last-child td{border-bottom:none}.ot-warning-actions{margin-top:1.25rem;display:flex;justify-content:flex-end;gap:.5rem}.ot-warning-btn{border:1px solid #cbd5e1;border-radius:6px;padding:.45rem 1rem;background:#fff;color:#111827;cursor:pointer}.ot-warning-btn:disabled{opacity:.65;cursor:not-allowed}.ot-warning-btn--primary{border-color:#9a3412;background:#9a3412;color:#fff7ed}.ot-warning-btn--primary:hover:not(:disabled){background:#7c2d12;border-color:#7c2d12}.shift-attendance{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;align-items:center;justify-content:center}.shift-attendance-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a73}.shift-attendance-dialog{position:relative;width:min(22rem,calc(100vw - 2rem));background:#fff;border-radius:10px;box-shadow:0 12px 32px #0f172a2e;padding:1.25rem 1.35rem 1.1rem}.shift-attendance-dialog h3{margin:0 0 .5rem;font-size:1.15rem;color:#111827}.shift-attendance-summary{margin:0 0 1rem;color:#374151;font-size:.95rem}.shift-attendance-options{display:flex;flex-direction:column;gap:.65rem}.shift-attendance-option{display:flex;align-items:center;gap:.55rem;font-size:.95rem;color:#111827;cursor:pointer}.shift-attendance-option input[type=checkbox]{width:1rem;height:1rem}.shift-attendance-option--partial{flex-wrap:wrap}.shift-attendance-hours-input{width:3.25rem;margin-left:auto;border:1px solid #cbd5e1;border-radius:6px;padding:.2rem .35rem;font-size:.9rem;color:#111827;text-align:center}.shift-attendance-hours-input:disabled{background:#f8fafc;color:#94a3b8}.shift-attendance-hint{margin:.85rem 0 0;color:#6b7280;font-size:.82rem}.shift-attendance-error{margin:.75rem 0 0;color:#b91c1c;font-size:.85rem}.shift-attendance-actions{display:flex;justify-content:flex-end;gap:.55rem;margin-top:1rem}.shift-attendance-btn{border:1px solid #cbd5e1;background:#fff;color:#111827;border-radius:8px;padding:.45rem .85rem;font-size:.9rem;cursor:pointer}.shift-attendance-btn--primary{background:#2563eb;border-color:#2563eb;color:#fff}.shift-attendance-btn:disabled{opacity:.65;cursor:not-allowed}.staff-manager-page{height:100vh;display:flex;flex-direction:column;overflow:hidden;background:#eef3fa}.staff-manager-main{flex:1;min-height:0;display:flex;flex-direction:column;width:90vw;max-width:90vw;margin:0 auto;padding:16px 20px 20px;box-sizing:border-box}.staff-manager-page-title{margin:0 0 16px;color:#111827;font-size:1.65rem;font-weight:700}.staff-manager-page-title--back{cursor:pointer;width:fit-content}.staff-manager-page-title--back:hover,.staff-manager-page-title--back:focus-visible{color:#1d4ed8;outline:none}.staff-manager-embed{flex:1;min-height:0;display:flex;flex-direction:column;border:1px solid #d1d5db;border-radius:10px;background:#fff;box-shadow:0 1px 3px #0000000f;overflow:hidden}.staff-manager-embed--detail{display:flex;flex-direction:column;overflow:hidden;padding:0;box-sizing:border-box}.staff-manager-embed-toolbar{display:flex;align-items:center;gap:10px;flex-shrink:0;padding:12px 14px;border-bottom:1px solid #e5e7eb;background:#f8fafc}.staff-manager-search-wrap{flex:1;min-width:0;display:flex;align-items:center;gap:8px;height:40px;border:1px solid #cbd5e1;border-radius:8px;padding:0 10px 0 12px;background:#fff;box-sizing:border-box}.staff-manager-search-icon{width:20px;height:20px;flex-shrink:0;color:#64748b}.staff-manager-search{flex:1;min-width:0;height:100%;border:none;padding:0;font-size:.9rem;background:transparent;outline:none}.staff-manager-toolbar-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.staff-manager-icon-btn{width:40px;height:40px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;color:#334155}.staff-manager-icon-btn:hover{background:#f1f5f9;border-color:#94a3b8}.staff-manager-icon-btn[aria-expanded=true]{border-color:#1f3f93;color:#1f3f93}.staff-manager-add-btn{height:40px;padding:0 14px;display:inline-flex;align-items:center;gap:8px;flex-shrink:0;border:none;border-radius:8px;background:#1f3f93;color:#fff;font-size:.88rem;font-weight:600;font-family:inherit;cursor:pointer}.staff-manager-add-btn:hover{background:#16306f}.staff-manager-add-user-btn{height:40px;padding:0 14px;display:inline-flex;align-items:center;gap:8px;flex-shrink:0;border:1px solid #1f3f93;border-radius:8px;background:#fff;color:#1f3f93;font-size:.88rem;font-weight:600;font-family:inherit;cursor:pointer}.staff-manager-add-user-btn:hover{background:#eff6ff}.staff-manager-add-btn-icon{flex-shrink:0;color:#fff}.staff-manager-toolbar-wrap{position:relative}.staff-manager-sort-menu,.staff-manager-filter-panel{position:absolute;top:calc(100% + 6px);right:0;z-index:30;min-width:200px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 10px 28px #0f172a1f;padding:8px}.staff-manager-sort-menu .sort-menu-item+.sort-menu-item{margin-top:2px}.staff-manager-filter-panel{padding:12px;display:flex;flex-direction:column;gap:12px}.staff-manager-filter-field{display:flex;flex-direction:column;gap:4px}.staff-manager-filter-field label{font-size:.78rem;font-weight:600;color:#475569}.staff-manager-filter-field select{height:36px;border:1px solid #cbd5e1;border-radius:7px;padding:0 8px;font-size:.86rem;background:#fff}.staff-manager-list{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;background:#fff;scrollbar-gutter:stable;--staff-grid-cols: minmax(200px, 2fr) minmax(160px, 1.2fr) minmax(100px, 1fr) minmax(100px, 1fr) minmax(88px, .9fr) minmax(100px, 1fr) minmax(280px, 1.4fr);--staff-grid-pad-x: 20px;--staff-grid-gap: 20px}.staff-manager-list-header{position:sticky;top:0;z-index:2;display:grid;grid-template-columns:var(--staff-grid-cols);column-gap:var(--staff-grid-gap);align-items:end;padding:10px var(--staff-grid-pad-x);background:#f1f5f9;border-bottom:1px solid #cbd5e1;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#64748b;box-sizing:border-box}.staff-manager-list-header>span{text-align:left}.staff-manager-list-inner{display:flex;flex-direction:column;gap:0}.staff-manager-empty{margin:0;padding:32px 16px;text-align:center;color:#64748b;font-size:.9rem}.staff-manager-empty--error{color:#b91c1c}.staff-manager-row{display:grid;grid-template-columns:var(--staff-grid-cols);column-gap:var(--staff-grid-gap);align-items:center;padding:14px var(--staff-grid-pad-x);border:none;border-bottom:1px solid #e5e7eb;border-radius:0;background:#fff;box-sizing:border-box}.staff-manager-row:last-child{border-bottom:none}.staff-manager-row:hover{background:#f8fafc}.staff-manager-card-name{font-weight:700;color:#111827;font-size:.95rem;min-width:0}.staff-manager-card-unit{font-weight:600;color:#1f3f93;font-size:.86rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.staff-manager-card-license,.staff-manager-card-specialty{display:block;margin-top:2px;font-size:.72rem;font-weight:600;color:#64748b}.staff-manager-card-stat{font-size:.86rem;color:#374151;text-align:left;min-width:0}.staff-manager-card-stat-value{display:block;font-size:.86rem;font-weight:600;color:#374151;cursor:help}.staff-manager-card-stat-muted{font-size:.86rem;color:#94a3b8}.staff-manager-card-stat-sub{display:block;margin-top:2px;font-size:.62rem;font-weight:500;color:#64748b}.staff-manager-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-start}.staff-manager-btn{border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#1f3f93;padding:.45rem .75rem;font-size:.8rem;font-weight:600;cursor:pointer;white-space:nowrap}.staff-manager-btn:hover{background:#f8fafc;border-color:#94a3b8}.staff-manager-btn--primary{background:#1f3f93;border-color:#1f3f93;color:#fff}.staff-manager-btn--primary:hover{background:#183576;border-color:#183576}.staff-detail{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.staff-detail-toolbar{flex-shrink:0}.staff-detail-back-wrap{flex:1;min-width:0;display:flex;align-items:center}.staff-detail-back{border:none;background:transparent;color:#1f3f93;font-size:.9rem;font-weight:600;cursor:pointer;padding:0}.staff-detail-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:1rem;padding:2vw;box-sizing:border-box;background:#fff;scrollbar-gutter:stable}.staff-detail-back:hover{text-decoration:underline}.staff-detail-header h2{margin:0;font-size:1.5rem;font-weight:700;color:#111827}.staff-detail-meta-row{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-top:.35rem}.staff-detail-meta-fields{flex:1;min-width:0}.staff-detail-meta{margin:0;font-size:.9rem;color:#4b5563;line-height:1.5}.staff-detail-email-link{color:#2563eb;text-decoration:none}.staff-detail-email-link:hover{text-decoration:underline}.staff-detail-inline-field--email{flex:0 0 auto}.staff-detail-inline-field--email input,.staff-detail-inline-field--phone input{width:14rem;max-width:14rem;min-width:0}.staff-detail-phone-link{color:#2563eb;text-decoration:none}.staff-detail-phone-link:hover{text-decoration:underline}.staff-detail-name-input{width:100%;max-width:420px;margin:0;padding:.35rem .5rem;font-size:1.5rem;font-weight:700;color:#111827;border:1px solid #cbd5e1;border-radius:8px;box-sizing:border-box}.staff-detail-meta-edit{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.65rem 1rem}.staff-detail-inline-field{display:flex;flex-direction:column;gap:.2rem;font-size:.78rem;font-weight:600;color:#64748b}.staff-detail-inline-field input,.staff-detail-inline-field select{min-width:120px;padding:.35rem .5rem;font-size:.88rem;font-weight:500;color:#111827;border:1px solid #cbd5e1;border-radius:6px;background:#fff}.staff-detail-inline-field--unit select{min-width:180px}.staff-detail-inline-field--zip input{min-width:100px;max-width:120px}.staff-detail-profile-actions{display:flex;flex-shrink:0;align-items:center;gap:.5rem;margin-top:0}.staff-detail-profile-btn{border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#1f3f93;padding:.4rem .75rem;font-size:.8rem;font-weight:600;cursor:pointer;white-space:nowrap}.staff-detail-profile-btn:hover:not(:disabled){background:#f8fafc}.staff-detail-profile-btn:disabled{cursor:not-allowed;opacity:.55;color:#94a3b8;border-color:#e2e8f0;background:#f8fafc}.staff-detail-profile-btn--primary{background:#1f3f93;border-color:#1f3f93;color:#fff}.staff-detail-profile-btn--primary:hover:not(:disabled){background:#183576}.staff-detail-profile-btn--primary:disabled{background:#94a3b8;border-color:#cbd5e1;color:#f8fafc}.staff-detail-profile-error{margin:.5rem 0 0;font-size:.85rem;color:#b91c1c}.staff-detail-stat-edit{display:flex;align-items:baseline;gap:.25rem;margin:auto 0 0}.staff-detail-stat-edit input{width:4.5rem;padding:.15rem .35rem;font-size:1.15rem;font-weight:700;color:#111827;border:1px solid #cbd5e1;border-radius:6px}.staff-detail-stat-suffix{font-size:1rem;font-weight:700;color:#111827}.staff-profile-confirm{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:1rem}.staff-profile-confirm-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a73}.staff-profile-confirm-dialog{position:relative;z-index:1;width:min(400px,100%);padding:1.25rem;border-radius:12px;background:#fff;box-shadow:0 12px 40px #0000002e}.staff-profile-confirm-dialog h3{margin:0 0 .5rem;font-size:1.1rem;color:#111827}.staff-profile-confirm-dialog p{margin:0 0 1rem;color:#4b5563;font-size:.9rem}.staff-profile-confirm-actions{display:flex;justify-content:flex-end;gap:.5rem}.staff-detail-certs{margin:.35rem 0 0;padding-left:1.1rem;font-size:.85rem;color:#374151;line-height:1.45}.staff-detail-stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.75rem}.staff-detail-stat-card{border:1px solid #e5e7eb;border-radius:10px;background:#fff;padding:.75rem .85rem;min-height:5.5rem;display:flex;flex-direction:column}button.staff-detail-stat-card--cycle{width:100%;text-align:left;font:inherit;color:inherit;cursor:pointer;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}button.staff-detail-stat-card--cycle:hover{border-color:#93c5fd;background:#f8fafc;box-shadow:0 0 0 1px #bfdbfe}button.staff-detail-stat-card--cycle:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.staff-detail-stat-label{display:block;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:#6b7280;margin-bottom:.2rem}.staff-detail-stat-value{display:block;margin-top:auto;font-size:1.2rem;font-weight:700;color:#111827;line-height:1.2}.staff-detail-stat-subtext{display:flex;flex-direction:column;gap:.05rem;margin:0 0 .35rem;font-size:.85rem;font-weight:500;color:#6b7280;line-height:1.25}.staff-detail-stat-window{font-size:.78rem;font-weight:600;color:#4b5563}.staff-detail-stat-range{font-size:.85rem;font-weight:500;color:#6b7280}.staff-detail-calendar-section{border:1px solid #e5e7eb;border-radius:12px;background:#fff;padding:1rem}.staff-detail-tabs-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem;border-bottom:1px solid #e5e7eb;padding-bottom:.5rem}.staff-detail-tabs{display:flex;gap:.5rem}.staff-detail-tab{border:none;background:transparent;padding:.4rem .75rem;font-size:.88rem;font-weight:600;color:#6b7280;cursor:pointer;border-radius:6px}.staff-detail-tab.is-active{background:#eff6ff;color:#1f3f93}.staff-detail-tab:hover:not(.is-active){background:#f9fafb}.staff-rotation-hint{margin:0 0 .75rem;font-size:.8rem;color:#4b5563;line-height:1.4}.staff-detail-edit-btn{border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#374151;font-size:.82rem;font-weight:600;padding:.4rem .85rem;cursor:pointer;flex-shrink:0}.staff-detail-edit-btn:hover{background:#f9fafb;border-color:#9ca3af}.staff-detail-edit-btn.is-active{border-color:#1f3f93;background:#eff6ff;color:#1f3f93}.staff-schedule-legends{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:.35rem .65rem;max-width:min(100%,20rem);flex-shrink:1;position:relative;z-index:1}.staff-schedule-legend-item{display:flex;align-items:center;gap:.5rem;font-size:.72rem;font-weight:600;color:#374151}.staff-schedule-legend-swatch{width:1rem;height:1rem;border-radius:4px;flex-shrink:0;box-sizing:border-box}.staff-schedule-legend-swatch--noshow{background:#dc2626;border:1px solid #b91c1c}.staff-schedule-legend-swatch--late{background:#ea580c;border:1px solid #c2410c}.staff-schedule-legend-swatch--completed{background:#22c55e;border:1px solid #16a34a}.staff-schedule-legend-swatch--partial{background:#f59e0b;border:1px solid #d97706}.staff-schedule-legend-swatch--no-punch{background:#7c3aed;border:1px solid #6d28d9}.staff-schedule-legend-swatch--assigned{background:#fff;border:2px solid #111827}.staff-schedule-calendar{position:relative}.staff-schedule-calendar-loading{position:absolute;top:.35rem;left:50%;transform:translate(-50%);z-index:3;margin:0;padding:.2rem .65rem;border-radius:999px;background:#ffffffeb;border:1px solid #e5e7eb;font-size:.75rem;color:#6b7280;pointer-events:none}.staff-schedule-calendar--ot-tags .staff-schedule-cell{padding-top:.85rem}.staff-schedule-calendar-header{position:relative;display:flex;align-items:center;justify-content:flex-start;min-height:2.25rem;margin-bottom:.65rem}.staff-schedule-calendar-nav-group{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;gap:.75rem;pointer-events:none}.staff-schedule-calendar-nav-group .staff-schedule-calendar-nav,.staff-schedule-calendar-nav-group .staff-schedule-calendar-range{pointer-events:auto}.staff-schedule-calendar-range{margin:0;font-size:.95rem;font-weight:700;color:#111827;min-width:11rem;text-align:center}.staff-schedule-calendar-nav{border:1px solid #d1d5db;border-radius:6px;background:#fff;width:2rem;height:2rem;cursor:pointer;color:#374151}.staff-schedule-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(72px,1fr));gap:6px}.staff-schedule-weekday{text-align:center;font-size:.78rem;font-weight:600;color:#6b7280;padding-bottom:2px}.staff-schedule-cell{position:relative;min-height:116px;border:1px solid #e5e7eb;border-radius:8px;padding:4px;display:flex;flex-direction:column;background:#fff;overflow:visible}.staff-schedule-cell.has-pto{min-height:128px}.staff-schedule-cell.is-pto-locked{background:#fdf2f8;border-color:#f9a8d4}.staff-schedule-pto--locked{margin-top:.25rem;text-align:center;font-size:.7rem;font-weight:600}.staff-schedule-cell.out-month{background:#f1f5f9;color:#64748b}.staff-schedule-cell.current-day{border-color:#b91c1c;box-shadow:0 0 0 1px #b91c1c33}.staff-schedule-ot-tags{position:absolute;top:0;right:4px;z-index:2;transform:translateY(-50%);display:flex;flex-direction:row;align-items:center;gap:4px;max-width:calc(100% - 8px)}.staff-schedule-ot-tag{height:1.35rem;padding:0 7px;border-radius:999px;font-size:.58rem;font-weight:700;letter-spacing:.02em;line-height:1;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:help;box-sizing:border-box}.staff-schedule-ot-tag--dot-logged{border:1px solid #7c2d12;background:#9a3412;color:#fff7ed}.staff-schedule-ot-tag--dot-warning{border:1px solid #a16207;background:#fef3c7;color:#92400e}.staff-schedule-ot-tag--bwot-logged{border:1px solid #9a3412;background:#c2410c;color:#fff7ed}.staff-schedule-ot-tag--bwot-warning{border:1px solid #b45309;background:#ffedd5;color:#9a3412}.staff-schedule-ot-tag--late{border:1px solid #c2410c;background:#ea580c;color:#fff7ed}.staff-schedule-ot-tag--missing-punch{border:1px solid #6d28d9;background:#7c3aed;color:#f5f3ff}.staff-schedule-ot-tag--possible-noshow{border:1px solid #991b1b;background:#fee2e2;color:#7f1d1d}.staff-schedule-dot-logged{position:absolute;top:0;right:4px;z-index:2;transform:translateY(-50%);max-width:calc(100% - 8px);height:1.35rem;padding:0 7px;border-radius:999px;border:1px solid #7c2d12;background:#9a3412;color:#fff7ed;font-size:.62rem;font-weight:700;letter-spacing:.02em;line-height:1;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:help;box-sizing:border-box}.staff-schedule-day-num{font-size:.75rem;font-weight:600;margin-bottom:3px}.staff-schedule-slots{display:flex;flex-direction:column;gap:2px;flex:1;min-height:0}.staff-schedule-pto{margin-top:auto;flex-shrink:0;width:100%;min-height:1.15rem;border-radius:4px;border:1px solid #f472b6;background:#f9a8d4;color:#831843;padding:2px 4px;font-size:.58rem;font-weight:700;line-height:1.1;display:flex;align-items:center;justify-content:center;box-sizing:border-box}.staff-schedule-shift{width:100%;min-height:1.25rem;border-radius:4px;border:1px solid #9ca3af;background:#fff;color:#111827;padding:2px 4px;font-size:.66rem;font-weight:600;line-height:1.2;display:flex;align-items:center;justify-content:center;box-sizing:border-box}.staff-schedule-shift--status-assigned{background:#fff;border:2px solid #111827;color:#111827}.staff-schedule-shift--status-completed{background:#22c55e;border:1px solid #16a34a;color:#052e16}.staff-schedule-shift--status-partial{background:#f59e0b;border:1px solid #d97706;color:#451a03}.staff-schedule-shift--status-noshow{background:#dc2626;border:1px solid #b91c1c;color:#fff}.staff-schedule-shift--status-late{background:#ea580c;border:1px solid #c2410c;color:#fff}.staff-schedule-shift--status-no_punch_in,.staff-schedule-shift--status-no_punch_out{background:#7c3aed;border:1px solid #6d28d9;color:#fff}.staff-schedule-shift--clickable{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0;font-family:inherit;text-align:center}.staff-schedule-shift--clickable:hover{filter:brightness(.98)}.staff-schedule-shift--clickable:focus-visible{outline:2px solid #2563eb;outline-offset:1px}.staff-schedule-shift--morning{border-color:#ca8a04;background:#fef9c3}.staff-schedule-shift--evening{border-color:#7c3aed;background:#ede9fe}.staff-schedule-shift--night{border-color:#1e40af;background:#dbeafe}.staff-schedule-shift--preferred-only{background:#fff;border:2px solid #2563eb;color:#111827}.staff-schedule-shift.is-preferred{border:2px solid #2563eb;box-shadow:none}.staff-schedule-shift.is-selectable{cursor:pointer;border-style:dashed;background:#fff}.staff-schedule-shift.is-selectable:hover{background:#f8fafc}.staff-schedule-shift.is-selected{border-style:solid;border-color:#2563eb;background:#eff6ff;color:#1e40af}.staff-detail-submit-wrap{margin-top:.75rem;display:flex;justify-content:flex-end}@media (max-width: 900px){.staff-manager-list-header{display:none}.staff-manager-row{grid-template-columns:1fr 1fr;gap:.75rem}.staff-manager-card-name{grid-column:1 / -1}.staff-manager-actions{grid-column:1 / -1;justify-content:flex-start}.staff-detail-stats{grid-template-columns:repeat(2,minmax(0,1fr))}@media (min-width: 901px) and (max-width: 1200px){.staff-detail-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}.staff-schedule-calendar-grid{grid-template-columns:repeat(7,minmax(56px,1fr))}.staff-schedule-calendar-header{flex-direction:column;align-items:stretch;min-height:auto;gap:.35rem;padding-bottom:.15rem}.staff-schedule-legends{max-width:100%;justify-content:center}.staff-schedule-calendar-nav-group{position:static;transform:none;pointer-events:auto}}@media print{.staff-manager-page header,.staff-detail-toolbar,.staff-manager-actions,.staff-detail-tabs,.staff-detail-submit-wrap{display:none!important}}.pto-manager-page{height:100vh;display:flex;flex-direction:column;overflow:hidden;background:#eef3fa}.pto-manager-main{flex:1;min-height:0;display:flex;flex-direction:column;width:90vw;max-width:90vw;margin:0 auto;padding:16px 20px 18px;box-sizing:border-box}.pto-manager-page-title{margin:0 0 14px;color:#111827;font-size:1.65rem;font-weight:700}.pto-manager-page-title--back{cursor:pointer;width:fit-content}.pto-manager-page-title--back:hover,.pto-manager-page-title--back:focus-visible{color:#1d4ed8;outline:none}.pto-manager-embed{flex:1;min-height:0;display:flex;flex-direction:column;border:1px solid #d1d5db;border-radius:10px;background:#fff;box-shadow:0 1px 3px #0000000f;overflow:hidden}.pto-manager-embed-toolbar{display:flex;align-items:center;gap:10px;flex-shrink:0;padding:12px 14px;border-bottom:1px solid #e5e7eb;background:#f8fafc}.pto-manager-search-wrap{flex:1;min-width:0;display:flex;align-items:center;gap:8px;height:40px;border:1px solid #cbd5e1;border-radius:8px;padding:0 10px 0 12px;background:#fff;box-sizing:border-box}.pto-manager-search-icon{width:20px;height:20px;flex-shrink:0;color:#64748b}.pto-manager-search{flex:1;min-width:0;height:100%;border:none;padding:0;font-size:.9rem;background:transparent;outline:none;box-sizing:border-box}.pto-manager-toolbar-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.pto-manager-icon-btn{width:40px;height:40px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;color:#334155}.pto-manager-icon-btn:hover{background:#f1f5f9;border-color:#94a3b8}.pto-manager-icon-btn[aria-expanded=true]{border-color:#1f3f93;color:#1f3f93}.pto-manager-toolbar-wrap{position:relative}.pto-manager-sort-menu,.pto-manager-filter-panel{position:absolute;top:calc(100% + 6px);right:0;z-index:30;min-width:200px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 10px 28px #0f172a1f;padding:8px}.pto-manager-sort-menu .sort-menu-item+.sort-menu-item{margin-top:2px}.pto-manager-filter-panel{padding:12px;display:flex;flex-direction:column;gap:12px}.pto-manager-filter-field{display:flex;flex-direction:column;gap:4px}.pto-manager-filter-field label{font-size:.78rem;font-weight:600;color:#475569}.pto-manager-filter-field select{height:36px;border:1px solid #cbd5e1;border-radius:7px;padding:0 8px;font-size:.86rem;background:#fff}.pto-manager-list-embed{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;background:#fff}.pto-manager-detail-wrap{flex:1;min-height:0;display:flex;flex-direction:column;border:1px solid #d1d5db;border-radius:10px;background:#fff;box-shadow:0 1px 3px #0000000f;overflow:hidden}.pto-manager-list-header{position:sticky;top:0;z-index:2;display:grid;grid-template-columns:minmax(140px,1.4fr) minmax(72px,.9fr) minmax(52px,72px) repeat(3,minmax(88px,1fr));gap:12px 16px;align-items:center;padding:10px 18px;background:#f1f5f9;border-bottom:1px solid #cbd5e1;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#64748b}.pto-manager-list-inner{display:flex;flex-direction:column;gap:0}.pto-manager-load-error,.pto-manager-loading{margin:0 0 1rem;padding:.75rem 1rem;border-radius:8px;background:#fff4f4;color:#8b1a1a;font-size:.95rem}.pto-manager-loading{background:#f4f8ff;color:#1a3d8b}.pto-manager-empty{padding:32px 16px;text-align:center;color:#64748b;font-size:.9rem}.pto-manager-card{display:grid;grid-template-columns:minmax(140px,1.4fr) minmax(72px,.9fr) minmax(52px,72px) repeat(3,minmax(88px,1fr));gap:12px 16px;align-items:center;padding:14px 18px;border:none;border-bottom:1px solid #e5e7eb;border-radius:0;text-align:left;width:100%;font:inherit;cursor:pointer;background:#fff;color:inherit;box-sizing:border-box}.pto-manager-card:hover{background:#f8fafc}.pto-manager-card:focus-visible{outline:2px solid #1f3f93;outline-offset:-2px;position:relative;z-index:1}.pto-manager-card:last-child{border-bottom:none}.pto-manager-card-name{font-weight:700;color:#111827;font-size:.95rem}.pto-manager-card-unit{font-weight:600;color:#1f3f93;font-size:.86rem}.pto-manager-card-license{font-weight:700;color:#334155;font-size:.86rem;letter-spacing:.02em}.pto-manager-card-stat{font-size:.86rem;color:#374151}.pto-manager-card-stat span{display:block;font-size:.72rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.02em;margin-bottom:2px}@media (max-width: 720px){.pto-manager-list-header{display:none}.pto-manager-card{grid-template-columns:1fr 1fr;grid-template-rows:auto}.pto-manager-card-name{grid-column:1 / -1}.pto-manager-card-license{grid-column:2}}.time-off-shell{flex:1;min-height:0;display:flex;flex-direction:column;padding:12px 14px 14px;box-sizing:border-box}.time-off-top{flex-shrink:0;display:flex;flex-direction:column;gap:12px}.time-off-back-btn{align-self:flex-start;border:none;background:transparent;color:#1f3f93;font-size:.86rem;font-weight:600;cursor:pointer;padding:4px 0}.time-off-back-btn:hover{text-decoration:underline}.time-off-employee-banner{border:1px solid #e2e8f0;border-radius:10px;padding:12px 14px;background:#f8fafc}.time-off-employee-primary{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px 14px;margin-bottom:6px}.time-off-employee-name{font-size:1.15rem;font-weight:700;color:#111827}.time-off-employee-unit{font-size:.9rem;font-weight:700;color:#1f3f93}.time-off-employee-meta{display:flex;flex-wrap:wrap;gap:6px 8px;font-size:.82rem;color:#475569}.time-off-input-range-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:14px 20px}.time-off-action-btns{display:flex;align-items:center;gap:8px;margin-left:auto}.time-off-cancel-btn,.time-off-clear-btn{height:38px;padding:0 16px;border-radius:8px;font-size:.86rem;font-weight:600;cursor:pointer}.time-off-cancel-btn{border:1px solid #cbd5e1;background:#fff;color:#334155}.time-off-cancel-btn:hover:not(:disabled){background:#f8fafc;border-color:#94a3b8}.time-off-cancel-btn:disabled{opacity:.45;cursor:not-allowed}.time-off-clear-btn{border:1px solid #cbd5e1;background:#fff;color:#334155}.time-off-clear-btn:hover{background:#fef2f2;border-color:#f87171;color:#b91c1c}.time-off-date-field{display:flex;flex-direction:column;gap:4px;font-size:.78rem;font-weight:600;color:#475569}.time-off-date-field input,.time-off-date-field select{height:38px;min-width:160px;border:1px solid #cbd5e1;border-radius:8px;padding:0 10px;font-size:.88rem;background:#fff}.time-off-date-field--multi{flex:1;min-width:280px}.time-off-date-multi-input{min-width:280px;cursor:default;color:#0f172a}.time-off-pto-type-field select{min-width:180px;cursor:pointer}.time-off-required{color:#b91c1c}.time-off-calendar-embed{flex:1;min-height:0;margin-top:12px;overflow-y:auto;overflow-x:hidden;border:1px solid #e5e7eb;border-radius:10px;padding:10px 12px 12px;background:#fff}.time-off-cal-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.time-off-month-label{font-weight:700;font-size:.95rem;color:#1e293b}.time-off-nav-btn{width:36px;height:36px;border:1px solid #cbd5e1;border-radius:8px;background:#f8fafc;font-size:1.2rem;line-height:1;cursor:pointer;color:#334155}.time-off-nav-btn:hover{background:#e2e8f0}.time-off-weekday-row{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:6px}.time-off-weekday-cell{text-align:center;font-size:.72rem;font-weight:700;color:#64748b;text-transform:uppercase}.time-off-day-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(4,minmax(0,auto));gap:6px;align-items:stretch;-webkit-user-select:none;user-select:none}.time-off-day-cell{display:flex;flex-direction:column;align-items:stretch;min-height:104px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;padding:6px 6px 7px;box-sizing:border-box;text-align:left}.time-off-day-num{align-self:flex-start;font-size:.88rem;font-weight:700;color:#1e293b;line-height:1.2;margin-bottom:4px}.time-off-day-cell--past{cursor:not-allowed;background:#e5e7eb;border-color:#cbd5e1;opacity:.72}.time-off-day-cell--past .time-off-day-num{color:#64748b}.time-off-day-cell--past.is-today{box-shadow:none}.time-off-day-cell--past.time-off-day-cell--saved-pto{opacity:1;background:#dbeafe;border-color:#93c5fd}.time-off-day-cell--blocked-pto{opacity:1;background:#f3f4f6;border-color:#d1d5db;color:#6b7280;cursor:not-allowed}.time-off-day-blocked-label{font-size:.62rem;font-weight:600;color:#6b7280;line-height:1.2;text-align:center}.time-off-day-saved-hours{font-size:.65rem;font-weight:600;color:#1d4ed8;line-height:1.2}.time-off-day-hours-placeholder{flex:1;min-height:8px}.time-off-day-cell--selectable{cursor:pointer;font:inherit;color:inherit}.time-off-day-cell--selectable.time-off-day-cell--locked,.time-off-day-cell--selectable.time-off-day-cell--locked:disabled{cursor:not-allowed;opacity:.92;background:#f8fafc;border-color:#e2e8f0}.time-off-day-cell--selectable.time-off-day-cell--locked:hover{border-color:#e2e8f0;background:#f8fafc}.time-off-day-grid--locked{cursor:not-allowed}.time-off-day-cell--selectable.in-month:hover:not(.range-endpoint):not(.in-range){border-color:#1f3f93;background:#eff6ff}.time-off-day-cell--selectable.out-month{opacity:.85}.time-off-day-cell--selectable.is-today:not(.range-endpoint):not(.in-range){box-shadow:inset 0 0 0 2px #1f3f93}.time-off-day-hours{display:flex;flex-direction:column;gap:2px;margin-top:auto;width:100%;pointer-events:auto}.time-off-day-hours-label{font-size:.58rem;font-weight:700;color:#64748b;line-height:1.15;text-transform:uppercase;letter-spacing:.02em}.time-off-day-hours-input{width:100%;box-sizing:border-box;height:26px;border:1px solid #cbd5e1;border-radius:5px;padding:0 5px;font-size:.72rem;font-weight:600;background:#fff;color:#111827}.time-off-day-cell--selectable.in-range .time-off-day-hours-input{border-color:#3b82f6;background:#f0f9ff}.time-off-day-cell--selectable.range-endpoint .time-off-day-hours-input{border-color:#ffffffa6;background:#fffffff2;color:#1e293b}.time-off-day-cell--selectable.in-range:not(.range-endpoint){background:#bfdbfe;border-color:#60a5fa}.time-off-day-cell--selectable.in-range:not(.range-endpoint) .time-off-day-num{color:#1e3a8a}.time-off-day-cell--selectable.in-range:not(.range-endpoint) .time-off-day-hours-label{color:#1e40af}.time-off-day-cell--selectable.range-endpoint{background:#1f3f93;border-color:#1f3f93}.time-off-day-cell--selectable.range-endpoint .time-off-day-num{color:#fff}.time-off-day-cell--selectable.range-endpoint .time-off-day-hours-label{color:#ffffffeb}.time-off-footer{flex-shrink:0;margin-top:12px;padding-top:4px;display:flex;justify-content:flex-end}.time-off-submit-btn{min-width:120px;height:40px;border:none;border-radius:8px;background:#1f3f93;color:#fff;font-size:.9rem;font-weight:700;cursor:pointer}.time-off-submit-btn:disabled{opacity:.45;cursor:not-allowed}.time-off-submit-btn:not(:disabled):hover{filter:brightness(1.05)}@media (max-width: 720px){.time-off-day-cell{min-height:96px;padding:5px 4px 6px}.time-off-day-hours-label{font-size:.52rem}.time-off-day-hours-input{height:24px;font-size:.68rem}}@media (max-width: 520px){.time-off-day-cell{min-height:88px}.time-off-day-num{font-size:.8rem}}.pto-calc-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box}.pto-calc-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a73;cursor:pointer}.pto-calc-modal{position:relative;z-index:1;width:min(440px,100%);max-height:min(90vh,640px);margin:0;padding:0;border:1px solid #e2e8f0;border-radius:12px;background:#fff;box-shadow:0 20px 50px #0f172a33;display:flex;flex-direction:column;overflow:hidden}.pto-calc-header{padding:16px 18px 12px;border-bottom:1px solid #e5e7eb;flex-shrink:0}.pto-calc-header h2{margin:0;font-size:1.15rem;color:#111827}.pto-calc-subtitle{margin:6px 0 0;font-size:.88rem;color:#475569;font-weight:600}.pto-calc-type-badge{margin:8px 0 0;font-size:.86rem;color:#1f3f93}.pto-calc-type-badge strong{font-weight:700}.pto-calc-holiday-note{margin:0;padding:10px 12px;border-radius:8px;background:#f0f9ff;border:1px solid #bae6fd;font-size:.88rem;color:#0c4a6e;line-height:1.45}.pto-calc-body{padding:14px 18px;overflow-y:auto;flex:1;min-height:0}.pto-calc-section{margin-bottom:16px}.pto-calc-section:last-child{margin-bottom:0}.pto-calc-section-title{margin:0 0 8px;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#64748b}.pto-calc-daily-list{list-style:none;margin:0 0 10px;padding:0;border:1px solid #e5e7eb;border-radius:8px;max-height:160px;overflow-y:auto}.pto-calc-daily-list li{display:flex;justify-content:space-between;gap:12px;padding:6px 10px;font-size:.82rem;color:#334155;border-bottom:1px solid #f1f5f9}.pto-calc-daily-list li:last-child{border-bottom:none}.pto-calc-total-line{display:flex;justify-content:space-between;align-items:center;margin:0;padding:8px 10px;background:#f8fafc;border-radius:8px;font-size:.9rem;color:#1e293b}.pto-calc-math-line{display:flex;justify-content:space-between;gap:12px;margin:0 0 4px;font-size:.86rem;color:#374151}.pto-calc-math-subtract{color:#b45309;font-weight:600}.pto-calc-math-add{color:#047857;font-weight:700}.pto-calc-math-net span:last-child{font-size:1rem}.pto-calc-math-line--muted{color:#64748b;font-size:.82rem}.pto-calc-bucket-block{margin-bottom:14px;padding-bottom:12px;border-bottom:1px dashed #e2e8f0}.pto-calc-bucket-block:last-of-type{margin-bottom:0;padding-bottom:0;border-bottom:none}.pto-calc-bucket-block--active{padding:10px 12px;border-radius:8px;background:#f8fafc;border:1px solid #e2e8f0}.pto-calc-bucket-title{margin:0 0 8px;font-size:.88rem;font-weight:700;color:#1e293b}.pto-calc-math-result{margin-bottom:10px;padding-bottom:8px;border-bottom:1px dashed #e2e8f0;font-weight:600;color:#1e293b}.pto-calc-math-note{margin:0 0 10px;font-size:.82rem;color:#64748b}.pto-calc-unpaid{margin-top:8px;padding:10px 12px;border-radius:8px;background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;font-weight:700}.pto-calc-unpaid span:last-child{font-size:1rem}.pto-calc-remaining{padding:12px 14px;border-radius:10px;background:#ecfdf5;border:1px solid #6ee7b7}.pto-calc-remaining .pto-calc-section-title{color:#047857}.pto-calc-remaining-line{display:flex;justify-content:space-between;margin:0 0 6px;font-size:.92rem;font-weight:700;color:#047857}.pto-calc-remaining-line:last-child{margin-bottom:0}.pto-calc-footer{display:flex;justify-content:flex-end;gap:10px;padding:12px 18px 16px;border-top:1px solid #e5e7eb;flex-shrink:0;background:#fafafa}.pto-calc-btn{min-width:100px;height:40px;padding:0 16px;border-radius:8px;font-size:.88rem;font-weight:700;cursor:pointer;border:1px solid transparent}.pto-calc-btn-cancel{background:#fff;border-color:#cbd5e1;color:#334155}.pto-calc-btn-cancel:hover{background:#f1f5f9}.pto-calc-btn-submit{background:#1f3f93;color:#fff;border-color:#1f3f93}.pto-calc-btn-submit:hover{filter:brightness(1.06)}:root{font-family:Arial,Helvetica,sans-serif;line-height:1.5;color:#1f2937;background-color:#f5f7fb}*{box-sizing:border-box}body{margin:0}.container{max-width:720px;margin:80px auto;padding:32px;border-radius:8px;background:#fff;box-shadow:0 10px 30px #00000014}
