@import"https://fonts.googleapis.com/css2?family=Quicksand:wght@400;500;600;700&family=Montserrat:wght@400;500;600&display=swap";@import"https://fonts.googleapis.com/css2?family=Quicksand:wght@400;500;600;700&family=Montserrat:wght@300;400;500;600&display=swap";.landing-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(160deg,#f8fafc,#e2e8f0);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;opacity:0;transition:opacity .4s ease}.landing-page.landing-loading-state,.landing-page.landing-mounted{opacity:1}.landing-loading{margin:auto;color:#64748b;font-size:1rem}.landing-main-simple{display:flex;flex-direction:column;align-items:center;gap:24px;padding:2rem}.landing-cube-logo{display:flex;align-items:center;justify-content:center}.landing-cube-logo svg{filter:drop-shadow(2px 4px 6px rgba(0,0,0,.15))}.landing-brand-name{font-family:Quicksand,sans-serif;font-size:42px;font-weight:400;color:#3a3a3a;letter-spacing:-.5px;margin:0}.landing-brand-highlight{font-weight:400}.landing-login-btn{width:50%;min-width:140px;padding:12px 20px;height:44px;background:#3a3a3a;color:#fff;border:none;border-radius:9999px;font-family:Montserrat,sans-serif;font-size:14px;font-weight:500;letter-spacing:.5px;cursor:pointer;transition:all .2s ease;margin-top:8px}.landing-login-btn:hover{background:#4a4a4a;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.landing-login-btn:active{transform:translateY(0)}.landing-login-btn:focus-visible{outline:2px solid #4a4a4a;outline-offset:2px}.staff-profile-card{background:var(--color-background-card);border-radius:var(--radius-md);padding:var(--spacing-md) var(--spacing-md) var(--spacing-md) 12px;margin-bottom:var(--spacing-md);border:1px solid var(--color-border-light);box-shadow:var(--shadow-xs);overflow:visible}.staff-profile-grid{display:grid;grid-template-columns:180px minmax(0,1fr);gap:20px;align-items:stretch;margin-bottom:24px}.staff-details-section{display:flex;flex-direction:column;gap:0;width:100%;height:100%;flex:1;min-width:0}.staff-avatar{width:160px;height:160px;min-width:160px;min-height:160px;border-radius:var(--radius-full);overflow:hidden;border:3px solid var(--color-border-light);background:var(--color-background-secondary);display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative}.staff-avatar img{width:100%;height:100%;object-fit:cover}.staff-avatar>div{font-size:48px;color:var(--color-text-light)}.staff-avatar-editable{cursor:pointer;outline:none}.staff-avatar-editable:hover{box-shadow:0 0 0 3px var(--color-primary, #2563eb)}.staff-avatar-editable:focus-visible{box-shadow:0 0 0 3px var(--color-primary, #2563eb)}.staff-profile-image-upload-overlay{position:absolute;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:500;border-radius:inherit}.staff-role-edit{width:160px;margin-top:8px}.staff-edit-label{display:block;font-size:11px;font-weight:600;color:var(--color-text-light);margin-bottom:4px}.staff-edit-select{width:100%;padding:6px 10px;font-size:13px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-background-card);color:var(--color-text)}.staff-edit-name-fields{display:flex;gap:8px;flex:1;min-width:0}.staff-edit-name-fields .staff-edit-input-first{flex:1}.staff-edit-input{padding:8px 12px;font-size:16px;font-weight:600;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-background-card);color:var(--color-text);min-width:0}.staff-edit-actions{display:flex;gap:8px;flex-shrink:0}.staff-edit-save-btn{padding:8px 16px;font-size:13px;font-weight:600;background:var(--color-primary, #000);color:var(--color-secondary, #fff);border:none;border-radius:var(--radius-sm);cursor:pointer}.staff-edit-save-btn:hover{opacity:.9}.staff-edit-cancel-btn{padding:8px 16px;font-size:13px;font-weight:500;background:var(--color-background-secondary);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer}.staff-edit-cancel-btn:hover{background:var(--color-border-light)}.staff-edit-input-inline{flex:1;min-width:0;padding:4px 8px;font-size:13px;font-weight:600;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-background-card);color:var(--color-text)}.staff-edit-input-inline.staff-edit-input-full{width:100%}.staff-role-badge{display:flex;justify-content:center;width:160px;margin-top:8px}.staff-role-badge span{padding:8px 20px;border-radius:20px;font-weight:600;font-size:14px;text-align:center;white-space:nowrap;background:var(--color-primary, #000);color:var(--color-secondary, #fff)}.staff-send-login-wrap{margin-top:10px;width:100%;max-width:140px}.staff-send-login-btn{width:100%;padding:6px 12px;font-size:12px;font-weight:500;border:1px solid var(--color-border);border-radius:8px;background:var(--color-background-card);color:var(--color-text);cursor:pointer;transition:background .2s,border-color .2s}.staff-send-login-btn:hover:not(:disabled){background:var(--color-background-alt);border-color:var(--color-primary)}.staff-send-login-btn:disabled{opacity:.7;cursor:not-allowed}.staff-login-details-msg{margin-top:6px;font-size:11px;line-height:1.3}.staff-login-details-msg--success{color:var(--color-success, #15803d)}.staff-login-details-msg--error{color:var(--color-danger, #b91c1c)}.staff-details-grid{display:flex;flex-direction:column;justify-content:flex-start;gap:0;margin-bottom:0;margin-top:0;width:100%}.staff-name-section{display:flex;flex-direction:column;gap:0;width:100%}.staff-name-header{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;margin-bottom:16px}.staff-profile-card .staff-name,.staff-details-grid .staff-name,.staff-name-section .staff-name{color:#212529!important;font-size:24px;font-weight:600;margin:0;display:block;flex:1;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.staff-edit-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid var(--color-border);border-radius:50%;background:var(--color-background);color:var(--color-text);cursor:pointer;transition:all .2s;flex-shrink:0}.staff-edit-button:hover{background:var(--color-background-secondary);border-color:var(--color-primary);color:var(--color-primary)}.staff-edit-button:active{transform:scale(.95)}.staff-edit-button svg{width:16px;height:16px}.staff-details-block{display:flex;flex-direction:column;gap:10px 0;width:100%;margin-top:4px;margin-right:300px}.staff-details-block>.staff-details-row,.staff-details-block>.staff-details-row-full{margin-top:6px}.staff-details-block>.staff-details-row:first-child{margin-top:0}.staff-details-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:20px;row-gap:6px;width:100%}.staff-details-cell{display:flex;flex-direction:row;align-items:baseline;gap:6px;min-width:0;flex:1}.staff-details-cell .staff-info-label{font-size:13px;font-weight:500;color:#6c757d!important;margin:0;white-space:nowrap;flex-shrink:0}.staff-details-cell .staff-info-value{font-size:13px;font-weight:600;color:#212529!important;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.staff-details-row-full{display:flex;flex-direction:row;align-items:baseline;gap:6px}.staff-details-row-full .staff-info-label{font-size:13px;font-weight:500;color:#6c757d!important;margin:0;white-space:nowrap;flex-shrink:0}.staff-details-row-full .staff-info-value{font-size:13px;font-weight:600;color:#212529!important;margin:0;white-space:normal;overflow:visible;text-overflow:clip;flex:1;min-width:0}.staff-info-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px 24px;width:100%;margin-top:0;row-gap:16px}.staff-profile-card input,.staff-profile-card .staff-info-value{color:#212529!important;background:transparent!important;border:none!important;padding:0!important;font-size:13px!important;font-weight:600!important}.staff-info-grid .info-item{display:flex;flex-direction:row;align-items:baseline;gap:6px;margin:0;padding:0;min-width:0;flex-wrap:wrap;border-bottom:none!important}.staff-profile-card .staff-info-label,.staff-details-grid .staff-info-label{font-size:13px;font-weight:500;color:#6c757d!important;margin:0;white-space:nowrap;flex-shrink:0}.staff-profile-card .staff-info-value,.staff-details-grid .staff-info-value{font-size:13px;font-weight:600;color:#212529!important;margin:0;word-break:break-word;flex:1;min-width:0}.staff-site-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;white-space:nowrap;border:none!important;box-shadow:none!important}.staff-section{margin-top:24px;padding-top:24px;border-top:1px solid var(--color-border-light)}.staff-section:first-of-type{margin-top:0;padding-top:0;border-top:none}.staff-profile-card .staff-section{border-top:none}.staff-details-section .staff-section{margin-top:12px;padding-top:0}.staff-assigned-sites-block .staff-info-label{display:block;font-size:13px;font-weight:500;color:#6c757d!important;margin:0 0 8px;white-space:nowrap}.staff-assigned-sites-block .staff-sites-list{margin-top:0}.staff-section-title{font-size:16px;font-weight:var(--font-weight-semibold);color:var(--color-text);margin:0 0 12px}.staff-section .staff-info-label{font-size:13px;font-weight:500;color:#6c757d!important;margin:0;white-space:nowrap;flex-shrink:0}.staff-section .staff-info-value{font-size:13px;font-weight:600;color:#212529!important;margin:0;word-break:break-word;flex:1;min-width:0}.staff-section-contract{margin-top:12px;padding-top:12px}.staff-section-contract .staff-slide-title.staff-info-label{font-size:13px;font-weight:500;color:#6c757d!important;margin:0;flex-shrink:0}.staff-contract-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px 16px;font-size:12px}.staff-contract-item{display:flex;flex-direction:column;gap:2px;min-width:0}.staff-contract-item-full{grid-column:1 / -1}.staff-slide-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.staff-slide-title{margin:0}.staff-slide-arrows{display:flex;align-items:center;gap:4px;flex-shrink:0}.staff-slide-nav{display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--color-border);border-radius:6px;padding:6px;cursor:pointer;color:var(--color-text)}.staff-slide-nav:hover:not(:disabled){background:var(--color-background-alt)}.staff-slide-nav svg{display:block}.staff-slide-viewport{overflow:hidden;width:100%;position:relative}.staff-slide-track{display:flex;width:200%;transition:transform .25s ease-out;min-height:120px}.staff-slide-panel{flex:0 0 50%;width:50%;min-width:0;box-sizing:border-box;padding-right:4px}.staff-slide-track--three{width:300%}.staff-slide-track--three .staff-slide-panel{flex:0 0 33.333%;width:33.333%}.staff-slide-track--four{width:400%}.staff-slide-track--four .staff-slide-panel{flex:0 0 25%;width:25%}.staff-perm-matrix-panel{padding:4px 0}.staff-perm-matrix-summary{margin-bottom:14px}.staff-perm-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:6px}.staff-perm-summary-col{display:flex;flex-direction:column;gap:6px}.staff-perm-summary-head{font-size:11px;font-weight:600;color:var(--color-text-light)}.staff-perm-badge{font-size:11px;padding:2px 8px;border-radius:4px;display:inline-block;width:fit-content}.staff-perm-badge--view{background:#e3f2fd;color:#1565c0}.staff-perm-badge--edit{background:#e8f5e9;color:#2e7d32}.staff-perm-tasks-summary .staff-perm-tasks-list{margin:6px 0 0;padding-left:18px;font-size:12px;color:var(--color-text)}.staff-perm-matrix-panel--edit .staff-perm-matrix-headers{display:grid;grid-template-columns:1fr 1fr;gap:8px;font-size:11px;font-weight:600;color:var(--color-text-light);margin-bottom:8px;padding-bottom:4px;border-bottom:1px solid var(--color-border)}.staff-perm-matrix-grid{display:flex;flex-direction:column;gap:4px}.staff-perm-matrix-row{margin-bottom:4px}.staff-perm-matrix-cols{display:grid;grid-template-columns:1fr 1fr;gap:8px;font-size:11px}.staff-perm-matrix-cols--parent{background:#fff9c480;padding:4px 8px;border-radius:4px;font-weight:600}.staff-perm-matrix-cols label{display:flex;align-items:center;gap:6px;cursor:pointer}.staff-perm-matrix-cols label input{margin:0}.staff-perm-disabled{opacity:.5;cursor:not-allowed!important}.staff-perm-tasks-edit{margin-top:14px;padding-top:12px;border-top:1px solid var(--color-border)}.staff-perm-tasks-edit-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:8px}.staff-perm-task-check{display:flex;align-items:center;gap:6px;font-size:11px;cursor:pointer}.staff-perm-task-check input{margin:0}.staff-contract-nok-block{margin-top:12px}.staff-contract-nok-block .staff-info-label{display:block;margin-bottom:6px}.staff-nok-profile{padding:12px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-background-card);display:flex;flex-direction:column;gap:4px;min-width:200px;max-width:260px;transition:box-shadow .2s}.staff-nok-profile:hover{box-shadow:0 2px 4px #00000014}.staff-nok-profile--editable{cursor:pointer}.staff-nok-profile--editable:hover{border-color:var(--color-primary);box-shadow:0 2px 6px #0000001f}.staff-nok-profile-name{font-size:14px;font-weight:600;color:#212529;margin:0;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.staff-nok-profile-relationship,.staff-nok-profile-phone,.staff-nok-profile-email{font-size:12px;color:#495057;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.staff-nok-profile-relationship{color:#6c757d;font-weight:500}.staff-nok-profile-hint{font-size:11px;color:var(--color-primary);margin-top:4px}.staff-nok-modal-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px;box-sizing:border-box}.staff-nok-modal{background:var(--color-background-card);border-radius:10px;padding:20px;min-width:320px;max-width:90vw;max-height:calc(100vh - 40px);overflow-y:auto;box-shadow:0 8px 24px #00000026;margin:auto}.staff-nok-modal-title{margin:0 0 16px;font-size:16px;font-weight:600}.staff-nok-modal-fields{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.staff-nok-modal-label{font-size:12px;font-weight:500;color:var(--color-text-light)}.staff-nok-modal-input{padding:8px 10px;border:1px solid var(--color-border);border-radius:6px;font-size:13px;width:100%;box-sizing:border-box}.staff-nok-modal-actions{display:flex;justify-content:flex-end;gap:8px}.staff-rota-holiday-panel{display:flex;flex-direction:column;gap:16px;min-height:100px;width:100%}.staff-rota-rates-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.staff-rota-rate-item{display:flex;flex-direction:column;gap:4px}.staff-rota-block{padding:8px 0;min-width:0}.staff-rota-subtitle{font-size:13px;font-weight:600;color:var(--color-text);margin:0 0 8px}.staff-rota-availability{display:flex;flex-direction:column;gap:4px;font-size:12px}.staff-rota-availability-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:12px}.staff-rota-day{font-weight:500;color:var(--color-text);min-width:80px}.staff-rota-available{color:var(--color-text-light)}.staff-rota-times{color:var(--color-text)}.staff-rota-availability-check{display:inline-flex;align-items:center;gap:6px;cursor:pointer;font-size:12px;color:var(--color-text)}.staff-rota-availability-check input{width:14px;height:14px}.staff-rota-time-input{font-size:12px;padding:4px 6px;border:1px solid var(--color-border);border-radius:4px;width:80px}.staff-rota-to{font-size:11px;color:var(--color-text-light);margin:0 2px}.staff-rota-shift-types{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.staff-rota-shift-check{display:inline-flex;align-items:center;gap:6px;cursor:pointer;font-size:12px}.staff-rota-shift-check input{width:14px;height:14px}.staff-rota-tag{font-size:11px;padding:4px 8px;background:var(--color-background-alt);border-radius:6px;color:var(--color-text)}.staff-rota-holiday-fields{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 16px}.staff-section-contract .staff-contract-item .staff-info-label{font-size:11px;color:var(--color-text-light);font-weight:500}.staff-section-contract .staff-contract-item .staff-info-value{font-size:12px;font-weight:600}.staff-contract-input{font-size:12px;padding:4px 8px;min-height:28px;width:100%;max-width:100%;box-sizing:border-box}.staff-contract-nok-fields{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}@media(min-width:520px){.staff-contract-nok-fields{grid-template-columns:repeat(4,1fr)}}.staff-sites-list{display:flex;flex-direction:row;gap:12px;overflow-x:auto;overflow-y:hidden;padding-bottom:8px;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}.staff-sites-list::-webkit-scrollbar{height:6px}.staff-sites-list::-webkit-scrollbar-track{background:transparent}.staff-sites-list::-webkit-scrollbar-thumb{background-color:var(--color-border);border-radius:3px}.staff-sites-list::-webkit-scrollbar-thumb:hover{background-color:var(--color-border-light)}.staff-site-item{display:flex;flex-direction:column;align-items:center;gap:8px;padding:8px 4px;background:transparent;border:none;border-radius:0;min-width:100px;max-width:120px;flex-shrink:0;transition:opacity .2s ease}.staff-site-item:hover{opacity:.85}.staff-site-item-clickable{cursor:pointer}.staff-site-item-clickable:hover{opacity:.9}.staff-site-item-clickable:focus-visible{outline:2px solid var(--color-primary, #6366f1);outline-offset:2px}.staff-site-avatar{width:56px;height:56px;min-width:56px;min-height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.staff-site-initials{color:#fff;font-size:18px;font-weight:600}.staff-site-name{font-size:12px;font-weight:500;color:var(--color-text);text-align:center;line-height:1.3;word-break:break-word;width:100%}.staff-site-item{position:relative}.staff-site-unassign-btn{position:absolute;top:4px;right:4px;width:22px;height:22px;padding:0;border:none;border-radius:50%;background:var(--color-danger, #dc3545);color:#fff;font-size:16px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.staff-site-unassign-btn:hover{opacity:.9}.staff-site-add-wrap{flex-shrink:0;min-width:100px}.staff-site-add-btn{padding:12px 16px;font-size:13px;font-weight:500;border:2px dashed var(--color-border);border-radius:var(--radius-sm);background:transparent;color:var(--color-text);cursor:pointer;width:100%;min-height:72px}.staff-site-add-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-background-secondary)}.staff-site-add-dropdown{padding:8px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-background-card);display:flex;flex-direction:column;gap:4px;max-height:200px;overflow-y:auto}.staff-site-add-option{padding:8px 12px;text-align:left;font-size:13px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text);cursor:pointer}.staff-site-add-option:hover{background:var(--color-background-secondary)}.staff-site-add-empty{margin:0;padding:8px;font-size:13px;color:var(--color-text-light)}.staff-site-add-cancel{margin-top:4px;padding:6px;font-size:12px;border:none;background:transparent;color:var(--color-text-light);cursor:pointer}.staff-site-add-cancel:hover{color:var(--color-text)}.staff-profile-main-layout{display:grid;grid-template-columns:50% 50%;grid-template-rows:835px;gap:var(--spacing-sm);align-items:stretch;width:100%;height:835px;min-height:835px;max-height:835px}.staff-profile-left-box{display:flex;flex-direction:column;width:100%;min-height:0;height:835px;max-height:835px;overflow:hidden;-ms-overflow-style:none;scrollbar-width:none}.staff-profile-left-box>*{min-height:0;flex:1 1 0%;overflow-y:auto;overflow-x:hidden;-ms-overflow-style:none;scrollbar-width:none}.staff-profile-left-box>*::-webkit-scrollbar{display:none}.staff-profile-left-box::-webkit-scrollbar{display:none}.staff-profile-right-box{display:flex;flex-direction:column;width:100%;min-height:0;height:100%;overflow:hidden}.staff-panel{background:var(--color-background-card, #fff);border-radius:var(--radius-xl, 18px);border:2px solid var(--color-primary, #000);box-shadow:var(--shadow-sm, 0 2px 4px rgba(0,0,0,.1));display:flex;flex-direction:column;flex:1;min-height:835px;max-height:835px;height:835px;overflow:hidden}.staff-panel-header{padding:12px 16px;border-bottom:1px solid rgba(224,224,224,.1);display:flex;justify-content:space-between;align-items:center;min-height:48px;height:48px;background-color:var(--color-primary, #000);border-radius:18px 18px 0 0}.staff-panel-title{font-size:16px;font-weight:600;color:#fff;margin:0}.staff-panel-tabs{display:flex;gap:8px;width:100%}.staff-panel-tab{padding:6px 16px;background:transparent;border:none;color:#ffffffb3;font-size:14px;font-weight:500;cursor:pointer;border-radius:6px;transition:all .2s ease}.staff-panel-tab:hover{background:#ffffff1a;color:#ffffffe6}.staff-panel-tab.active{background:#fff3;color:#fff;font-weight:600}.staff-panel-content{flex:1;overflow-y:auto;padding:20px}.staff-panel-loading,.staff-panel-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;color:var(--color-text-light)}.staff-tasks-list{display:flex;flex-direction:column;gap:8px}.staff-task-item{display:flex;align-items:flex-start;justify-content:space-between;padding:12px;border:1px solid var(--color-border-light);border-radius:var(--radius-sm);background:var(--color-background-card);transition:all .2s ease}.staff-task-item:hover{background:var(--color-background-secondary);border-color:var(--color-primary)}.staff-task-item.completed{opacity:.6}.staff-task-content{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.staff-task-title{font-size:14px;font-weight:500;color:var(--color-text)}.staff-task-due{font-size:12px;color:var(--color-text-light)}.staff-task-label{display:inline-block;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:500;background:var(--color-background-secondary);color:var(--color-text);margin-top:4px;width:fit-content}.staff-task-status{font-size:18px;color:var(--color-primary);flex-shrink:0;margin-left:12px}.staff-tasks-more{text-align:center;font-size:12px;color:var(--color-text-light);margin-top:8px;font-style:italic}.staff-compliance-monitorings-wrap{margin-bottom:16px}.staff-compliance-cards-grid{max-height:468px;overflow-y:hidden}.staff-compliance-card:hover{background:#f9fafb;border-color:var(--color-border, #d1d5db)}.staff-compliance-subtitle{font-size:13px;font-weight:600;color:#374151;margin:0 0 10px}.staff-compliance-list{display:flex;flex-direction:column;gap:16px}.staff-compliance-section{padding:16px;border:1px solid var(--color-border-light);border-radius:var(--radius-sm);background:var(--color-background-card)}.staff-compliance-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.staff-compliance-title{font-size:14px;font-weight:600;color:var(--color-text)}.staff-compliance-status{font-size:12px;color:#666;margin-top:4px;line-height:1.6}.staff-tags-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.staff-tag{display:inline-block;padding:4px 12px;background:#e9ecef;color:#2c3e50;border-radius:12px;font-size:12px;font-weight:500;text-transform:capitalize}.staff-tag:first-child{background:#3a3a3a;color:#fff}.staff-tag-inline{margin:0}.staff-tag-custom{background:#e0e7ff;color:#4f46e5}.staff-tag-mar-admin{background:#3b82f6!important;color:#000!important}.staff-tags-empty{font-size:12px;color:var(--color-text-muted, #6c757d);font-style:italic}.staff-tag-edit-btn,.staff-tag-save-btn,.staff-tag-cancel-btn{font-size:12px;padding:4px 10px;border-radius:6px;cursor:pointer;border:1px solid var(--color-border, #dee2e6);background:var(--color-background, #fff);color:var(--color-text, #212529)}.staff-tag-edit-btn:hover,.staff-tag-save-btn:hover{background:var(--color-accent, #4f46e5);color:#fff;border-color:var(--color-accent, #4f46e5)}.staff-tag-save-btn:disabled,.staff-tag-cancel-btn:disabled{opacity:.6;cursor:not-allowed}.staff-tag-cancel-btn:hover:not(:disabled){background:#f1f3f5}.staff-tags-edit-list{display:flex;flex-direction:column;gap:6px;margin-top:8px}.staff-tag-checkbox{display:flex;align-items:center;gap:8px;font-size:13px;cursor:pointer;color:var(--color-text, #212529)}.staff-tag-checkbox input{margin:0;cursor:pointer}.staff-rota-view{padding:40px 20px;text-align:center}@media(max-width:1024px){.staff-profile-main-layout{grid-template-columns:1fr;gap:var(--spacing-md)}.staff-profile-grid{grid-template-columns:140px 1fr;gap:20px}.staff-avatar{width:140px;height:140px;min-width:140px;min-height:140px}.staff-panel{max-height:none;height:auto;min-height:400px}}@media(max-width:768px){.staff-profile-main-layout,.staff-info-grid{grid-template-columns:1fr}}.maintenance-log-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.maintenance-log-modal{background:#fff;border-radius:16px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.maintenance-log-inline-wrap{margin-top:16px;border:1px solid #d1d5db;border-radius:12px;overflow:hidden;background:#fafafa}.maintenance-log-inline-wrap .maintenance-log-modal{max-height:none;box-shadow:none;border-radius:0;background:transparent}.maintenance-log-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e0e0e0;background:#1a1a1a;color:#fff;border-radius:16px 16px 0 0}.maintenance-log-modal-header .header-content{display:flex;align-items:center;gap:12px}.maintenance-log-modal-header .header-icon{font-size:28px}.maintenance-log-modal-header h2{margin:0;font-size:18px;font-weight:600}.maintenance-log-modal-header .header-subtitle{margin:4px 0 0;font-size:13px;opacity:.9}.maintenance-log-modal-header .close-button{background:none;border:none;color:#fff;font-size:28px;cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s}.maintenance-log-modal-header .close-button:hover{background:#fff3}.maintenance-log-form-title{text-align:center;font-size:16px;font-weight:600;color:#111827;margin:0 0 20px;padding:0}.maintenance-log-success,.maintenance-log-error{padding:12px 24px;font-weight:500;display:flex;align-items:center;gap:8px}.maintenance-log-success{background:#e8f5e9;color:#2e7d32;border-bottom:1px solid #c8e6c9}.maintenance-log-error{background:#ffebee;color:#c62828;border-bottom:1px solid #ffcdd2}.maintenance-log-form{padding:20px}.maintenance-log-inline-wrap .maintenance-log-form{background:#fff;margin:0;border-radius:0 0 12px 12px}.form-group{margin-bottom:16px;display:flex;flex-direction:column;min-height:0}.form-group label{display:block;margin-bottom:6px;font-weight:500;color:#374151;font-size:13px;flex-shrink:0}.form-group .required{color:#f44336}.form-group input[type=text],.form-group input[type=date],.form-group input[type=number],.form-group textarea,.form-group select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;transition:border-color .2s,box-shadow .2s;box-sizing:border-box;height:40px}.form-group textarea{height:auto;min-height:80px;resize:vertical}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#374151;box-shadow:0 0 0 2px #0000000f}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:end}.form-row.form-row-3{grid-template-columns:1fr 1fr 1fr}.form-row .form-group{margin-bottom:0}.maintenance-log-form .form-row-before-actions{margin-bottom:24px}.maintenance-log-form .form-group-description{margin-top:20px}.form-group.form-group-inline{flex-direction:row;align-items:center;gap:10px}.form-group.form-group-inline label{margin-bottom:0;white-space:nowrap;flex-shrink:0;width:auto}.form-group.form-group-inline input{flex:1;min-width:120px;width:auto}@media(max-width:600px){.form-row,.form-row.form-row-3{grid-template-columns:1fr}.form-row .form-group{margin-bottom:16px}.form-row .form-group:last-child{margin-bottom:0}}.priority-buttons{display:flex;gap:8px;flex-wrap:wrap}.priority-button{padding:8px 16px;border:2px solid #e0e0e0;border-radius:20px;background:transparent;cursor:pointer;font-size:13px;font-weight:500;transition:all .2s}.priority-button:hover{border-color:var(--priority-color)}.priority-button.selected{border-color:var(--priority-color);background:var(--priority-color);color:#fff}.source-info{background:#f5f5f5;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:13px;color:#666}.source-info strong{display:block;margin-bottom:8px;color:#333}.source-tag{display:inline-block;background:#fff;padding:4px 10px;border-radius:4px;margin-right:8px;margin-top:4px;border:1px solid #e0e0e0}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:32px;padding-top:28px;border-top:1px solid #e0e0e0}.cancel-button,.submit-button{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s}.maintenance-log-btn-capsule{border-radius:999px!important;background:transparent!important;border:1px solid #111827!important;color:#111827!important}.maintenance-log-btn-capsule:hover:not(:disabled){background:#f3f4f6!important}.maintenance-log-btn-capsule:disabled{background:#f3f4f6!important;border-color:#d1d5db!important;color:#9ca3af!important;cursor:not-allowed}.cancel-button{background:transparent;border:1px solid #e0e0e0;color:#666}.cancel-button:hover{background:#f5f5f5}.submit-button{background:#1a1a1a;border:none;color:#fff}.submit-button:hover:not(:disabled){background:#333}.submit-button:disabled{background:#ccc;cursor:not-allowed}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.maintenance-log-btn-capsule .spinner{border-color:#00000026;border-top-color:#111827}.maintenance-log-container{padding:24px}.maintenance-log-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:16px}.maintenance-log-header h1{margin:0;display:flex;align-items:center;gap:12px;font-size:24px}.maintenance-log-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-bottom:24px}.stat-card{background:#fff;padding:20px;border-radius:12px;box-shadow:0 2px 8px #00000014;text-align:center}.stat-card.open{border-left:4px solid #2196f3}.stat-card.in-progress{border-left:4px solid #ff9800}.stat-card.critical{border-left:4px solid #9c27b0}.stat-card.overdue{border-left:4px solid #f44336}.stat-card.resolved{border-left:4px solid #4caf50}.stat-card .stat-value{font-size:32px;font-weight:700;color:#333}.stat-card .stat-label{font-size:13px;color:#666;margin-top:4px}.maintenance-log-filters{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap}.filter-select{padding:10px 16px;border:1px solid #e0e0e0;border-radius:8px;font-size:14px;background:#fff;min-width:150px}.search-input{padding:10px 16px;border:1px solid #e0e0e0;border-radius:8px;font-size:14px;min-width:250px}.maintenance-log-list{display:flex;flex-direction:column;gap:12px}.maintenance-log-item{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #00000014;cursor:pointer;transition:all .2s;border-left:4px solid transparent}.maintenance-log-item:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.maintenance-log-item.priority-low{border-left-color:#4caf50}.maintenance-log-item.priority-medium{border-left-color:#ff9800}.maintenance-log-item.priority-high{border-left-color:#f44336}.maintenance-log-item.priority-critical{border-left-color:#9c27b0}.maintenance-log-item .item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.maintenance-log-item .issue-number{font-size:12px;color:#666;font-family:monospace}.maintenance-log-item .issue-title{font-size:16px;font-weight:600;color:#333;margin:4px 0}.maintenance-log-item .item-meta{display:flex;gap:16px;flex-wrap:wrap;font-size:13px;color:#666}.maintenance-log-item .meta-item{display:flex;align-items:center;gap:4px}.status-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500}.status-badge.open{background:#e3f2fd;color:#1565c0}.status-badge.in_progress{background:#fff3e0;color:#e65100}.status-badge.pending_parts{background:#fce4ec;color:#c2185b}.status-badge.pending_contractor{background:#f3e5f5;color:#7b1fa2}.status-badge.resolved{background:#e8f5e9;color:#2e7d32}.status-badge.closed{background:#f5f5f5;color:#616161}.status-badge.cancelled{background:#fafafa;color:#9e9e9e}.priority-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500}.priority-badge.low{background:#e8f5e9;color:#2e7d32}.priority-badge.medium{background:#fff3e0;color:#e65100}.priority-badge.high{background:#ffebee;color:#c62828}.priority-badge.critical{background:#f3e5f5;color:#6a1b9a}.empty-state{text-align:center;padding:60px 20px;color:#666}.empty-state .empty-icon{font-size:64px;margin-bottom:16px}.empty-state h3{margin:0 0 8px;color:#333}.loading-state{text-align:center;padding:60px 20px;color:#666}.loading-spinner{width:40px;height:40px;border:3px solid #e0e0e0;border-top-color:#1a1a1a;border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 16px}.maintenance-log-detail{max-width:900px;margin:0 auto;padding:24px}.detail-header{background:#fff;border-radius:12px;padding:24px;margin-bottom:24px;box-shadow:0 2px 8px #00000014}.detail-header .issue-number{font-family:monospace;font-size:14px;color:#666;margin-bottom:8px}.detail-header h1{margin:0 0 16px;font-size:24px}.detail-header .badges{display:flex;gap:12px;flex-wrap:wrap}.detail-section{background:#fff;border-radius:12px;padding:24px;margin-bottom:20px;box-shadow:0 2px 8px #00000014}.detail-section h2{margin:0 0 16px;font-size:18px;display:flex;align-items:center;gap:8px}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.info-item{padding:12px;background:#f9f9f9;border-radius:8px}.info-item label{display:block;font-size:12px;color:#666;margin-bottom:4px}.info-item .value{font-weight:500;color:#333}.work-entry{padding:16px;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:12px}.work-entry .entry-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.work-entry .entry-type{font-size:12px;padding:4px 8px;background:#e0e0e0;border-radius:4px;color:#666}.work-entry .entry-date{font-size:12px;color:#666}.work-entry .entry-description{margin-bottom:8px}.work-entry .entry-meta{font-size:12px;color:#666}.status-history{border-left:2px solid #e0e0e0;padding-left:20px;margin-left:10px}.status-entry{position:relative;padding-bottom:16px}.status-entry:before{content:"";position:absolute;left:-26px;top:4px;width:12px;height:12px;background:#fff;border:2px solid #1a1a1a;border-radius:50%}.status-entry .status-info{font-weight:500}.status-entry .status-meta{font-size:12px;color:#666;margin-top:4px}.linked-monitoring{padding:12px;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:8px;display:flex;align-items:center;gap:12px}.linked-monitoring .monitoring-icon{font-size:24px}.linked-monitoring .monitoring-info{flex:1}.linked-monitoring .monitoring-type{font-weight:500}.linked-monitoring .monitoring-meta{font-size:12px;color:#666}.report-issue-button{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:#fff3e0;border:1px solid #ff9800;border-radius:8px;color:#e65100;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.report-issue-button:hover{background:#ffe0b2}.report-issue-button.has-issue{background:#ffebee;border-color:#f44336;color:#c62828}.standard-form-sections{margin-top:0;padding:0;background-color:transparent;border-radius:0;border:none}.standard-section{margin-bottom:20px}.standard-section:last-child{margin-bottom:0}.section-label{display:block;font-size:14px;font-weight:600;color:#374151;margin-bottom:10px}.section-label .required{color:#dc3545;margin-left:2px}.signature-section{padding-bottom:16px;border-bottom:1px solid #e5e7eb}.sign-button{display:flex;align-items:center;gap:8px;padding:12px 20px;background-color:#fff;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;width:100%;justify-content:center}.sign-button:hover{background-color:#f3f4f6;border-color:#9ca3af}.sign-button svg{color:#6b7280}.signature-display{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background-color:#ecfdf5;border:1px solid #a7f3d0;border-radius:8px}.signature-info{display:flex;align-items:center;gap:12px}.signature-icon{width:32px;height:32px;border-radius:50%;background-color:#10b981;color:#fff;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700}.signature-details{display:flex;flex-direction:column;gap:2px}.signer-name{font-size:14px;font-weight:600;color:#065f46}.signed-at{font-size:12px;color:#047857}.clear-signature-btn{padding:6px 12px;background:transparent;color:#6b7280;border:1px solid #d1d5db;border-radius:6px;font-size:13px;cursor:pointer;transition:all .2s ease}.clear-signature-btn:hover{background-color:#f3f4f6;border-color:#9ca3af}.standard-actions-row{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap}.action-button{display:flex;align-items:center;gap:6px;padding:10px 16px;background-color:#fff;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.action-button:hover{background-color:#f3f4f6;border-color:#9ca3af}.action-button svg{color:#6b7280;flex-shrink:0}.action-button .badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background-color:#3b82f6;color:#fff;border-radius:10px;font-size:11px;font-weight:600;margin-left:4px}.maintenance-log-btn{flex:1;min-width:180px;justify-content:center}.image-upload-inline{flex:1;min-width:140px}.upload-btn{width:100%;justify-content:center}.image-previews{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.image-preview-item{position:relative;width:80px;height:80px;border-radius:8px;overflow:hidden;border:1px solid #e5e7eb;background-color:#fff}.image-preview-item img{width:100%;height:100%;object-fit:cover}.remove-image-btn{position:absolute;top:4px;right:4px;width:20px;height:20px;border-radius:50%;background-color:#0009;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;line-height:1;padding:0;transition:background-color .2s ease}.remove-image-btn:hover{background-color:#dc3545e6}.comments-section{padding-top:16px;border-top:1px solid #e5e7eb}.comments-thread{max-height:200px;overflow-y:auto;margin-bottom:12px;padding-right:4px}.comment-item{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid #f3f4f6}.comment-item:last-child{border-bottom:none}.comment-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;flex-shrink:0}.comment-content{flex:1;min-width:0}.comment-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.comment-author{font-size:13px;font-weight:600;color:#1f2937}.comment-time{font-size:11px;color:#9ca3af}.comment-text{margin:0;font-size:13px;color:#4b5563;line-height:1.5;word-break:break-word}.comment-input-wrapper{display:flex;gap:8px}.comment-input{flex:1;padding:10px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#1f2937;transition:border-color .2s ease,box-shadow .2s ease}.comment-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.comment-input::placeholder{color:#9ca3af}.comment-submit-btn{padding:10px 16px;background-color:#6366f1;color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:background-color .2s ease;white-space:nowrap}.comment-submit-btn:hover:not(:disabled){background-color:#4f46e5}.comment-submit-btn:disabled{background-color:#d1d5db;cursor:not-allowed}.maintenance-log-inline-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90%;max-width:480px;background-color:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;z-index:1000;animation:slideIn .2s ease}@keyframes slideIn{0%{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}.maintenance-log-inline-modal:before{content:"";position:fixed;inset:0;background-color:#0006;z-index:-1}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e5e7eb}.modal-header h4{margin:0;font-size:16px;font-weight:600;color:#1f2937}.close-btn{width:28px;height:28px;border-radius:6px;background:transparent;border:none;color:#6b7280;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.close-btn:hover{background-color:#f3f4f6;color:#1f2937}.modal-body{padding:20px}.modal-hint{margin:0 0 16px;font-size:13px;color:#6b7280;line-height:1.5}.modal-input,.modal-textarea,.modal-select{width:100%;padding:10px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#1f2937;margin-bottom:12px;transition:border-color .2s ease,box-shadow .2s ease}.modal-input:focus,.modal-textarea:focus,.modal-select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.modal-textarea{resize:vertical;min-height:80px}.modal-row{display:flex;gap:12px}.modal-row .modal-select{flex:1}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid #e5e7eb;background-color:#f9fafb;border-radius:0 0 12px 12px}.cancel-btn{padding:10px 20px;background:transparent;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.cancel-btn:hover{background-color:#f3f4f6;border-color:#9ca3af}.submit-btn{padding:10px 20px;background-color:#dc3545;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s ease}.submit-btn:hover{background-color:#c82333}@media(max-width:480px){.standard-form-sections{padding:16px;margin-top:16px}.standard-actions-row{flex-direction:column}.maintenance-log-btn,.image-upload-inline{width:100%;min-width:100%}.comment-input-wrapper{flex-direction:column}.comment-submit-btn{width:100%}.modal-row{flex-direction:column}.modal-row .modal-select{width:100%}}.add-resident-wizard-scroll-invisible{scrollbar-width:none;-ms-overflow-style:none}.add-resident-wizard-scroll-invisible::-webkit-scrollbar{display:none}.add-resident-schedule-round-checkbox{appearance:none;-webkit-appearance:none;width:18px;height:18px;border:2px solid rgba(0,0,0,.3);border-radius:50%;cursor:pointer;vertical-align:middle;flex-shrink:0}.add-resident-schedule-round-checkbox:checked{background-color:#2e2e2e;border-color:#2e2e2e}.add-resident-schedule-round-checkbox:focus{outline:none;box-shadow:0 0 0 2px #2e2e2e4d}.site-compliance-section{height:100%;display:flex;flex-direction:column;overflow:hidden}.loading-text{text-align:center;color:#6b7280;font-size:14px;padding:40px}.error-message{padding:20px;background-color:#fee2e2;color:#dc2626;border-radius:8px;text-align:center;margin:20px}.no-monitorings{text-align:center;color:#6c757d;font-size:14px;margin-top:40px}.compliance-monitoring-grid{scrollbar-width:thin;scrollbar-color:#d1d5db transparent}.compliance-monitoring-grid::-webkit-scrollbar{height:6px}.compliance-monitoring-grid::-webkit-scrollbar-track{background:transparent}.compliance-monitoring-grid::-webkit-scrollbar-thumb{background-color:#d1d5db;border-radius:3px}.compliance-monitoring-grid::-webkit-scrollbar-thumb:hover{background-color:#9ca3af}.compliance-monitoring-card{box-shadow:0 1px 3px #0000001a}.compliance-monitoring-card:hover{box-shadow:0 4px 12px #00000026!important}.compliance-monitoring-card.add-new:hover{border-color:#667eea!important}@media(max-width:768px){.compliance-monitoring-grid{grid-template-rows:repeat(auto-fill,140px)!important;grid-template-columns:repeat(2,1fr)!important;grid-auto-flow:row!important;overflow-x:hidden!important;overflow-y:auto!important;max-height:none!important}.compliance-monitoring-card{min-width:auto!important;max-width:none!important}}@media(max-width:480px){.compliance-monitoring-grid{grid-template-columns:1fr!important}}.sidebar{background-color:#2e2e2e;color:#e0e0e0;padding-bottom:10px;font-family:Montserrat,sans-serif}.sidebar button:focus,.sidebar button:focus-visible,.sidebar a:focus,.sidebar a:focus-visible{outline:none!important;box-shadow:none!important}.sidebar .sidebar-control-buttons{display:flex;gap:8px;margin-bottom:16px;padding:0;justify-content:flex-start;align-items:center;position:relative;width:190px;margin-left:0;margin-right:auto;transform:translate(-10px);box-sizing:border-box}.sidebar .sidebar-control-btn-circle{flex:1 1 0;min-width:0;height:40px;min-height:40px;border-radius:20px;border:1px solid rgba(255,255,255,.3);background:transparent;color:#e0e0e0;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;padding:0 12px;font-size:12px;font-weight:500}.sidebar-control-btn-circle:hover{background:#3a3a3a;border-color:transparent;color:#fff;box-shadow:0 2px 8px #e85d9e4d}.sidebar-control-btn-circle:disabled{opacity:.5;cursor:not-allowed}.sidebar-control-btn-circle:disabled:hover{background:transparent;box-shadow:none}.sidebar-control-btn-circle svg{width:16px;height:16px;stroke:currentColor;flex-shrink:0}.sidebar-control-btn-eye{flex:0 0 auto;width:40px;min-width:40px;height:40px;padding:0;border-radius:20px}.sidebar-control-btn-eye svg{width:16px;height:16px}.sidebar-site-selector{position:relative;margin-bottom:20px;padding:0;width:190px;margin-left:0;margin-right:auto;transform:translate(-10px)}.sidebar-site-selector-wrapper{position:relative;width:100%}.sidebar-site-select{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;z-index:10;font-size:14px;pointer-events:auto}.sidebar-site-selector-display{width:100%;padding:10px 16px;background:transparent;border:1px solid rgba(255,255,255,.3);border-radius:20px;color:#e0e0e0;font-size:14px;font-weight:500;display:flex;align-items:center;justify-content:space-between;transition:all .2s ease;pointer-events:none;min-height:40px}.sidebar-site-selector-wrapper:hover .sidebar-site-selector-display{background:#ffffff1a;border-color:#ffffff80}.sidebar-site-selector-display svg{width:12px;height:8px;stroke:currentColor;flex-shrink:0;margin-left:8px}.sidebar-site-selector-display span{flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-nav-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0px 4px;row-gap:0px;padding:12px 10px 96px;flex:0 1 auto;align-content:start;overflow-y:auto;width:100%;box-sizing:border-box}.sidebar-nav-grid .nav-row{display:contents}.sidebar-nav-grid .nav-btn-wrapper{display:flex;flex-direction:column;align-items:center;gap:2px;margin:0 0 32px;padding:0;justify-content:flex-start;width:100%;max-width:100%;min-width:0;box-sizing:border-box}.sidebar-nav-grid .nav-btn-icon-circle{width:50px;height:50px;min-width:50px;min-height:50px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:transparent;color:#e0e0e0;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;padding:0}.sidebar-nav-grid .nav-btn-icon-circle:hover{background:#ffffff1a;border-color:#ffffff80}.sidebar-nav-grid .nav-btn-icon-circle svg{width:20px;height:20px;stroke:currentColor;stroke-width:2}.sidebar-nav-grid .nav-btn-icon-circle.profile{background-color:#56ccf2;border-color:#56ccf2;color:#fff}.sidebar-nav-grid .nav-btn-icon-circle.profile:hover{background-color:#45b8d9;border-color:#45b8d9}.sidebar-nav-grid .nav-btn-icon-circle.alerts.active{background-color:#ffffff40;box-shadow:inset 0 0 0 1px #ffffff4d}.sidebar-nav-grid .nav-btn-icon-circle.logout,.sidebar-nav-grid .nav-btn-icon-circle.logout:hover{background:#e0e0e0!important;border:1px solid transparent!important;color:#2e2e2e!important}.sidebar-nav-grid .nav-btn-icon-circle.logout svg{stroke:#2e2e2e!important}.sidebar-nav-grid .nav-btn-label{font-size:11px;color:#e0e0e0;text-align:center;font-weight:500;line-height:1.2;margin:0;padding:0;width:100%;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;box-sizing:border-box}.bottom-nav-buttons{display:none}.sidebar-tasks-mode-wrapper{padding:4px 8px 10px;max-height:calc(100vh - 260px);overflow-y:auto}.sidebar-tasks-section{margin-bottom:10px}.sidebar-tasks-header{font-size:10px;letter-spacing:.8px;text-transform:uppercase;color:#9ca3af;padding:4px 6px}.sidebar .sidebar-tasks-item{width:100%;padding:6px 8px;margin:1px 0;border-radius:6px;background:transparent;border:none;display:flex;align-items:center;gap:6px;font-size:12px;color:#e5e7eb;text-align:left;transition:background .15s ease,color .15s ease}.sidebar .sidebar-tasks-item:hover{background:#ffffff0f}.sidebar .sidebar-tasks-item.active{background:#3a3a3a;color:#fff}.sidebar .sidebar-tasks-item .tasks-sidebar-icon{width:14px;height:14px}.sidebar-tasks-my-label-row{display:flex;align-items:center;gap:4px}.sidebar-tasks-my-label-actions{display:flex;flex-direction:column;gap:2px}.sidebar-tasks-my-label-actions button{border:none;background:transparent;color:#9ca3af;font-size:10px;cursor:pointer;padding:0 2px}.sidebar-tasks-my-label-actions button:hover{color:#e5e7eb}.sidebar-tasks-add-label-btn{border:none;background:#ffffff0f;color:#e5e7eb;font-size:11px;width:18px;height:18px;border-radius:999px;display:flex;align-items:center;justify-content:center;cursor:pointer}.sidebar-tasks-add-label-btn:hover{background:#ffffff24}.sidebar-control-add-wrapper{position:relative;display:flex;align-items:center;justify-content:center}.sidebar-control-add-menu{position:absolute;top:46px;right:0;background:#1f2933;border-radius:10px;box-shadow:0 10px 30px #00000073;min-width:180px;padding:6px 0;z-index:50}.sidebar-control-add-menu button{width:100%;padding:8px 14px;background:transparent;border:none;color:#e5e7eb;font-size:12px;text-align:left;cursor:pointer;display:flex;align-items:center;gap:6px}.sidebar-control-add-menu button:hover{background:#ffffff0f}.simple-task-form-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.simple-task-form{background:#fff;border-radius:12px;padding:24px;width:90%;max-width:600px;box-shadow:0 20px 60px #0000004d}.simple-task-form-inline-wrapper{flex-shrink:0;margin-bottom:8px}.simple-task-form.simple-task-form-inline{width:100%;max-width:none;padding:10px 14px;border-radius:10px;border:1px solid #e5e7eb;box-shadow:0 2px 8px #00000014;background:#fff}.simple-task-form.simple-task-form-inline form{gap:0}.simple-task-form.simple-task-form-inline .form-field.task-name-field{margin-bottom:2px}.simple-task-form.simple-task-form-inline .form-field.task-name-field input{padding:6px 0 4px;font-size:14px;border:none;border-radius:0;background:transparent;box-shadow:none}.simple-task-form.simple-task-form-inline .form-field.task-name-field input:focus{outline:none}.simple-task-form.simple-task-form-inline .form-field.task-name-field input.error{border:none;border-bottom:1px solid #dc3545;border-radius:0}.task-name-input-wrapper{position:relative}.task-name-highlight-overlay{position:absolute;inset:0;padding:12px;font-size:15px;font-family:inherit;line-height:1.5;pointer-events:none;overflow:hidden;white-space:pre;box-sizing:border-box;color:#111}.schedule-highlight-span{background-color:#e5e7eb;color:#000;border-radius:6px;padding:0 4px}.task-name-input-wrapper .task-name-input{position:relative;z-index:1;background:transparent;color:transparent;caret-color:#111}.task-name-input-wrapper .task-name-input::placeholder{color:transparent}.task-name-placeholder-overlay{color:#9ca3af}.schedule-detected-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;align-items:center}.schedule-detected-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;font-size:11px;color:#6b7280;background:#e5e7eb;border-radius:6px}.schedule-detected-badge-remove{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;padding:0;margin:0 0 0 2px;border:none;background:transparent;color:#6b7280;cursor:pointer;border-radius:50%;font-size:14px;line-height:1;transition:background .15s,color .15s}.schedule-detected-badge-remove:hover{background:#d1d5db;color:#374151}.simple-task-form.simple-task-form-inline .task-name-highlight-overlay{padding:6px 0 4px;font-size:14px}.simple-task-form.simple-task-form-inline .form-field-description{margin-bottom:8px}.simple-task-form.simple-task-form-inline .form-field-description .description-input{height:auto;min-height:22px;padding:2px 0 5px;font-size:11px;color:#6b7280;border:none;border-radius:0;background:transparent;box-shadow:none}.simple-task-form.simple-task-form-inline .form-field-description .description-input::placeholder{color:#9ca3af}.simple-task-form.simple-task-form-inline .form-field-description .description-input:focus{outline:none}.simple-task-form.simple-task-form-inline .form-details-row{gap:4px}.simple-task-form.simple-task-form-inline .priority-three-buttons-box{border-radius:6px}.simple-task-form.simple-task-form-inline .priority-three-buttons-row .detail-button:first-child{border-radius:6px 0 0 6px}.simple-task-form.simple-task-form-inline .priority-three-buttons-row .detail-button:last-child{border-radius:0 6px 6px 0}.simple-task-form.simple-task-form-inline .detail-button{padding:5px 8px;font-size:11px;border-radius:6px;gap:4px}.simple-task-form.simple-task-form-inline .detail-button svg{width:12px;height:12px}.simple-task-form.simple-task-form-inline .detail-button.dropdown.priority-selector,.simple-task-form.simple-task-form-inline .priority-three-buttons-row .detail-button{padding:5px 8px}.simple-task-form.simple-task-form-inline .detail-button select{font-size:11px}.simple-task-form.simple-task-form-inline .detail-button.detail-button-label{padding:5px 8px;font-size:11px;border-radius:6px}.simple-task-form.simple-task-form-inline .detail-button.cancel-button{padding:6px 12px;font-size:11px;border-radius:999px;background:transparent;border:1px solid #9ca3af;color:#6b7280}.simple-task-form.simple-task-form-inline .detail-button.submit-button{padding:6px 12px;font-size:11px;border-radius:999px;background:transparent;border:1px solid #2e2e2e;color:#2e2e2e}.simple-task-form.simple-task-form-inline .schedule-detected-badge{padding:2px 6px;font-size:10px}.simple-task-form.simple-task-form-inline .assigned-staff-display{padding:4px 6px;gap:4px}.simple-task-form.simple-task-form-inline .staff-tag{padding:4px 8px;font-size:11px;border-radius:4px}.simple-task-form.simple-task-form-inline .remove-staff{width:14px;height:14px;font-size:14px}.simple-task-form form{display:flex;flex-direction:column;gap:16px}.form-field{display:flex;flex-direction:column;gap:4px}.form-field input[type=text],.form-field textarea{width:100%;padding:12px;border:1px solid #e0e0e0;border-radius:8px;font-size:14px;font-family:inherit;transition:border-color .2s ease}.form-field-description .description-input{width:100%;border:1px solid #e0e0e0;border-radius:8px;font-family:inherit;outline:none;box-sizing:border-box}.form-field input[type=text]:focus,.form-field textarea:focus{outline:none;border-color:#007bff}.form-field input.error{border-color:#dc3545}.form-field textarea{resize:vertical;min-height:60px}.form-details-row{display:flex;gap:8px;flex-wrap:wrap;overflow:visible}.detail-button{display:flex;align-items:center;gap:6px;padding:10px 12px;border:1px solid #e0e0e0;border-radius:8px;background:#fff;cursor:pointer;font-size:14px;color:#333;transition:all .2s ease;white-space:nowrap}.detail-button:hover:not(:disabled){border-color:#007bff;background:#f0f7ff}.detail-button:disabled{opacity:.5;cursor:not-allowed}.detail-button.dropdown{padding:0;display:flex;align-items:center;gap:6px}.detail-button.dropdown.priority-selector{padding:10px 12px}.priority-three-buttons-box{display:inline-flex;flex-direction:column;align-items:stretch;border:1px solid #e5e7eb;border-radius:8px;background:#fff;overflow:visible}.priority-three-buttons-row{display:flex;align-items:center;gap:0}.priority-three-buttons-row .detail-button{border:none;border-radius:0;background:transparent}.priority-three-buttons-row .detail-button:first-child{border-radius:8px 0 0 8px}.priority-three-buttons-row .detail-button.priority-dropdown-trigger{border-left:1px solid #e5e7eb;border-right:1px solid #e5e7eb}.priority-three-buttons-row .detail-button:last-child{border-radius:0 8px 8px 0}.priority-dropdown-wrap{position:relative;display:inline-flex}.priority-dropdown-trigger{display:inline-flex;align-items:center;gap:6px}.priority-dropdown-label{font-size:14px;font-weight:500;color:#333}.priority-dropdown-menu.priority-dropdown-popup{position:absolute;bottom:100%;left:0;margin-bottom:4px;min-width:140px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 12px #0000001f;z-index:1000;padding:4px}.priority-dropdown-menu{min-width:140px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:4px}.priority-dropdown-option{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:none;background:transparent;border-radius:6px;font-size:14px;color:#374151;cursor:pointer;text-align:left;transition:background .15s}.priority-dropdown-option:hover{background:#f3f4f6}.priority-dropdown-option.selected{background:#f3f4f6;font-weight:500}.detail-button.dropdown select{padding:0;border:none;background:transparent;cursor:pointer;font-size:14px;color:#333;appearance:none;-webkit-appearance:none;-moz-appearance:none;flex:1}.priority-select{font-weight:500}.detail-button.error{border-color:#dc3545}.detail-button.detail-button-label{min-width:0}.detail-button.cancel-button,.detail-button.submit-button{padding:10px 16px;border-radius:999px}.detail-button.cancel-button{background:transparent;border:1px solid #9ca3af;color:#6b7280}.detail-button.cancel-button:hover{background:#6b72800f;border-color:#9ca3af}.detail-button.submit-button{background:transparent;border:1px solid #2e2e2e;color:#2e2e2e}.detail-button.submit-button:hover:not(:disabled){background:#2e2e2e14;border-color:#2e2e2e}.detail-button.submit-button:disabled{opacity:.6;cursor:not-allowed}.assigned-staff-display{display:flex;flex-wrap:wrap;gap:8px;padding:8px;background:#f5f5f5;border-radius:8px}.staff-tag{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:#fff;border:1px solid #e0e0e0;border-radius:6px;font-size:13px}.remove-staff{background:none;border:none;color:#999;cursor:pointer;font-size:18px;line-height:1;padding:0;width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.remove-staff:hover{background:#fee;color:#dc3545}.label-selector{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid #e0e0e0;border-radius:8px;background:#fff}.hashtag{font-size:18px;font-weight:600;color:#007bff}.task-name-field input:focus{border-color:#007bff}.task-name-field input:focus+svg{color:#007bff}.label-dropdown{flex:1;border:none;background:transparent;font-size:14px;font-weight:600;color:#333;cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none}.error-message{color:#dc3545;font-size:12px;margin-top:4px}.submit-error{padding:10px;background:#fff5f5;border:1px solid #dc3545;border-radius:6px;margin-top:8px}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:8px;padding-top:16px;border-top:1px solid #e0e0e0}.cancel-button,.submit-button{padding:10px 20px;border-radius:999px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.cancel-button{background:transparent;border:1px solid #9ca3af;color:#6b7280}.cancel-button:hover{background:#6b72800f;border-color:#9ca3af}.submit-button{background:transparent;border:1px solid #2e2e2e;color:#2e2e2e}.submit-button:hover:not(:disabled){background:#2e2e2e14;border-color:#2e2e2e}.submit-button:disabled{opacity:.6;cursor:not-allowed}.tasks-widget-container{display:flex;flex-direction:column;height:100%;overflow:hidden;background:transparent;position:relative}.tasks-widget-add-form-overlay{position:absolute;top:0;left:0;right:0;z-index:25;background:#fff;padding:12px 16px;box-shadow:0 4px 12px #00000026;border-radius:0 0 8px 8px;max-height:100%;overflow-y:auto}.tasks-widget-header{display:none}.tasks-widget-title{margin:0;font-size:16px;font-weight:600;color:#111827}.tasks-widget-view-all{padding:6px 12px;background:#3a3a3a;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:12px;font-weight:500;transition:all .2s ease;display:flex;align-items:center;gap:4px}.tasks-widget-view-all:hover{background:#4a4a4a}.tasks-widget-content{flex:1;overflow:auto;padding:16px;box-sizing:border-box}.tasks-dropdowns-list{display:flex;flex-direction:column;gap:8px;width:100%}.tasks-dropdown-item{border:none;border-radius:0;overflow:visible;transition:all .2s;display:flex;flex-direction:column;gap:0}.tasks-dropdown-header{padding:12px 20px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:background-color .2s;border-radius:50px;flex-shrink:0;z-index:1;position:relative;margin:0;width:100%;box-sizing:border-box;border:1px solid;font-family:inherit;font-size:inherit;text-align:left;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}button.tasks-dropdown-header{appearance:none;background-color:inherit;color:inherit;min-height:44px}button.tasks-dropdown-header:focus{outline:2px solid rgba(0,0,0,.2);outline-offset:2px}button.tasks-dropdown-header:focus:not(:focus-visible){outline:none}.tasks-dropdown-header:hover{opacity:.8}.tasks-dropdown-header.expanded{opacity:1}.tasks-dropdown-name{font-size:14px;font-weight:500;color:#212529}.tasks-dropdown-chevron{color:#6c757d;flex-shrink:0}.tasks-dropdown-content{overflow:hidden;padding:8px 12px 12px;border-radius:12px;background-color:#ffffff80;margin-top:8px;flex:1;border:1px solid rgba(0,0,0,.1)}.tasks-list-compact{display:flex;flex-direction:column;gap:6px}.tasks-list-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:50px;background-color:#fff9;border:1px solid rgba(0,0,0,.08);cursor:pointer;transition:all .2s}.tasks-list-item:hover{background-color:#ffffffe6;border-color:#00000026}.tasks-list-item-priority{width:8px;height:8px;border-radius:50%;flex-shrink:0}.tasks-list-item-content{font-size:13px;color:#374151;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.tasks-list-more{padding:8px 14px;font-size:12px;color:#6b7280;text-align:center;cursor:pointer;border-radius:50px;transition:all .2s}.tasks-list-more:hover{background-color:#0000000d;color:#374151}.tasks-no-items{padding:16px;font-size:13px;color:#6c757d;text-align:center}.tasks-no-sites{padding:40px;font-size:13px;color:#6c757d;text-align:center}.tasks-widget-mode .tasks-page{height:100%!important;margin-top:0!important;padding:0!important}.tasks-widget-mode .tasks-main{height:100%!important;overflow:hidden!important}.tasks-widget-mode .tasks-list{height:100%!important;padding:12px 16px!important;overflow-y:auto!important}.tasks-widget-mode.compact .tasks-task-description{font-size:12px!important}.shift-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.shift-modal-overlay--in-card{position:absolute;inset:0;border-radius:12px}.shift-modal-overlay--in-card .shift-modal{max-height:85%}.shift-modal{background:var(--color-background-card);border-radius:16px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:600px;width:90%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.shift-modal-header{display:flex;align-items:center;justify-content:space-between;padding:10px var(--spacing-md, 20px);border-bottom:1px solid var(--color-border-dark);background:var(--color-primary);color:var(--color-secondary);border-radius:16px 16px 0 0;flex-shrink:0}.shift-modal-header-content{display:flex;flex-direction:column;gap:8px;flex:1}.shift-modal-header h2{font-size:16px;font-weight:600;color:var(--color-secondary);margin:0;line-height:1.3}.shift-modal-staff-info{display:flex;align-items:center;gap:12px}.shift-modal-staff-name{font-size:15px;font-weight:500;color:var(--color-secondary)}.shift-modal-staff-role{font-size:13px;color:#ffffffd9;background:var(--color-dark-300, #333);padding:4px 10px;border-radius:12px}.shift-modal-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.shift-modal-tag{font-size:11px;font-weight:600;padding:3px 8px;border-radius:6px;line-height:1.2}.shift-modal-tag-unconfirmed{background:#fef3c7;color:#b45309;border:1px solid rgba(255,255,255,.3)}.shift-modal-tag-sleepin{background:#dbeafe;color:#1d4ed8;border:1px solid rgba(255,255,255,.3)}.shift-modal-close{background:transparent;border:none;color:var(--color-secondary);cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.shift-modal-close:hover{background:var(--color-dark-300, #333);color:var(--color-background)}.shift-modal-form{padding:20px;display:flex;flex-direction:column;gap:16px;flex:1;min-height:0;overflow-y:auto}.shift-form-group{margin-bottom:0}.shift-form-group label{display:block;font-size:13px;font-weight:500;color:var(--color-text);margin-bottom:8px}.shift-form-group input,.shift-form-group select,.shift-form-group textarea{width:100%;padding:10px 12px;border:1px solid var(--color-border);border-radius:8px;font-size:14px;color:var(--color-text);background:var(--color-background);font-family:inherit;transition:all .2s ease}.shift-form-group input:focus,.shift-form-group select:focus,.shift-form-group textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #f444391a}.shift-form-group textarea{resize:vertical;min-height:80px}.shift-form-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.shift-form-row .shift-form-group{min-width:0}.shift-form-group input[type=date]{min-width:0;max-width:100%;width:100%;box-sizing:border-box}@media(min-width:400px){.shift-form-group input[type=date]{max-width:145px}}.shift-sleepin-display .shift-sleepin-box{padding:10px 12px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;font-size:13px;color:#374151}.shift-sleepin-display .shift-sleepin-box div{margin-bottom:4px}.shift-sleepin-display .shift-sleepin-box div:last-child{margin-bottom:0}.shift-conflicts{margin:20px 0;padding:16px;background:#fef3c7;border:1px solid #fcd34d;border-radius:8px}.shift-conflicts-header{display:flex;align-items:center;gap:8px;font-weight:600;color:#92400e;margin-bottom:12px}.shift-conflicts-list{display:flex;flex-direction:column;gap:8px}.shift-conflict-item{font-size:13px;color:#78350f}.shift-conflict-item strong{display:block;margin-bottom:4px}.shift-conflict-details{margin-top:4px;padding-left:16px;font-size:12px;color:#92400e;display:flex;flex-direction:column;gap:2px}.shift-checking-conflicts{padding:12px;text-align:center;color:var(--color-text-light);font-size:13px}.shift-modal-actions{display:flex;gap:12px;margin-top:24px;padding-top:24px;border-top:1px solid var(--color-border-light)}.shift-btn{padding:10px 24px;border-radius:999px;font-size:14px;font-weight:500;border:none;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease;font-family:inherit}.shift-btn:disabled{opacity:.5;cursor:not-allowed}.shift-btn-secondary{background:transparent;color:var(--color-text);border:1px solid var(--color-primary)}.shift-btn-secondary:hover:not(:disabled){background:var(--color-background-secondary);border-color:var(--color-accent);color:var(--color-accent)}.shift-btn-primary{background:var(--color-accent);color:var(--color-secondary);border:1px solid var(--color-accent)}.shift-btn-primary:hover:not(:disabled){background:var(--color-accent-dark);border-color:var(--color-accent-dark);color:var(--color-secondary)}.shift-btn-danger{background:var(--color-danger);color:#fff;border:1px solid var(--color-danger)}.shift-btn-danger:hover:not(:disabled){background:#c82333;border-color:#c82333}input.form-input.error-field{border-color:#ef4444!important}input.form-input.error-field:focus{border-color:#ef4444!important;box-shadow:0 0 0 3px #ef44441a!important}.resolution-modal-overlay{position:fixed;inset:0;background:#ffffffb3;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease-out}.monitoring-form-container .resolution-modal-overlay{position:absolute;border-radius:18px;z-index:1000;background:#fffc;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.resolution-modal-container{background:var(--theme-bg, #ffffff);border:none;border-radius:12px;box-shadow:0 10px 40px #00000026;width:90%;max-width:650px;max-height:85vh;display:flex;flex-direction:column;animation:slideUp .3s ease-out;overflow:hidden;position:relative}.resolution-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:none;background:var(--theme-bg, #ffffff)}.resolution-modal-title{margin:0;font-size:22px;font-weight:600;color:#111827}.resolution-modal-close{background:transparent;border:1px solid #d1d5db;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#4b5563;font-size:24px;line-height:1;transition:all .2s ease;padding:0}.resolution-modal-close:hover{background:#f3f4f6;border-color:#9ca3af;color:#1f2937}.resolution-modal-content{padding:24px;overflow-y:auto;flex:1;background:var(--theme-bg, #ffffff)}.resolution-field-group{margin-bottom:24px}.resolution-field-label{display:flex;align-items:center;gap:4px;margin-bottom:8px;font-size:14px;font-weight:400;color:#111827}.resolution-field-label .required{color:#dc2626;margin-left:2px}.resolution-textarea{width:100%;padding:10px 12px;border:1px solid var(--theme-border, #d1d5db);border-radius:8px;font-size:14px;font-family:inherit;transition:all .2s ease;box-sizing:border-box;background:#fff;color:#111827;resize:vertical;min-height:100px}.resolution-textarea:focus{outline:none;border-color:var(--theme-accent, #667eea);box-shadow:0 0 0 3px #667eea1a}.resolution-checkbox-label{display:flex;align-items:flex-start;gap:12px;cursor:pointer;margin-bottom:8px}.resolution-checkbox{width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;max-width:18px!important;max-height:18px!important;cursor:pointer;flex-shrink:0;margin:0;border-radius:50%!important;appearance:none;-webkit-appearance:none;border:2px solid var(--theme-border, #d1d5db);background:#fff;position:relative;transition:all .2s ease}.resolution-checkbox:checked{background:var(--theme-accent, #f44)!important;border-color:var(--theme-accent, #f44)!important}.resolution-checkbox:checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:6px;height:6px;border-radius:50%;background:#fff}.resolution-checkbox-text{font-size:14px;font-weight:500;color:var(--theme-text, #374151)}.resolution-description{font-size:12px;color:#6b7280;line-height:1.5;margin-top:4px;margin-left:30px}.resolution-update-fields{margin-top:16px;padding:16px;background:#ffffffb3;border:1px solid var(--theme-border, #e5e7eb);border-radius:8px}.resolution-update-title{font-size:13px;font-weight:600;color:#374151;margin-bottom:12px}.resolution-fields-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.resolution-fields-grid>div{display:flex;flex-direction:column}.resolution-fields-grid label{display:block;font-size:12px;font-weight:500;margin-bottom:4px;color:#6b7280}.resolution-fields-grid input,.resolution-fields-grid select,.resolution-fields-grid textarea{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;transition:all .2s ease;box-sizing:border-box}.resolution-fields-grid input:focus,.resolution-fields-grid select:focus,.resolution-fields-grid textarea:focus{outline:none;border-color:#f44;box-shadow:0 0 0 3px #f444391a}.resolution-fields-grid textarea{resize:vertical;min-height:60px}.resolution-related-title{font-size:14px;font-weight:500;color:var(--theme-text, #374151);margin-bottom:12px}.resolution-related-issues{display:flex;flex-direction:column;gap:8px}.resolution-issue-checkbox{display:flex;align-items:center;gap:12px;cursor:pointer;padding:8px;border-radius:6px;transition:background .2s ease}.resolution-issue-checkbox:hover{background:#f9fafb}.resolution-issue-text{font-size:14px;color:var(--theme-text, #374151)}.resolution-issue-date{color:#6b7280;font-size:12px}.resolution-error{padding:12px 16px;background:#fee2e2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;font-size:14px;margin-top:16px}.resolution-modal-footer{display:flex;justify-content:center;align-items:center;gap:12px;padding:20px 24px;border-top:none;background:var(--theme-bg, #ffffff)}.resolution-btn-primary,.resolution-btn-secondary{padding:8px 16px;border-radius:20px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;font-family:inherit;white-space:nowrap}.resolution-btn-primary{background:var(--theme-button, var(--theme-accent, #667eea))!important;color:#fff!important;border:none!important;border-radius:20px!important;padding:8px 16px!important;font-size:14px!important;font-weight:500!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important}.resolution-btn-primary:hover:not(:disabled){background:var(--theme-accent, #667eea)!important;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d!important;transform:translateY(-1px)}.resolution-btn-primary:active:not(:disabled){transform:translateY(0)}.resolution-btn-primary:disabled{opacity:.6;cursor:not-allowed}.resolution-btn-secondary{background:#fff!important;color:#374151!important;border:1px solid var(--theme-border, #d1d5db)!important;border-radius:20px!important;padding:8px 16px!important;font-size:14px!important;font-weight:500!important}.resolution-btn-secondary:hover:not(:disabled){background:#0000000d!important;border-color:var(--theme-border, #9ca3af)!important}.resolution-btn-secondary:disabled{opacity:.6;cursor:not-allowed}.health-issues-monitoring{display:flex;flex-direction:column;height:100%;padding:20px;overflow-y:auto;overflow-x:hidden}.health-issues-loading{text-align:center;padding:40px;color:#666}.health-issues-error{background-color:#fee;color:#c33;padding:12px 16px;border-radius:8px;margin-bottom:16px;border:1px solid #fcc}.health-issues-success{background-color:#efe;color:#3c3;padding:12px 16px;border-radius:8px;margin-bottom:16px;border:1px solid #cfc}.health-issues-table-container{flex:1;overflow:auto;border:1px solid #e0e0e0;border-radius:8px;background:#fff}.health-issues-table{width:100%;border-collapse:collapse;font-size:13px}.health-issues-table thead{background-color:#f5f5f5;position:sticky;top:0;z-index:10}.health-issues-table th{padding:12px 8px;text-align:left;font-weight:600;color:#333;border-bottom:2px solid #ddd;white-space:nowrap}.health-issues-table td{padding:10px 8px;border-bottom:1px solid #eee;vertical-align:top}.health-issues-table tbody tr:hover{background-color:#f9f9f9}.new-health-issue-row{background-color:#f0f8ff!important}.new-health-issue-row:hover{background-color:#e6f3ff!important}.health-issue-input,.health-issue-textarea,.health-issue-select{width:100%;padding:6px 8px;border:1px solid #ddd;border-radius:4px;font-size:13px;font-family:inherit}.health-issue-input:focus,.health-issue-textarea:focus,.health-issue-select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff1a}.health-issue-textarea{resize:vertical;min-height:40px}.status-badge{display:inline-block;padding:4px 8px;border-radius:12px;font-size:11px;font-weight:500;text-transform:capitalize}.status-active{background-color:#d4edda;color:#155724}.status-chronic{background-color:#fff3cd;color:#856404}.status-resolved{background-color:#d1ecf1;color:#0c5460}.status-monitoring{background-color:#e2e3e5;color:#383d41}.flag-badge{display:inline-block;padding:4px 8px;border-radius:12px;font-size:11px;font-weight:500}.flag-badge.flagged{background-color:#f8d7da;color:#721c24}.flag-checkbox-label{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:12px}.circular-checkbox{width:18px;height:18px;min-width:18px;min-height:18px;max-width:18px;max-height:18px;border-radius:50%;cursor:pointer;accent-color:#007bff}.image-upload-cell{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.upload-button-small{display:inline-block;padding:6px 12px;background-color:transparent;border:1px solid rgba(0,0,0,.2);border-radius:20px;color:#374151;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s}.upload-button-small:hover{background-color:#f5f5f5;border-color:#007bff}.image-preview-cell{position:relative;width:60px;height:60px;border-radius:4px;overflow:hidden;border:1px solid #ddd}.image-preview-cell img{width:100%;height:100%;object-fit:cover}.remove-image-btn{position:absolute;top:2px;right:2px;background:#000000b3;color:#fff;border:none;border-radius:50%;width:20px;height:20px;cursor:pointer;font-size:14px;line-height:1;display:flex;align-items:center;justify-content:center}.remove-image-btn:hover{background:#000000e6}.image-preview-small{width:60px;height:60px;border-radius:4px;overflow:hidden;border:1px solid #ddd}.image-preview-small img{width:100%;height:100%;object-fit:cover}.health-issues-actions{display:flex;justify-content:flex-end;gap:12px;padding:16px 0;border-top:1px solid #eee;margin-top:16px}.btn{padding:8px 16px;border-radius:20px;font-size:14px;font-weight:500;cursor:pointer;border:none;transition:all .2s}.btn:focus{outline:none}.btn-secondary{background-color:#fff;border:1px solid #ddd;color:#374151}.btn-secondary:hover{background-color:#f5f5f5}.btn-primary{background-color:#007bff;color:#fff}.btn-primary:hover:not(:disabled){background-color:#0056b3}.btn-primary:disabled{background-color:#ccc;cursor:not-allowed}.health-issues-table-container::-webkit-scrollbar{width:8px;height:8px}.health-issues-table-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.health-issues-table-container::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.health-issues-table-container::-webkit-scrollbar-thumb:hover{background:#555}.monitoring-form-container{width:100%;height:100%;min-height:100%;margin:0;background:#fff;border-radius:0;box-shadow:none;overflow:hidden;animation:fadeIn .3s ease-out;display:flex;flex-direction:column;flex:1;position:relative}.monitoring-form-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb;background:#fff}.header-left{display:flex;align-items:center;gap:12px}.back-button{background:transparent;border:1px solid #d1d5db;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#4b5563;transition:all .2s ease;padding:0}.back-button:hover{background:#f3f4f6;border-color:#9ca3af;color:#1f2937}.title-section{display:flex;align-items:center;gap:12px}.monitoring-icon{font-size:28px;line-height:1}.form-title{margin:0;font-size:22px;font-weight:600;color:#111827}.close-button{background:transparent;border:none;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#6b7280;transition:all .2s ease;padding:0}.close-button:hover{background:#f3f4f6;color:#374151}.scheduled-time{padding:12px 24px;background:#f9fafb;border-bottom:1px solid #e5e7eb;font-size:13px;color:#4b5563}.scheduled-label{font-weight:500;margin-right:8px}.scheduled-value{color:#374151}.monitoring-form{padding:0;display:flex;flex-direction:column;gap:24px;height:100%;min-height:100%;flex:1;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.monitoring-form::-webkit-scrollbar{display:none}.monitoring-form-container{position:relative}.form-message{position:absolute;top:20px;left:50%;transform:translate(-50%);z-index:1000;padding:12px 24px;border-radius:8px;font-size:14px;font-weight:500;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;animation:slideDown .3s ease-out;pointer-events:none}@keyframes slideDown{0%{opacity:0;transform:translate(-50%) translateY(-10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.form-error{background:#fee2e2;color:#dc2626;border:1px solid #fecaca}.form-success{background:#d1fae5;color:#059669;border:1px solid #a7f3d0}.fields-container{background:var(--theme-bg, #f5f5f5)!important;border:none!important;border-radius:18px!important;padding:24px;display:flex;flex-direction:column;gap:20px;flex:0 0 auto;min-height:auto;width:100%;min-width:0;position:relative}.fields-container>*{width:100%;min-width:0}.monitoring-form-container[data-type=pain] .fields-container{min-height:650px}.field-label{font-size:14px;font-weight:600;color:var(--theme-text, #374151);display:flex;align-items:center;gap:4px}.form-input,.form-select,.form-textarea{width:100%;padding:10px 12px;border:1px solid var(--theme-border, #d1d5db);border-radius:8px;font-size:14px;font-family:inherit;background:#fff;color:#111827;transition:all .2s ease}.form-select.compact-select,select.compact-select{width:auto!important}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--theme-accent, #667eea);box-shadow:0 0 0 3px #667eea1a}.form-input::placeholder{color:#9ca3af}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:640px){.field-row{grid-template-columns:1fr}}.common-fields-section{background:#fff!important;border:1px solid var(--theme-border, #d1d5db)!important;border-radius:18px!important;padding:16px 20px!important;display:flex;flex-direction:column;gap:12px;flex:0 0 auto}.compact-field{margin:0;padding:0}.compact-label{font-size:13px;margin-bottom:6px}.additional-info-row{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap}.compact-textarea{min-height:60px;padding:8px 12px;font-size:13px;resize:vertical;width:100%}.compact-checkbox-label{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:13px;font-weight:500;color:#374151;padding:0;white-space:nowrap}.flag-checkbox{flex-shrink:0;width:90px;min-width:90px;max-width:90px}.circular-checkbox{width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;max-width:18px!important;max-height:18px!important;cursor:pointer;accent-color:#dc2626;margin:0;border-radius:50%!important;appearance:none;-webkit-appearance:none;border:2px solid #d1d5db;background:#fff;position:relative;transition:all .2s ease;flex-shrink:0}.circular-checkbox:checked{background:#dc2626!important;border-color:#dc2626!important;width:18px!important;height:18px!important;border-radius:50%!important}.circular-checkbox:checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:6px;height:6px;border-radius:50%;background:#fff}.flag-icon{flex-shrink:0;transition:all .2s ease}.compact-checkbox-text{font-size:13px;color:#374151}.form-select.compact-select,select.compact-select{padding:10px 40px 10px 16px!important;font-size:14px!important;font-weight:500!important;border:1px solid rgba(0,0,0,.2)!important;border-radius:20px!important;background:transparent!important;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23374151' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 16px center!important;color:#374151!important;cursor:pointer;transition:all .2s ease;min-height:40px!important;appearance:none!important;-webkit-appearance:none!important;-moz-appearance:none!important;width:auto!important}.form-select.compact-select:hover,select.compact-select:hover{background-color:#0000000d!important;border-color:#0000004d!important}.form-select.compact-select:focus,select.compact-select:focus{outline:none!important;border-color:#0000004d!important;background-color:#0000000d!important;box-shadow:none!important}.inline-select{flex:0 0 auto;min-width:180px;max-width:220px;width:200px}.health-issue-dropdown-wrapper{position:relative;display:flex;flex-direction:column;gap:4px}.health-issue-select{padding:8px 32px 8px 12px!important;border:1px solid #dee2e6!important;border-radius:6px!important;font-size:14px!important;font-family:inherit!important;background:#fff!important;color:#333!important;cursor:pointer!important;transition:border-color .2s!important;appearance:none!important;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23374151' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 12px center!important;min-width:220px!important;max-width:280px!important;width:240px!important}.health-issue-select:focus{outline:none!important;border-color:#007bff!important;box-shadow:0 0 0 3px #007bff1a!important}.health-issue-select:disabled{background-color:#f8f9fa!important;cursor:not-allowed!important;opacity:.6!important}.health-issue-select:hover:not(:disabled){border-color:#adb5bd!important}.health-issue-message{font-size:11px!important;color:#6b7280!important;font-style:italic!important;margin-top:4px!important;max-width:260px!important;line-height:1.4!important;word-wrap:break-word!important;overflow-wrap:break-word!important;white-space:normal!important;min-height:28px!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important}.image-upload-inline{display:inline-flex;flex-shrink:0}.file-input{display:none}.upload-button{display:inline-flex!important;align-items:center!important;gap:6px!important;padding:8px 16px!important;background:transparent!important;border:1px solid rgba(0,0,0,.2)!important;border-radius:20px!important;color:#374151!important;font-size:14px!important;font-weight:500!important;cursor:pointer;transition:all .2s ease;width:fit-content!important;min-height:40px!important}.upload-button:hover{background:#0000000d!important;border-color:#0000004d!important;color:#1f2937!important}.inline-upload-button{padding:8px 16px!important;font-size:14px!important;white-space:nowrap;min-height:40px!important}.image-preview-container{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.compact-preview{gap:8px;margin-top:4px}.image-preview-wrapper{position:relative;display:inline-block}.compact-preview-wrapper{margin:0}.image-preview{width:80px;height:80px;object-fit:cover;border-radius:6px;border:1px solid #e5e7eb;box-shadow:0 1px 2px #0000000d}.compact-preview-img{width:70px;height:70px}.image-remove-button{position:absolute;top:-6px;right:-6px;width:20px;height:20px;border-radius:50%;background:#ef4444;color:#fff;border:2px solid #ffffff;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:all .2s ease}.image-remove-button:hover{background:#dc2626;transform:scale(1.1)}.compact-remove{width:18px;height:18px;top:-4px;right:-4px;border-width:1.5px}.image-uploading{position:absolute;bottom:0;left:0;right:0;background:#000000b3;color:#fff;padding:3px;text-align:center;font-size:10px;border-radius:0 0 6px 6px}.compact-uploading{font-size:9px;padding:2px}.form-actions{display:flex!important;justify-content:center!important;align-items:center!important;gap:12px!important;padding:20px 24px!important;border-top:none!important;margin-top:-16px!important;background:#fff!important;flex-shrink:0!important}.btn{padding:8px 16px;border-radius:20px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;font-family:inherit;white-space:nowrap}.btn-secondary{background:#fff!important;color:#374151!important;border:1px solid var(--theme-border, #d1d5db)!important;border-radius:20px!important;padding:8px 16px!important;font-size:14px!important;font-weight:500!important}.btn-secondary:hover:not(:disabled){background:#0000000d!important;border-color:var(--theme-border, #9ca3af)!important}.btn-primary{background:var(--theme-button, #667eea)!important;color:#fff!important;border:none!important;border-radius:20px!important;padding:8px 16px!important;font-size:14px!important;font-weight:500!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important}.btn-primary:hover:not(:disabled){background:var(--theme-accent, #667eea);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0)}@media(max-width:768px){.monitoring-form-container{margin:0;border-radius:0;height:100%}.monitoring-form{padding:0}.fields-container,.common-fields-section{padding:20px}.form-actions{flex-direction:column-reverse;padding:16px 20px}.btn{width:100%}}.form-input:focus-visible,.form-select:focus-visible,.form-textarea:focus-visible{outline:2px solid var(--theme-accent, #667eea);outline-offset:2px}.btn:focus{outline:none!important}.btn:focus-visible{outline:2px solid var(--theme-accent, #667eea)!important;outline-offset:2px!important}.bowel-fields-container{display:flex;flex-direction:column;gap:12px;padding:0 0 20px;width:100%}.bowel-types-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px 16px;padding:0;width:100%;max-width:100%}.bowel-type-item{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:70px;flex-shrink:0;position:relative}.bowel-type-button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:0;border:none;background:none;cursor:pointer;transition:all .2s ease;position:relative;outline:none}.bowel-type-button:focus{outline:none;border:none;box-shadow:none}.bowel-type-button:hover{opacity:.8}.bowel-type-button:hover .bowel-type-label{color:#007bff}.no-stool-button .bowel-type-icon svg{filter:drop-shadow(0 0 2px rgba(220,38,38,.3))}.bowel-type-icon{display:flex;align-items:center;justify-content:center;height:40px;width:60px}.bowel-type-label{font-size:11px;font-weight:500;color:#374151;margin-top:2px;transition:color .2s ease}.bowel-type-checkbox-label{display:flex;align-items:center;justify-content:center;cursor:pointer;margin-top:4px}.circular-checkbox{width:18px;height:18px;min-width:18px;min-height:18px;max-width:18px;max-height:18px;border-radius:50%;cursor:pointer;accent-color:#dc2626}.no-stool-text{font-size:13px;font-weight:500;color:#374151;transition:color .2s ease}.bowel-type-description{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:12px;padding:8px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 12px #0000001a;min-width:200px;max-width:250px;z-index:100;animation:descriptionFadeIn .2s ease-out}@keyframes descriptionFadeIn{0%{opacity:0;transform:translate(-50%) translateY(-5px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.description-text{font-size:12px;color:#374151;margin:0 0 4px;font-weight:500;text-align:center}.interpretation-text{font-size:11px;color:#6b7280;margin:0;font-style:italic;text-align:center}@media(max-width:768px){.bowel-types-grid{grid-template-columns:repeat(4,1fr);gap:16px 12px}.bowel-type-icon{height:35px}.bowel-type-label{font-size:10px}.bowel-tooltip{min-width:250px;max-width:280px}}.monitoring-form-container[data-type=wellbeing_check] .fields-container .wellbeing-check-fields-container,.monitoring-form-container[data-type=wellbeing_check] .wellbeing-check-fields-container,.wellbeing-check-fields-container{display:flex;flex-direction:column;gap:16px;width:100%}.monitoring-form-container[data-type=wellbeing_check] .fields-container .wellbeing-check-fields-container .field-row,.monitoring-form-container[data-type=wellbeing_check] .wellbeing-check-fields-container .field-row,.wellbeing-check-fields-container .field-row{display:grid!important;gap:16px;width:100%;grid-template-columns:1fr!important}.monitoring-form-container[data-type=wellbeing_check] .fields-container .wellbeing-check-fields-container .field-group,.monitoring-form-container[data-type=wellbeing_check] .wellbeing-check-fields-container .field-group,.wellbeing-check-fields-container .field-group{display:flex;flex-direction:column;gap:6px;width:100%}.monitoring-form-container[data-type=wellbeing_check] .fields-container .wellbeing-check-fields-container .field-label,.monitoring-form-container[data-type=wellbeing_check] .wellbeing-check-fields-container .field-label,.wellbeing-check-fields-container .field-label{font-size:14px!important;font-weight:500!important;color:#374151!important;margin:0 0 4px!important}.monitoring-form-container[data-type=wellbeing_check] .fields-container .wellbeing-check-fields-container .field-label .required,.monitoring-form-container[data-type=wellbeing_check] .wellbeing-check-fields-container .field-label .required,.wellbeing-check-fields-container .field-label .required{color:#dc3545!important;margin-left:2px}.monitoring-form-container[data-type=wellbeing_check] .fields-container .wellbeing-check-fields-container .form-textarea,.monitoring-form-container[data-type=wellbeing_check] .fields-container .wellbeing-check-fields-container .wellbeing-textarea,.monitoring-form-container[data-type=wellbeing_check] .wellbeing-check-fields-container .form-textarea,.monitoring-form-container[data-type=wellbeing_check] .wellbeing-check-fields-container .wellbeing-textarea,.wellbeing-check-fields-container .form-textarea,.wellbeing-check-fields-container .wellbeing-textarea{width:100%!important;padding:10px 12px!important;border:1px solid #d1d5db!important;border-radius:6px!important;font-size:14px!important;color:#374151!important;background-color:#fff!important;transition:border-color .2s,box-shadow .2s!important;font-family:inherit!important;resize:vertical!important;min-height:120px!important}.monitoring-form-container[data-type=wellbeing_check] .fields-container .wellbeing-check-fields-container .form-textarea:focus,.monitoring-form-container[data-type=wellbeing_check] .fields-container .wellbeing-check-fields-container .wellbeing-textarea:focus,.monitoring-form-container[data-type=wellbeing_check] .wellbeing-check-fields-container .form-textarea:focus,.monitoring-form-container[data-type=wellbeing_check] .wellbeing-check-fields-container .wellbeing-textarea:focus,.wellbeing-check-fields-container .form-textarea:focus,.wellbeing-check-fields-container .wellbeing-textarea:focus{outline:none!important;border-color:#3b82f6!important;box-shadow:0 0 0 3px #3b82f61a!important}.monitoring-form-container[data-type=wellbeing_check] .fields-container .wellbeing-check-fields-container .form-textarea:hover,.monitoring-form-container[data-type=wellbeing_check] .fields-container .wellbeing-check-fields-container .wellbeing-textarea:hover,.monitoring-form-container[data-type=wellbeing_check] .wellbeing-check-fields-container .form-textarea:hover,.monitoring-form-container[data-type=wellbeing_check] .wellbeing-check-fields-container .wellbeing-textarea:hover,.wellbeing-check-fields-container .form-textarea:hover,.wellbeing-check-fields-container .wellbeing-textarea:hover{border-color:#9ca3af!important}.monitoring-form-container[data-type=wellbeing_check] .fields-container .wellbeing-check-fields-container .form-textarea::placeholder,.monitoring-form-container[data-type=wellbeing_check] .fields-container .wellbeing-check-fields-container .wellbeing-textarea::placeholder,.monitoring-form-container[data-type=wellbeing_check] .wellbeing-check-fields-container .form-textarea::placeholder,.monitoring-form-container[data-type=wellbeing_check] .wellbeing-check-fields-container .wellbeing-textarea::placeholder,.wellbeing-check-fields-container .form-textarea::placeholder,.wellbeing-check-fields-container .wellbeing-textarea::placeholder{color:#9ca3af!important}.general-wellbeing-fields-container{display:flex;flex-direction:column;gap:16px;width:100%}.general-wellbeing-fields-container .field-row{display:grid;gap:16px;width:100%}.general-wellbeing-fields-container .field-group{display:flex;flex-direction:column;gap:6px;width:100%}.general-wellbeing-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;margin-bottom:4px}.general-wellbeing-fields-container .field-label .required{color:#dc3545;margin-left:2px}.general-wellbeing-fields-container .form-input,.general-wellbeing-fields-container .form-select,.general-wellbeing-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;color:#374151;background-color:#fff;transition:border-color .2s,box-shadow .2s;font-family:inherit}.general-wellbeing-fields-container .form-textarea{resize:vertical;min-height:100px}.general-wellbeing-fields-container .form-input:focus,.general-wellbeing-fields-container .form-select:focus,.general-wellbeing-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.general-wellbeing-fields-container .form-input:hover,.general-wellbeing-fields-container .form-select:hover,.general-wellbeing-fields-container .form-textarea:hover{border-color:#9ca3af}.general-wellbeing-fields-container .form-input::placeholder,.general-wellbeing-fields-container .form-textarea::placeholder{color:#9ca3af}.general-wellbeing-fields-container .icon-selection-group{display:flex;gap:12px;flex-wrap:wrap;margin-top:4px}.general-wellbeing-fields-container .icon-selection-group.compact{gap:8px;margin-top:0;align-items:center;flex-wrap:nowrap}.general-wellbeing-fields-container .icon-selection-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:8px 12px;border:none;border-radius:0;background-color:transparent;cursor:pointer;transition:all .2s;min-width:80px;flex:1;max-width:120px}.general-wellbeing-fields-container .icon-selection-btn.compact{flex-direction:row;padding:6px 10px;min-width:auto;max-width:none;width:auto;height:42px;border:1px solid #d1d5db;border-radius:6px;background-color:#fff;gap:6px;align-items:center;flex:1;flex-shrink:1}.general-wellbeing-fields-container .icon-selection-btn.compact:hover{background-color:#f3f4f6;border-color:#9ca3af;transform:none}.general-wellbeing-fields-container .icon-selection-btn.compact.active{background-color:#eff6ff;border-color:#3b82f6}.general-wellbeing-fields-container .icon-emoji{font-size:32px;line-height:1}.general-wellbeing-fields-container .icon-selection-btn.compact .icon-emoji{font-size:18px;line-height:1;flex-shrink:0}.general-wellbeing-fields-container .icon-label{font-size:12px;font-weight:500;color:#374151;text-align:center}.general-wellbeing-fields-container .icon-selection-btn.compact .icon-label{display:block;font-size:11px;white-space:nowrap;line-height:1.2}.general-wellbeing-fields-container .slider-container{display:flex;align-items:center;gap:12px;width:100%}.general-wellbeing-fields-container .form-slider{flex:1;height:6px;border-radius:3px;background:#e5e7eb;outline:none;-webkit-appearance:none;appearance:none}.general-wellbeing-fields-container .form-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:#3b82f6;cursor:pointer;border:2px solid #fff;box-shadow:0 2px 4px #0003}.general-wellbeing-fields-container .form-slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#3b82f6;cursor:pointer;border:2px solid #fff;box-shadow:0 2px 4px #0003}.general-wellbeing-fields-container .form-slider:focus{outline:none}.general-wellbeing-fields-container .form-slider:focus::-webkit-slider-thumb{box-shadow:0 0 0 3px #3b82f633}.general-wellbeing-fields-container .slider-value{min-width:30px;text-align:center;font-size:14px;font-weight:600;color:#374151;padding:4px 8px;background:#f3f4f6;border-radius:4px}.activity-fields-container{display:flex;flex-direction:column;gap:16px;width:100%}.activity-fields-container .field-group{display:flex;flex-direction:column;gap:6px}.activity-fields-container .field-row{display:grid;gap:16px}.activity-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;margin-bottom:4px}.activity-fields-container .field-label .required{color:#dc3545;margin-left:2px}.activity-fields-container .form-input,.activity-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;color:#374151;background-color:#fff;transition:border-color .2s,box-shadow .2s}.activity-fields-container .form-input:focus,.activity-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.activity-fields-container .form-input:hover,.activity-fields-container .form-select:hover{border-color:#9ca3af}.icon-selection-group{display:flex;gap:12px;flex-wrap:wrap;margin-top:4px}.icon-selection-group.compact{gap:8px;margin-top:0;align-items:center;flex-wrap:nowrap}.icon-selection-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:8px 12px;border:none;border-radius:0;background-color:transparent;cursor:pointer;transition:all .2s;min-width:80px;flex:1;max-width:120px}.icon-selection-btn.compact{flex-direction:row;padding:6px 10px;min-width:auto;max-width:none;width:auto;height:42px;border:1px solid #d1d5db;border-radius:6px;background-color:#fff;gap:6px;align-items:center;flex:1;flex-shrink:1}.icon-selection-btn:hover{background-color:transparent;transform:translateY(-2px);opacity:.8}.icon-selection-btn.active{background-color:transparent;opacity:1}.icon-selection-btn.active .icon-emoji{transform:scale(1.1)}.icon-emoji{font-size:32px;line-height:1}.icon-selection-btn.compact .icon-emoji{font-size:18px;line-height:1;flex-shrink:0}.icon-label{font-size:12px;font-weight:500;color:#374151;text-align:center}.icon-selection-btn.compact .icon-label{display:block;font-size:11px;white-space:nowrap;line-height:1.2}.icon-selection-btn.compact:hover{background-color:#f3f4f6;border-color:#9ca3af;transform:none}.icon-selection-btn.compact.active{background-color:#eff6ff;border-color:#3b82f6}.abc-behaviour-fields-container{display:flex;flex-direction:column;gap:16px;width:100%}.abc-behaviour-fields-container .field-row{display:grid;gap:16px;width:100%}.abc-behaviour-fields-container .field-group{display:flex;flex-direction:column;gap:6px;width:100%}.abc-behaviour-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;margin-bottom:4px}.abc-behaviour-fields-container .field-label .required{color:#dc3545;margin-left:2px}.abc-behaviour-fields-container .form-input,.abc-behaviour-fields-container .form-select,.abc-behaviour-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;color:#374151;background-color:#fff;transition:border-color .2s,box-shadow .2s;font-family:inherit}.abc-behaviour-fields-container .form-textarea{resize:vertical;min-height:100px}.abc-behaviour-fields-container .form-input:focus,.abc-behaviour-fields-container .form-select:focus,.abc-behaviour-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.abc-behaviour-fields-container .form-input:hover,.abc-behaviour-fields-container .form-select:hover,.abc-behaviour-fields-container .form-textarea:hover{border-color:#9ca3af}.abc-behaviour-fields-container .form-input::placeholder,.abc-behaviour-fields-container .form-textarea::placeholder{color:#9ca3af}.abc-behaviour-fields-container .section-divider{margin-top:24px;margin-bottom:8px;padding-top:16px;border-top:2px solid #e5e7eb}.abc-behaviour-fields-container .section-divider:first-child{margin-top:0;padding-top:0;border-top:none}.abc-behaviour-fields-container .section-title{font-size:16px;font-weight:600;color:#1f2937;margin:0;padding:0}.abc-behaviour-fields-container .checkbox-group{display:flex;flex-direction:column;gap:8px;margin-top:4px}.abc-behaviour-fields-container .checkbox-group.compact{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:8px}.abc-behaviour-fields-container .checkbox-label{display:flex;align-items:center;gap:8px;font-size:14px;color:#374151;cursor:pointer;padding:6px 8px;border-radius:4px;transition:background-color .2s}.abc-behaviour-fields-container .checkbox-label:hover{background-color:#f3f4f6}.abc-behaviour-fields-container .checkbox-label input[type=checkbox],.abc-behaviour-fields-container .circular-checkbox{width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;max-width:18px!important;max-height:18px!important;cursor:pointer;accent-color:#607d8b;margin:0;border-radius:50%!important;appearance:none;-webkit-appearance:none;border:2px solid #d1d5db;background:#fff;position:relative;transition:all .2s ease;flex-shrink:0}.abc-behaviour-fields-container .checkbox-label input[type=checkbox]:checked,.abc-behaviour-fields-container .circular-checkbox:checked{background:#607d8b!important;border-color:#607d8b!important;width:18px!important;height:18px!important;border-radius:50%!important}.abc-behaviour-fields-container .checkbox-label input[type=checkbox]:checked:after,.abc-behaviour-fields-container .circular-checkbox:checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:6px;height:6px;border-radius:50%;background:#fff}.abc-behaviour-fields-container .checkbox-label span{flex:1;line-height:1.4}.abc-behaviour-fields-container .radio-group{display:flex;gap:16px;margin-top:4px}.abc-behaviour-fields-container .radio-group.compact{gap:24px}.abc-behaviour-fields-container .radio-label{display:flex;align-items:center;gap:8px;font-size:14px;color:#374151;cursor:pointer;padding:6px 8px;border-radius:4px;transition:background-color .2s}.abc-behaviour-fields-container .radio-label:hover{background-color:#f3f4f6}.abc-behaviour-fields-container .radio-label input[type=radio]{width:18px;height:18px;cursor:pointer;accent-color:#3b82f6;flex-shrink:0}.abc-behaviour-fields-container .radio-label span{flex:1;line-height:1.4}.behaviour-fields-container{display:flex;flex-direction:column;gap:16px;width:100%}.behaviour-fields-container .field-row{display:grid;gap:16px;width:100%}.behaviour-fields-container .field-group{display:flex;flex-direction:column;gap:6px;width:100%}.behaviour-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;margin-bottom:4px}.behaviour-fields-container .field-label .required{color:#dc3545;margin-left:2px}.behaviour-fields-container .icon-selection-group{display:flex;gap:12px;flex-wrap:wrap;margin-top:4px}.behaviour-fields-container .icon-selection-group.compact{gap:8px;margin-top:0;align-items:center;flex-wrap:nowrap}.behaviour-fields-container .icon-selection-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:8px 12px;border:none;border-radius:0;background-color:transparent;cursor:pointer;transition:all .2s;min-width:80px;flex:1;max-width:120px}.behaviour-fields-container .icon-selection-btn.compact{flex-direction:row;padding:6px 10px;min-width:auto;max-width:none;width:auto;height:42px;border:1px solid #d1d5db;border-radius:6px;background-color:#fff;gap:6px;align-items:center;flex:1;flex-shrink:1}.behaviour-fields-container .icon-selection-btn.compact:hover{background-color:#f3f4f6;border-color:#9ca3af;transform:none}.behaviour-fields-container .icon-selection-btn.compact.active{background-color:#eff6ff;border-color:#3b82f6}.behaviour-fields-container .icon-emoji{font-size:32px;line-height:1}.behaviour-fields-container .icon-selection-btn.compact .icon-emoji{font-size:18px;line-height:1;flex-shrink:0}.behaviour-fields-container .icon-label{font-size:12px;font-weight:500;color:#374151;text-align:center}.behaviour-fields-container .icon-selection-btn.compact .icon-label{display:block;font-size:11px;white-space:nowrap;line-height:1.2}.bed-change-fields-container{display:flex;flex-direction:column;gap:16px;width:100%}.bed-change-fields-container .field-row{display:grid;gap:16px;width:100%}.bed-change-fields-container .field-group{display:flex;flex-direction:column;gap:6px;width:100%}.bed-change-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;margin-bottom:4px}.bed-change-fields-container .field-label .required{color:#dc3545;margin-left:2px}.bed-change-fields-container .form-input,.bed-change-fields-container .form-select,.bed-change-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;color:#374151;background-color:#fff;transition:border-color .2s,box-shadow .2s;font-family:inherit}.bed-change-fields-container .form-textarea{resize:vertical;min-height:100px}.bed-change-fields-container .form-input:focus,.bed-change-fields-container .form-select:focus,.bed-change-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.bed-change-fields-container .form-input:hover,.bed-change-fields-container .form-select:hover,.bed-change-fields-container .form-textarea:hover{border-color:#9ca3af}.bed-change-fields-container .form-input::placeholder,.bed-change-fields-container .form-textarea::placeholder{color:#9ca3af}.fluid-intake-fields-container{display:flex;flex-direction:column;gap:16px;width:100%}.fluid-intake-fields-container .field-row{display:grid;gap:16px;width:100%}.fluid-intake-fields-container .field-group{display:flex;flex-direction:column;gap:6px;width:100%}.fluid-intake-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;margin-bottom:4px}.fluid-intake-fields-container .field-label .required{color:#dc3545;margin-left:2px}.fluid-intake-fields-container .form-input,.fluid-intake-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;color:#374151;background-color:#fff;transition:border-color .2s,box-shadow .2s;font-family:inherit}.fluid-intake-fields-container .form-input:focus,.fluid-intake-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.fluid-intake-fields-container .form-input:hover,.fluid-intake-fields-container .form-select:hover{border-color:#9ca3af}.fluid-intake-fields-container .form-input::placeholder{color:#9ca3af}.food-intake-fields-container{display:flex;flex-direction:column;gap:16px;width:100%}.food-intake-fields-container .field-row{display:grid;gap:16px;width:100%}.food-intake-fields-container .field-group{display:flex;flex-direction:column;gap:6px;width:100%}.food-intake-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;margin-bottom:4px}.food-intake-fields-container .field-label .required{color:#dc3545;margin-left:2px}.food-intake-fields-container .form-input,.food-intake-fields-container .form-select,.food-intake-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;color:#374151;background-color:#fff;transition:border-color .2s,box-shadow .2s;font-family:inherit}.food-intake-fields-container .form-textarea{resize:vertical;min-height:80px}.food-intake-fields-container .form-input:focus,.food-intake-fields-container .form-select:focus,.food-intake-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.food-intake-fields-container .form-input:hover,.food-intake-fields-container .form-select:hover,.food-intake-fields-container .form-textarea:hover{border-color:#9ca3af}.food-intake-fields-container .form-input::placeholder,.food-intake-fields-container .form-textarea::placeholder{color:#9ca3af}.food-intake-fields-container .checkbox-group{display:flex;flex-direction:column;gap:8px;margin-top:4px}.food-intake-fields-container .checkbox-group.compact{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.food-intake-fields-container .checkbox-label{display:flex;align-items:center;gap:8px;font-size:14px;color:#374151;cursor:pointer;padding:6px 8px;border-radius:4px;transition:background-color .2s}.food-intake-fields-container .checkbox-label:hover{background-color:#f3f4f6}.food-intake-fields-container .checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#3b82f6;flex-shrink:0}.food-intake-fields-container .checkbox-label span{flex:1;line-height:1.4}.food-intake-fields-container .checkbox-label.no-hover:hover{background-color:transparent}.food-intake-fields-container .meal-choices-textarea{height:32px;min-height:32px;resize:none;overflow-y:auto}.food-intake-fields-container .checkbox-group.inline{display:flex;flex-direction:row;gap:24px;flex-wrap:wrap}.food-intake-fields-container .checkbox-label.inline{padding:0;margin:0}.food-intake-fields-container .resident-requirements{margin-top:16px;padding-top:16px;border-top:1px solid #e5e7eb}.food-intake-fields-container .requirement-section{margin-bottom:16px}.food-intake-fields-container .requirement-section:last-child{margin-bottom:0}.food-intake-fields-container .requirement-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:14px}.food-intake-fields-container .requirement-header strong{color:#374151;font-weight:600}.food-intake-fields-container .create-task-btn{padding:4px 12px;font-size:12px;background-color:#3b82f6;color:#fff;border:none;border-radius:4px;cursor:pointer;transition:background-color .2s}.food-intake-fields-container .create-task-btn:hover:not(:disabled){background-color:#2563eb}.food-intake-fields-container .create-task-btn:disabled{background-color:#9ca3af;cursor:not-allowed}.food-intake-fields-container .requirement-content{padding:8px 12px;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:4px;font-size:14px;color:#374151;line-height:1.5}.food-intake-fields-container .requirement-empty{padding:8px 12px;color:#9ca3af;font-size:14px;font-style:italic}.food-intake-fields-container .requirement-loading{padding:8px 12px;color:#6b7280;font-size:14px;text-align:center}.incident-management-fields-container{display:flex;flex-direction:column;gap:16px;width:100%}.incident-management-fields-container .field-row{display:grid;gap:16px;width:100%}.incident-management-fields-container .field-group{display:flex;flex-direction:column;gap:6px;width:100%}.incident-management-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;margin-bottom:4px}.incident-management-fields-container .field-label .required{color:#e53935;margin-left:2px}.incident-management-fields-container .form-input,.incident-management-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #ffcdd2;border-radius:6px;font-size:14px;color:#374151;background-color:#fff;transition:border-color .2s,box-shadow .2s;font-family:inherit}.incident-management-fields-container .form-input:focus,.incident-management-fields-container .form-select:focus{outline:none;border-color:#e53935;box-shadow:0 0 0 3px #e539351a}.incident-management-fields-container .form-input:hover,.incident-management-fields-container .form-select:hover{border-color:#ef9a9a}.incident-management-fields-container .form-input::placeholder{color:#9ca3af}.incident-management-fields-container .circular-checkbox{width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;max-width:18px!important;max-height:18px!important;cursor:pointer;accent-color:#e53935;margin:0;border-radius:50%!important;appearance:none;-webkit-appearance:none;border:2px solid #d1d5db;background:#fff;position:relative;transition:all .2s ease;flex-shrink:0}.incident-management-fields-container .circular-checkbox:checked{background:#e53935!important;border-color:#e53935!important;width:18px!important;height:18px!important;border-radius:50%!important}.incident-management-fields-container .circular-checkbox:checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:6px;height:6px;border-radius:50%;background:#fff}.incident-management-fields-container .compact-checkbox-label{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:13px;font-weight:500;color:#374151;padding:0;white-space:nowrap}.incident-management-fields-container .compact-checkbox-text{font-size:13px;color:#374151}.resident-observations-fields-container{display:flex;flex-direction:column;gap:16px;width:100%}.resident-observations-fields-container .field-row{display:grid;gap:16px;width:100%}.resident-observations-fields-container .field-group{display:flex;flex-direction:column;gap:6px;width:100%}.resident-observations-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;margin-bottom:4px}.resident-observations-fields-container .field-label .required{color:#dc3545;margin-left:2px}.resident-observations-fields-container .form-input,.resident-observations-fields-container .form-select,.resident-observations-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;color:#374151;background-color:#fff;transition:border-color .2s,box-shadow .2s;font-family:inherit}.resident-observations-fields-container .form-textarea{resize:vertical;min-height:120px}.resident-observations-fields-container .form-input:focus,.resident-observations-fields-container .form-select:focus,.resident-observations-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.resident-observations-fields-container .form-input:hover,.resident-observations-fields-container .form-select:hover,.resident-observations-fields-container .form-textarea:hover{border-color:#9ca3af}.resident-observations-fields-container .form-input::placeholder,.resident-observations-fields-container .form-textarea::placeholder{color:#9ca3af}.vital-signs-fields-container{display:flex;flex-direction:column;gap:16px}.vital-signs-fields-container .field-row{display:grid;gap:16px}.vital-signs-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.vital-signs-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:4px}.vital-signs-fields-container .field-label .required{color:#ef4444}.vital-signs-fields-container .input-with-unit{position:relative;display:flex;align-items:center}.vital-signs-fields-container .input-with-unit .form-input{padding-right:50px}.vital-signs-fields-container .input-unit{position:absolute;right:12px;font-size:14px;color:#6b7280;pointer-events:none}.vital-signs-fields-container .form-input{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s}.vital-signs-fields-container .form-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.vital-signs-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s,box-shadow .2s}.vital-signs-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.urine-continence-fields-container{display:flex;flex-direction:column;gap:16px}.urine-continence-fields-container .field-row{display:grid;gap:16px}.urine-continence-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.urine-continence-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:4px}.urine-continence-fields-container .field-label .required{color:#ef4444}.urine-continence-fields-container .input-with-unit{position:relative;display:flex;align-items:center}.urine-continence-fields-container .input-with-unit .form-input{padding-right:50px}.urine-continence-fields-container .input-unit{position:absolute;right:12px;font-size:14px;color:#6b7280;pointer-events:none}.urine-continence-fields-container .form-input,.urine-continence-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;background-color:#fff}.urine-continence-fields-container .form-input:focus,.urine-continence-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.urine-continence-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s,box-shadow .2s}.urine-continence-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.bowel-description{font-size:13px;color:#374151;line-height:1.5;margin:0 0 8px;text-align:center;padding:0;background:none;border:none}.pain-fields-container{display:flex;flex-direction:column;gap:16px}.pain-fields-container .field-row{display:grid;gap:16px}.pain-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.pain-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:4px}.pain-fields-container .field-label .required{color:#ef4444}.pain-fields-container .pain-level-display{margin-left:auto;font-weight:600;color:#f44}.pain-fields-container .slider-container{display:flex;flex-direction:column;gap:8px}.pain-fields-container .form-slider{width:100%;height:8px;border-radius:4px;background:#e5e7eb;outline:none;-webkit-appearance:none;appearance:none}.pain-fields-container .form-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:#f44;cursor:pointer;border:2px solid #ffffff;box-shadow:0 2px 4px #0003}.pain-fields-container .form-slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#f44;cursor:pointer;border:2px solid #ffffff;box-shadow:0 2px 4px #0003}.pain-fields-container .form-slider:focus{outline:none}.pain-fields-container .form-slider:focus::-webkit-slider-thumb{box-shadow:0 0 0 3px #f4443933}.pain-fields-container .slider-labels{display:flex;justify-content:space-between;font-size:12px;color:#6b7280;padding:0 4px}.pain-fields-container .slider-description{display:flex;justify-content:space-between;font-size:11px;color:#9ca3af;padding:0 4px}.pain-fields-container .form-input,.pain-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;background-color:#fff}.pain-fields-container .form-input:focus,.pain-fields-container .form-select:focus{outline:none;border-color:#f44;box-shadow:0 0 0 3px #f444391a}.pain-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s,box-shadow .2s}.pain-fields-container .form-textarea:focus{outline:none;border-color:#f44;box-shadow:0 0 0 3px #f444391a}.pain-fields-container .checkbox-label-minimal{display:flex;align-items:center;gap:8px;padding:0;border:none;background:transparent;cursor:pointer;font-size:14px;font-weight:500;color:#374151}.pain-fields-container .circular-checkbox{width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;max-width:18px!important;max-height:18px!important;cursor:pointer;accent-color:#dc2626;margin:0;border-radius:50%!important;appearance:none;-webkit-appearance:none;border:2px solid #d1d5db;background:#fff;position:relative;transition:all .2s ease;flex-shrink:0}.pain-fields-container .circular-checkbox:checked{background:#dc2626!important;border-color:#dc2626!important;width:18px!important;height:18px!important;border-radius:50%!important}.pain-fields-container .circular-checkbox:checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:6px;height:6px;border-radius:50%;background:#fff}.body-map-container{display:flex;flex-direction:column;gap:8px;width:100%;max-width:100%;overflow:hidden;box-sizing:border-box}.body-map-label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:4px}.body-map-label .required{color:#ef4444}.view-toggle-container{display:inline-flex;align-items:center;background:transparent;border-radius:999px;padding:2px;margin-top:20px;gap:2px;justify-content:center;width:100%}.view-toggle-btn{border:none;background:transparent;padding:6px 16px;border-radius:999px;font-size:13px;font-weight:600;color:#4b5563;cursor:pointer;transition:all .2s ease;min-width:70px}.view-toggle-btn:hover{background:#f444391a}.view-toggle-btn.active{background:#f44;color:#fff;box-shadow:0 1px 4px #f4443959}.body-map-wrapper{position:relative;display:block;margin:0;width:100%;max-width:100%;aspect-ratio:1 / 1.33;overflow:hidden}.body-map-wrapper img{position:absolute;top:50%;left:50%;width:140%;height:140%;display:block;object-fit:cover;object-position:center center;transform:translate(-50%,-50%) scale(1.4);transform-origin:center center}.body-map-overlay{position:absolute;top:0;left:0;width:100%;height:100%}.body-part-region{position:absolute;cursor:pointer;transition:all .2s ease;border-radius:8px;border:none}.body-part-region:hover{background-color:#f14d4933!important;box-shadow:inset 0 0 15px #f14d4933!important}.body-part-region.selected{background-color:#f14d4966!important;box-shadow:inset 0 0 20px #f14d494d!important}.selected-part-display{padding:8px 12px;background:#f3f4f6;border-radius:6px;font-size:14px;color:#374151;text-align:center;margin-top:8px}.selected-part-display strong{color:#ef4444;font-weight:600}.sleep-fields-container{display:flex;flex-direction:column;gap:16px}.sleep-fields-container .field-row{display:grid;gap:16px}.sleep-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.sleep-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:4px}.sleep-fields-container .field-label .required{color:#ef4444}.sleep-fields-container .input-with-unit{position:relative;display:flex;align-items:center}.sleep-fields-container .input-with-unit .form-input{padding-right:70px}.sleep-fields-container .input-unit{position:absolute;right:12px;font-size:14px;color:#6b7280;pointer-events:none}.sleep-fields-container .form-input,.sleep-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;background-color:#fff}.sleep-fields-container .form-input:focus,.sleep-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.sleep-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s,box-shadow .2s}.sleep-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.mobility-fields-container{display:flex;flex-direction:column;gap:16px}.mobility-fields-container .field-row{display:grid;gap:16px}.mobility-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.mobility-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:4px}.mobility-fields-container .field-label .required{color:#ef4444}.mobility-fields-container .input-with-unit{position:relative;display:flex;align-items:center}.mobility-fields-container .input-with-unit .form-input{padding-right:40px}.mobility-fields-container .input-unit{position:absolute;right:12px;font-size:14px;color:#6b7280;pointer-events:none}.mobility-fields-container .form-input,.mobility-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;background-color:#fff}.mobility-fields-container .form-input:focus,.mobility-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.mobility-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s,box-shadow .2s}.mobility-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.mobility-fields-container .radio-group{display:flex;flex-direction:column;gap:8px;margin-top:8px}.mobility-fields-container .radio-label{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:6px;cursor:pointer;transition:background-color .2s;font-size:14px;color:#495057}.mobility-fields-container .radio-label:hover{background-color:#f8f9fa}.mobility-fields-container .radio-label input[type=radio]{width:18px;height:18px;cursor:pointer;margin:2px 0 0;flex-shrink:0}.mobility-fields-container .radio-label span{flex:1;line-height:1.5}.skin-integrity-fields-container{display:flex;flex-direction:column;gap:16px}.skin-integrity-fields-container .field-row{display:grid;gap:16px}.skin-integrity-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.skin-integrity-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:4px}.skin-integrity-fields-container .field-label .required{color:#ef4444}.skin-integrity-fields-container .checkbox-group{display:flex;flex-wrap:wrap;gap:12px}.skin-integrity-fields-container .checkbox-group.compact{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px}.skin-integrity-fields-container .checkbox-group.inline{display:flex;flex-direction:row;gap:24px}.skin-integrity-fields-container .checkbox-label{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;transition:all .2s;background-color:#fff}.skin-integrity-fields-container .checkbox-label.compact{padding:6px 10px;font-size:13px}.skin-integrity-fields-container .checkbox-label.inline{padding:0;border:none;background:transparent}.skin-integrity-fields-container .checkbox-label:hover{background-color:#f9fafb;border-color:#9ca3af}.skin-integrity-fields-container .checkbox-label input[type=checkbox]{margin:0;cursor:pointer}.skin-integrity-fields-container .checkbox-label input[type=checkbox]:checked+span{font-weight:500}.skin-integrity-fields-container .form-input,.skin-integrity-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;background-color:#fff}.skin-integrity-fields-container .form-input:focus,.skin-integrity-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.skin-integrity-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s,box-shadow .2s}.skin-integrity-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.skin-integrity-fields-container .circular-checkbox{width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;max-width:18px!important;max-height:18px!important;cursor:pointer;accent-color:#dc2626;margin:0;border-radius:50%!important;appearance:none;-webkit-appearance:none;border:2px solid #d1d5db;background:#fff;position:relative;transition:all .2s ease;flex-shrink:0}.skin-integrity-fields-container .circular-checkbox:checked{background:#dc2626!important;border-color:#dc2626!important;width:18px!important;height:18px!important;border-radius:50%!important}.skin-integrity-fields-container .circular-checkbox:checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:6px;height:6px;border-radius:50%;background:#fff}.skin-integrity-fields-container .checkbox-label-minimal{display:flex;align-items:center;gap:8px;padding:0;border:none;background:transparent;cursor:pointer;font-size:14px;font-weight:500;color:#374151}.skin-integrity-fields-container .pressure-areas-checkbox-group{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.skin-integrity-fields-container .pressure-area-checkbox-label{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;transition:all .2s;background-color:#fff;font-size:13px}.skin-integrity-fields-container .pressure-area-checkbox-label:hover{background-color:#f9fafb;border-color:#9ca3af}.skin-integrity-fields-container .pressure-area-icon{font-size:16px;flex-shrink:0}.skin-integrity-fields-container .form-input[readonly]{background-color:#f9fafb;cursor:not-allowed}.temperature-fields-container{display:flex;flex-direction:column;gap:16px}.temperature-fields-container .field-row{display:grid;gap:16px}.temperature-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.temperature-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:4px}.temperature-fields-container .field-label .required{color:#ef4444}.temperature-fields-container .input-with-unit{position:relative;display:flex;align-items:center}.temperature-fields-container .input-with-unit .form-input{padding-right:50px}.temperature-fields-container .input-unit{position:absolute;right:12px;font-size:14px;color:#6b7280;pointer-events:none}.temperature-fields-container .form-input,.temperature-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;background-color:#fff}.temperature-fields-container .form-input:focus,.temperature-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.temperature-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s,box-shadow .2s}.temperature-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.medication-fields-container{display:flex;flex-direction:column;gap:16px}.medication-fields-container .field-row{display:grid;gap:16px}.medication-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.medication-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:4px}.medication-fields-container .field-label .required{color:#ef4444}.medication-fields-container .form-input,.medication-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;background-color:#fff}.medication-fields-container .form-input:focus,.medication-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.medication-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s,box-shadow .2s}.medication-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.medicine-fields-container{padding:20px;max-width:1000px;margin:0 auto}.field-row,.field-group{margin-bottom:16px}.field-label{display:block;margin-bottom:6px;font-weight:500;font-size:14px;color:#212529}.field-label .required{color:#dc3545;margin-left:2px}.form-input,.form-select,.form-textarea{width:100%;padding:10px 12px;border:1px solid #ced4da;border-radius:6px;font-size:14px;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:#80bdff;box-shadow:0 0 0 .2rem #007bff40}.help-text{margin-top:4px;font-size:12px;color:#6c757d;font-style:italic}.regular-medication-section,.prn-medication-section{margin-top:16px;padding:16px;background-color:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.regular-medication-section h4,.prn-medication-section h4{margin:0 0 16px;font-size:16px;font-weight:600}.btn-secondary{padding:8px 16px;background-color:#6c757d;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;transition:background-color .15s ease-in-out}.btn-secondary:active{background-color:#545b62}.medicine-fields-container .circular-checkbox{width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;max-width:18px!important;max-height:18px!important;cursor:pointer;accent-color:#dc2626;margin:0;border-radius:50%!important;appearance:none;-webkit-appearance:none;border:2px solid #d1d5db;background:#fff;position:relative;transition:all .2s ease;flex-shrink:0}.medicine-fields-container .circular-checkbox:checked{background:#dc2626!important;border-color:#dc2626!important;width:18px!important;height:18px!important;border-radius:50%!important}.medicine-fields-container .circular-checkbox:checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:6px;height:6px;border-radius:50%;background:#fff}.medicine-fields-container .compact-checkbox-label{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:13px;font-weight:500;color:#374151;padding:0;white-space:nowrap}.medicine-fields-container .compact-checkbox-text{font-size:13px;color:#374151}.inline-number-input,.inline-select{vertical-align:middle}.inline-number-input{padding:6px 8px!important}.inline-select{padding:6px 30px 6px 8px!important}@media(max-width:768px){.medicine-fields-container{padding:12px}.field-row{grid-template-columns:1fr!important}}.blood-glucose-fields-container{display:flex;flex-direction:column;gap:16px}.blood-glucose-fields-container .field-row{display:grid;gap:16px}.blood-glucose-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.blood-glucose-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:4px}.blood-glucose-fields-container .field-label .required{color:#ef4444}.blood-glucose-fields-container .input-with-unit{position:relative;display:flex;align-items:center}.blood-glucose-fields-container .input-with-unit .form-input{padding-right:80px}.blood-glucose-fields-container .input-unit{position:absolute;right:12px;font-size:14px;color:#6b7280;pointer-events:none}.blood-glucose-fields-container .checkbox-group.inline{display:flex;flex-direction:row;gap:24px}.blood-glucose-fields-container .checkbox-label.inline{display:flex;align-items:center;gap:8px;padding:0;border:none;background:transparent;cursor:pointer}.blood-glucose-fields-container .checkbox-label.inline input[type=checkbox]{margin:0;cursor:pointer}.blood-glucose-fields-container .form-input,.blood-glucose-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;background-color:#fff}.blood-glucose-fields-container .form-input:focus,.blood-glucose-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.blood-glucose-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s,box-shadow .2s}.blood-glucose-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.blood-glucose-fields-container .checkbox-label-minimal{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;font-weight:500;color:#374151}.blood-glucose-fields-container .circular-checkbox{width:20px;height:20px;border-radius:50%;border:2px solid #d1d5db;appearance:none;cursor:pointer;position:relative;transition:all .2s;flex-shrink:0}.blood-glucose-fields-container .circular-checkbox:checked{background-color:#f44;border-color:#f44}.blood-glucose-fields-container .circular-checkbox:checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:8px;height:8px;border-radius:50%;background-color:#fff}.blood-glucose-fields-container .circular-checkbox:disabled{opacity:.5;cursor:not-allowed}.blood-glucose-fields-container .edit-timestamp{font-size:12px;color:#6b7280;font-style:italic;margin-top:4px}.personal-care-fields-container{display:flex;flex-direction:column;gap:16px}.personal-care-fields-container .field-row{display:grid;gap:16px}.personal-care-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.personal-care-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:4px}.personal-care-fields-container .field-label .required{color:#ef4444}.personal-care-fields-container .form-input,.personal-care-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;background-color:#fff}.personal-care-fields-container .form-input:focus,.personal-care-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.personal-care-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s,box-shadow .2s}.personal-care-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.bath-fields-container{display:flex;flex-direction:column;gap:16px}.bath-fields-container .field-row{display:grid;gap:16px}.bath-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.bath-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:4px}.bath-fields-container .field-label .required{color:#ef4444}.bath-fields-container .form-input,.bath-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;background-color:#fff}.bath-fields-container .form-input:focus,.bath-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.bath-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s,box-shadow .2s}.bath-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.resident-handover-fields-container{display:flex;flex-direction:column;gap:16px}.resident-handover-fields-container .field-row{display:grid;gap:16px}.resident-handover-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.resident-handover-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:4px}.resident-handover-fields-container .field-label .required{color:#ef4444}.resident-handover-fields-container .form-input,.resident-handover-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;background-color:#fff}.resident-handover-fields-container .form-input:focus,.resident-handover-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.resident-handover-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s,box-shadow .2s}.resident-handover-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.seizure-fields-container{display:flex;flex-direction:column;gap:16px}.seizure-fields-container .field-row{display:grid;gap:16px}.seizure-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.seizure-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:4px}.seizure-fields-container .field-label .required{color:#ef4444}.seizure-fields-container .input-with-unit{position:relative;display:flex;align-items:center}.seizure-fields-container .input-with-unit .form-input{padding-right:50px}.seizure-fields-container .input-unit{position:absolute;right:12px;font-size:14px;color:#6b7280;pointer-events:none}.seizure-fields-container .checkbox-group.inline{display:flex;flex-direction:row;gap:24px}.seizure-fields-container .checkbox-label.inline{display:flex;align-items:center;gap:8px;padding:0;border:none;background:transparent;cursor:pointer}.seizure-fields-container .checkbox-label.inline input[type=checkbox]{margin:0;cursor:pointer}.seizure-fields-container .checkbox-label-minimal{display:flex;align-items:center;gap:8px;padding:0;border:none;background:transparent;cursor:pointer;font-size:14px;font-weight:500;color:#374151}.seizure-fields-container .circular-checkbox{width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;max-width:18px!important;max-height:18px!important;cursor:pointer;accent-color:#dc2626;margin:0;border-radius:50%!important;appearance:none;-webkit-appearance:none;border:2px solid #d1d5db;background:#fff;position:relative;transition:all .2s ease;flex-shrink:0}.seizure-fields-container .circular-checkbox:checked{background:#dc2626!important;border-color:#dc2626!important;width:18px!important;height:18px!important;border-radius:50%!important}.seizure-fields-container .circular-checkbox:checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:6px;height:6px;border-radius:50%;background:#fff}.seizure-fields-container .form-input,.seizure-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;background-color:#fff}.seizure-fields-container .form-input:focus,.seizure-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.seizure-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s,box-shadow .2s}.seizure-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.fall-fields-container{display:flex;flex-direction:column;gap:16px}.fall-fields-container .field-row{display:grid;gap:16px}.fall-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.fall-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:4px}.fall-fields-container .field-label .required{color:#ef4444}.fall-fields-container .form-input,.fall-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;background-color:#fff}.fall-fields-container .form-input:focus,.fall-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.fall-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s,box-shadow .2s}.fall-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.oxygen-therapy-fields-container{display:flex;flex-direction:column;gap:16px}.oxygen-therapy-fields-container .field-row{display:grid;gap:16px}.oxygen-therapy-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.oxygen-therapy-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:4px}.oxygen-therapy-fields-container .field-label .required{color:#ef4444}.oxygen-therapy-fields-container .input-with-unit{position:relative;display:flex;align-items:center}.oxygen-therapy-fields-container .input-with-unit .form-input{padding-right:60px}.oxygen-therapy-fields-container .input-unit{position:absolute;right:12px;font-size:14px;color:#6b7280;pointer-events:none}.oxygen-therapy-fields-container .form-input,.oxygen-therapy-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;background-color:#fff}.oxygen-therapy-fields-container .form-input:focus,.oxygen-therapy-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.oxygen-therapy-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s,box-shadow .2s}.oxygen-therapy-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.post-operative-fields-container{display:flex;flex-direction:column;gap:16px}.post-operative-fields-container .field-row{display:grid;gap:16px}.post-operative-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.post-operative-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:4px}.post-operative-fields-container .field-label .required{color:#ef4444}.post-operative-fields-container .pain-level-display{margin-left:auto;font-weight:600;color:#3b82f6}.post-operative-fields-container .slider-container{display:flex;flex-direction:column;gap:8px}.post-operative-fields-container .form-slider{width:100%;height:8px;border-radius:4px;background:#e5e7eb;outline:none;-webkit-appearance:none;appearance:none}.post-operative-fields-container .form-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:#3b82f6;cursor:pointer;border:2px solid #ffffff;box-shadow:0 2px 4px #0003}.post-operative-fields-container .form-slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#3b82f6;cursor:pointer;border:2px solid #ffffff;box-shadow:0 2px 4px #0003}.post-operative-fields-container .form-slider:focus{outline:none}.post-operative-fields-container .form-slider:focus::-webkit-slider-thumb{box-shadow:0 0 0 3px #3b82f633}.post-operative-fields-container .slider-labels{display:flex;justify-content:space-between;font-size:12px;color:#6b7280;padding:0 4px}.post-operative-fields-container .slider-description{display:flex;justify-content:space-between;font-size:11px;color:#9ca3af;padding:0 4px}.post-operative-fields-container .form-input,.post-operative-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;background-color:#fff}.post-operative-fields-container .form-input:focus,.post-operative-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.post-operative-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s,box-shadow .2s}.post-operative-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.safety-fields-container{display:flex;flex-direction:column;gap:16px;width:100%;min-width:0}.safety-fields-container .peep-section{width:100%;min-width:0;display:flex!important;flex-direction:column!important}.safety-fields-container .peep-form-inner{width:100%;min-width:0}.safety-fields-container .peep-review-in-row{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center;gap:8px;width:100%}.safety-fields-container .peep-review-in-row .field-label{margin:0;white-space:nowrap;flex-shrink:0}.safety-fields-container .peep-review-in-row .form-input[type=number]{width:56px;min-width:56px;flex-shrink:0}.safety-fields-container .peep-review-in-row .form-select{width:88px;min-width:88px;flex-shrink:0}.safety-fields-container .peep-review-in-spacer{flex:1 1 20px;min-width:20px}.safety-fields-container .peep-next-review-date{display:inline-flex;align-items:center;padding:6px 10px;background:var(--input-bg, #f9fafb);border:1px solid #d1d5db;border-radius:6px;min-height:34px;min-width:110px;font-size:14px;flex-shrink:0}.safety-fields-container .field-row{display:grid;gap:16px}.safety-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.safety-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:4px}.safety-fields-container .field-label .required{color:#ef4444}.safety-fields-container .checkbox-group.inline{display:flex;flex-direction:row;gap:24px}.safety-fields-container .checkbox-label.inline{display:flex;align-items:center;gap:8px;padding:0;border:none;background:transparent;cursor:pointer}.safety-fields-container .checkbox-label.inline input[type=checkbox]{margin:0;cursor:pointer}.safety-fields-container .form-input,.safety-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;background-color:#fff}.safety-fields-container .form-input:focus,.safety-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.safety-fields-container .safety-risk-level-select{width:100%;cursor:pointer;appearance:auto}.safety-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s,box-shadow .2s}.safety-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.safety-fields-container .risk-level-options{display:flex;gap:12px;flex-wrap:wrap}.safety-fields-container .risk-level-option{display:flex;align-items:center;gap:6px;padding:8px 16px;border:2px solid #d1d5db;border-radius:6px;background-color:#fff;cursor:pointer;transition:all .2s;font-size:14px;font-weight:400}.safety-fields-container .risk-level-option:hover{border-color:#3b82f6;background-color:#f0f9ff}.safety-fields-container .risk-level-option input[type=radio]{margin:0;cursor:pointer}.safety-fields-container .risk-level-option input[type=radio]:checked+span{font-weight:600}.infection-control-fields-container{display:flex;flex-direction:column;gap:16px}.infection-control-fields-container .field-row{display:grid;gap:16px}.infection-control-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.infection-control-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:4px}.infection-control-fields-container .field-label .required{color:#ef4444}.infection-control-fields-container .checkbox-group{display:flex;flex-wrap:wrap;gap:12px}.infection-control-fields-container .checkbox-group.compact{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px}.infection-control-fields-container .checkbox-group.inline{display:flex;flex-direction:row;gap:24px}.infection-control-fields-container .checkbox-label{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;transition:all .2s;background-color:#fff}.infection-control-fields-container .checkbox-label.compact{padding:6px 10px;font-size:13px}.infection-control-fields-container .checkbox-label.inline{padding:0;border:none;background:transparent}.infection-control-fields-container .checkbox-label:hover{background-color:#f9fafb;border-color:#9ca3af}.infection-control-fields-container .checkbox-label input[type=checkbox]{margin:0;cursor:pointer}.infection-control-fields-container .form-input,.infection-control-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;background-color:#fff}.infection-control-fields-container .form-input:focus,.infection-control-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.infection-control-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s,box-shadow .2s}.infection-control-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.infection-control-fields-container .circular-checkbox{width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;max-width:18px!important;max-height:18px!important;cursor:pointer;accent-color:#dc2626;margin:0;border-radius:50%!important;appearance:none;-webkit-appearance:none;border:2px solid #d1d5db;background:#fff;position:relative;transition:all .2s ease;flex-shrink:0}.infection-control-fields-container .circular-checkbox:checked{background:#dc2626!important;border-color:#dc2626!important;width:18px!important;height:18px!important;border-radius:50%!important}.infection-control-fields-container .circular-checkbox:checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:6px;height:6px;border-radius:50%;background:#fff}.infection-control-fields-container .compact-checkbox-label{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:13px;font-weight:500;color:#374151;padding:0;white-space:nowrap}.infection-control-fields-container .flag-checkbox{flex-shrink:0;min-width:auto;max-width:none;width:auto}.infection-control-fields-container .flag-icon{flex-shrink:0;transition:all .2s ease}.infection-control-fields-container .compact-checkbox-text{font-size:13px;color:#374151}.infection-control-fields-container .ppe-checkbox-group{display:flex;flex-wrap:nowrap;gap:12px;align-items:center;overflow-x:auto}.end-of-life-fields-container{display:flex;flex-direction:column;gap:16px}.end-of-life-fields-container .field-row{display:grid;gap:16px}.end-of-life-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.end-of-life-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:4px}.end-of-life-fields-container .field-label .required{color:#ef4444}.end-of-life-fields-container .form-input,.end-of-life-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;background-color:#fff}.end-of-life-fields-container .form-input:focus,.end-of-life-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.end-of-life-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s,box-shadow .2s;background-color:#fff}.end-of-life-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.end-of-life-fields-container .circular-checkbox{width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;max-width:18px!important;max-height:18px!important;cursor:pointer;accent-color:#dc2626;margin:0;border-radius:50%!important;appearance:none;-webkit-appearance:none;border:2px solid #d1d5db;background:#fff;position:relative;transition:all .2s ease;flex-shrink:0}.end-of-life-fields-container .circular-checkbox:checked{background:#dc2626!important;border-color:#dc2626!important;width:18px!important;height:18px!important;border-radius:50%!important}.end-of-life-fields-container .circular-checkbox:checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:6px;height:6px;border-radius:50%;background:#fff}.end-of-life-fields-container .compact-checkbox-label{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:13px;font-weight:500;color:#374151;padding:0;white-space:nowrap}.end-of-life-fields-container .compact-checkbox-text{font-size:13px;color:#374151}.risk-assessment-falls-fields-container{display:flex;flex-direction:column;gap:24px}.notice-text .frat-link{color:#3b82f6;text-decoration:underline;font-weight:500}.notice-text .frat-link:hover{color:#2563eb}.supporting-indicators-section{display:flex;flex-direction:column;gap:16px}.section-title{font-size:18px;font-weight:600;color:#1f2937;margin:0 0 8px;padding-bottom:12px;border-bottom:2px solid #e5e7eb}.section-description{font-size:13px;color:#6b7280;margin:0;font-style:italic}.field-row{display:grid;gap:16px;margin-bottom:0}.field-label{font-size:13px;font-weight:600;color:#374151;display:block;line-height:1.5}.field-label .required{display:inline;color:#ef4444;font-weight:700;margin-left:2px}.help-text{font-size:12px;color:#6b7280;font-weight:400;font-style:italic;width:100%;margin-top:4px;display:block;line-height:1.4}.form-select,.form-textarea{width:100%;padding:12px 16px;border:2px solid #d1d5db;border-radius:8px;font-size:14px;transition:all .2s;background-color:#fff;font-family:inherit}.form-select:focus,.form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.radio-group{display:flex;gap:24px;margin-top:8px}.radio-label{display:flex;align-items:center;gap:8px;cursor:pointer;padding:8px 12px;border-radius:6px;transition:background-color .2s}.radio-label input[type=radio]{width:18px;height:18px;cursor:pointer;accent-color:#3b82f6}.radio-label span{font-size:14px;color:#374151;font-weight:500}.indicators-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin-bottom:12px;margin-top:4px}.flag-checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:13px;font-weight:500;color:#374151;padding:0}.circular-checkbox-flag{width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;max-width:18px!important;max-height:18px!important;cursor:pointer;accent-color:#6b7280;margin:0;border-radius:50%!important;appearance:none;-webkit-appearance:none;border:2px solid #d1d5db;background:#fff;position:relative;transition:all .2s ease;flex-shrink:0}.circular-checkbox-flag:checked{background:#6b7280!important;border-color:#6b7280!important;width:18px!important;height:18px!important;border-radius:50%!important}.circular-checkbox-flag:checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:6px;height:6px;border-radius:50%;background:#fff}.flag-checkbox-label span{font-size:13px;color:#374151;font-weight:500}@media(max-width:768px){.score-card{grid-template-columns:1fr}.score-total,.risk-level-display{grid-column:span 1}.indicators-grid{grid-template-columns:1fr}.field-label{flex-direction:column;align-items:flex-start}.score-badge{margin-left:0;margin-top:4px}}.risk-assessment-pressure-ulcers-fields-container{display:flex;flex-direction:column;gap:24px}.notice-text .braden-link{color:#3b82f6;text-decoration:underline;font-weight:500}.notice-text .braden-link:hover{color:#2563eb}.field-help-text{font-size:12px;color:#6b7280;font-style:italic;margin:0 0 0 8px;font-weight:400}.form-select{width:100%;padding:8px 12px;font-size:13px;border:1px solid #d1d5db;border-radius:6px;background-color:#fff;color:#374151;transition:border-color .2s ease}@media(max-width:768px){.field-row{grid-template-columns:1fr!important}.badges-section{flex-direction:column;align-items:stretch}}.risk-assessment-malnutrition-fields-container{display:flex;flex-direction:column;gap:24px}.notice-text .must-link{color:#3b82f6;text-decoration:underline;font-weight:500}.notice-text .must-link:hover{color:#2563eb}.must-scoring-section{display:flex;flex-direction:column;gap:20px;margin-bottom:24px}.field-label{font-size:13px;font-weight:500;color:#374151;display:block}.field-label .required{color:#dc2626;margin-left:2px}.field-help-text{font-size:12px;color:#6b7280;font-style:italic;margin:-4px 0 0}.calculation-status{padding:12px;background:#f3f4f6;border-radius:6px;font-size:13px;color:#6b7280;font-style:italic}.calculation-result{padding:12px;background:#f0fdf4;border:1px solid #86efac;border-radius:6px}.calculation-value{font-size:14px;font-weight:500;color:#166534;display:flex;align-items:center;gap:12px;margin-bottom:4px}.calculation-value .score-badge{padding:4px 8px;background:#22c55e;color:#fff;border-radius:12px;font-size:12px;font-weight:600}.calculation-details{font-size:12px;color:#15803d;margin-top:4px}.calculation-formula{font-size:12px;color:#166534;margin-top:8px;padding:8px;background:#f0fdf4;border-radius:4px;line-height:1.6}.calculation-formula strong{color:#15803d;font-weight:600}.formula-detail{display:block;margin-top:4px;font-size:11px;color:#16a34a;font-style:italic}.no-weight-loss-indicator{display:block;margin-top:4px;font-size:12px;color:#15803d;font-weight:500}.score-selection{margin-top:12px}.record-buttons{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}.record-button{padding:8px 16px;background:#667eea;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background-color .2s}.record-button:hover{background:#5568d3}.record-button:active{background:#4c5bc4}.calculation-error{padding:12px;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;font-size:13px;color:#991b1b;font-style:italic}.radio-label{display:flex;align-items:flex-start;gap:8px;cursor:pointer;padding:8px 12px;border-radius:6px;transition:background-color .2s}.radio-label:hover{background-color:#f3f4f6}.radio-label input[type=radio]{width:18px;height:18px;cursor:pointer;accent-color:#667eea;margin-top:2px;flex-shrink:0}.radio-label span{font-size:13px;color:#374151;line-height:1.5;flex:1}.form-textarea{width:100%;padding:8px 12px;font-size:13px;border:1px solid #d1d5db;border-radius:6px;background-color:#fff;color:#374151;font-family:inherit;resize:vertical;transition:border-color .2s ease}.form-textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}@media(max-width:768px){.badges-section{flex-direction:column;align-items:stretch}}.assessment-cognitive-fields-container{display:flex;flex-direction:column;gap:16px}.assessment-cognitive-fields-container .field-row{display:grid;gap:16px}.assessment-cognitive-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.assessment-cognitive-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:4px}.assessment-cognitive-fields-container .field-label .required{color:#ef4444}.assessment-cognitive-fields-container .form-input,.assessment-cognitive-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;background-color:#fff}.assessment-cognitive-fields-container .form-input:focus,.assessment-cognitive-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.assessment-cognitive-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s,box-shadow .2s}.assessment-cognitive-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.assessment-cognitive-6cit{display:flex;flex-direction:column;gap:24px}.sixcit-notice-section{text-align:center;padding:0;margin-bottom:0}.sixcit-notice-text{margin:0;font-size:13px;color:#6b7280;line-height:1.5;font-style:italic}.sixcit-notice-text .sixcit-link{color:#3b82f6;text-decoration:underline;font-weight:500}.sixcit-notice-text .sixcit-link:hover{color:#2563eb}.sixcit-badges-section{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:0}.sixcit-score-badge-capsule{padding:8px 16px;background:var(--theme-button, #667eea);color:#fff;border-radius:20px;font-weight:500;font-size:14px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;border:none}.sixcit-score-badge-value{color:#fff}.sixcit-status-badge-capsule{padding:8px 16px;border-radius:20px;font-weight:500;font-size:14px;border:1px solid var(--theme-border, #d1d5db);background:#fff;color:#374151}.sixcit-status-badge-text{color:inherit}.sixcit-questions-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.sixcit-field-group{margin-bottom:0}.sixcit-questions-row+.sixcit-instruction,.sixcit-instruction+.sixcit-questions-row,.sixcit-questions-row+.sixcit-questions-row,.sixcit-questions-row+.sixcit-outcome-summary{margin-top:4px}.sixcit-label{display:block;font-size:14px;font-weight:500;color:#374151;margin-bottom:6px}.sixcit-label .required{color:#ef4444}.sixcit-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;background:#fff}.sixcit-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.sixcit-instruction{padding:12px 16px;background:#fefce8;border:1px solid #fef08a;border-radius:8px;margin-bottom:0;font-size:14px;color:#713f12}.sixcit-outcome-summary{margin-top:4px;padding:12px 16px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;font-size:14px;color:#166534}.assessment-physical-fields-container{display:flex;flex-direction:column;gap:16px}.assessment-physical-fields-container .field-row{display:grid;gap:16px}.assessment-physical-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.assessment-physical-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:4px}.assessment-physical-fields-container .field-label .required{color:#ef4444}.assessment-physical-fields-container .form-input,.assessment-physical-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;background-color:#fff}.assessment-physical-fields-container .form-input:focus,.assessment-physical-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.assessment-physical-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s,box-shadow .2s}.assessment-physical-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.apf-form{gap:20px;max-width:720px}.apf-section{padding:14px 16px;background:#fafafa;border:1px solid #e5e7eb;border-radius:8px}.apf-section-title{margin:0 0 12px;font-size:14px;font-weight:600;color:#374151;border-bottom:1px solid #e5e7eb;padding-bottom:6px}.apf-subsection{margin-bottom:14px}.apf-subsection:last-child{margin-bottom:0}.apf-label{font-size:13px;font-weight:500;color:#374151;margin-bottom:6px;display:block}.apf-inline-label{font-size:13px;font-weight:500;color:#374151;margin-right:8px}.apf-check-group{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin-bottom:8px}.apf-check-group:last-child{margin-bottom:0}.apf-check{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#4b5563;cursor:pointer;white-space:nowrap}.apf-check input[type=checkbox],.apf-check input[type=radio]{margin:0;cursor:pointer}.apf-check input:disabled{cursor:not-allowed}.apf-check input:disabled+span{opacity:.7}.apf-row2{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;align-items:end}.apf-field{margin-bottom:10px}.apf-field:last-child{margin-bottom:0}.apf-input{width:100%;padding:8px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;background:#fff}.apf-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.apf-input-sm{max-width:100px}.apf-input-inline{max-width:120px;display:inline-block}.apf-textarea{width:100%;padding:8px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;font-family:inherit;resize:vertical;min-height:56px;margin-top:4px}.apf-textarea:focus{outline:none;border-color:#3b82f6}.apf-readonly{font-size:13px;color:#6b7280;padding:8px 10px;background:#f3f4f6;border-radius:6px;border:1px solid #e5e7eb}.apf-vitals{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:10px 16px}.apf-vital{display:flex;flex-direction:column;gap:4px}.apf-vital label{font-size:12px;color:#6b7280}.risk-assessment-choking-fields-container{display:flex;flex-direction:column;gap:12px}.notice-text .eat10-link{color:#3b82f6;text-decoration:underline;font-weight:500}.notice-text .eat10-link:hover{color:#2563eb}.badges-section{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px}.eat10-questions-section{display:flex;flex-direction:column;gap:12px}.field-group{display:flex;flex-direction:column;gap:6px}.radio-group{display:flex;flex-direction:column;gap:4px;margin-top:4px}.radio-label{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:6px;cursor:pointer;transition:background-color .2s;font-size:14px;color:#495057}.radio-label span{flex:1;line-height:1.4}@media(max-width:768px){.risk-assessment-choking-fields-container{padding:16px}.badges-section{flex-direction:column;align-items:flex-start;gap:12px}.score-badge-capsule,.status-badge-capsule{width:100%;justify-content:space-between}.field-label{font-size:14px}.radio-label{padding:8px 10px;font-size:13px}}.risk-assessment-fire-fields-container{display:flex;flex-direction:column;gap:24px}.notice-text .fire-link{color:#3b82f6;text-decoration:underline;font-weight:500}.notice-text .fire-link:hover{color:#2563eb}.risk-assessment-medication-fields-container{display:flex;flex-direction:column;gap:24px}.notice-section{text-align:center;padding:0;margin-bottom:16px}.notice-text .cqc-link{color:#3b82f6;text-decoration:underline;font-weight:500}.notice-text .cqc-link:hover{color:#2563eb}.risk-assessment-abuse-fields-container{display:flex;flex-direction:column;gap:24px}.notice-text .nice-link,.notice-text .cqc-link{color:#3b82f6;text-decoration:underline;font-weight:500}.notice-text .nice-link:hover,.notice-text .cqc-link:hover{color:#2563eb}.risk-assessment-environment-wellbeing-fields-container{display:flex;flex-direction:column;gap:24px}.kings-fund-link{color:#3b82f6;text-decoration:underline;font-weight:500}.kings-fund-link:hover{color:#2563eb}.assessment-psychological-fields-container{display:flex;flex-direction:column;gap:16px}.assessment-psychological-fields-container .field-row{display:grid;gap:16px}.assessment-psychological-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.assessment-psychological-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:4px}.assessment-psychological-fields-container .field-label .required{color:#ef4444}.assessment-psychological-fields-container .form-input,.assessment-psychological-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;background-color:#fff}.assessment-psychological-fields-container .form-input:focus,.assessment-psychological-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.assessment-psychological-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s,box-shadow .2s}.assessment-psychological-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.assessment-psychological-gds{display:flex;flex-direction:column;gap:24px}.gds-notice-section{text-align:center;padding:0;margin-bottom:0}.gds-notice-text{margin:0;font-size:13px;color:#6b7280;line-height:1.5;font-style:italic}.gds-notice-text .gds-link{color:#3b82f6;text-decoration:underline;font-weight:500}.gds-notice-text .gds-link:hover{color:#2563eb}.gds-badges-section{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:0}.gds-score-badge-capsule{padding:8px 16px;background:var(--theme-button, #667eea);color:#fff;border-radius:20px;font-weight:500;font-size:14px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;border:none}.gds-score-badge-value{color:#fff}.gds-status-badge-capsule{padding:8px 16px;background:#f3f4f6;color:#374151;border-radius:20px;font-weight:500;font-size:14px;border:1px solid #e5e7eb}.gds-status-badge-text{color:#374151}.gds-questions-list{display:flex;flex-direction:column;gap:16px}.gds-question-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #f3f4f6}.gds-question-row:last-child{border-bottom:none}.gds-question-label{flex:1 1 280px;font-size:14px;color:#374151;font-weight:500}.gds-yesno{display:flex;gap:16px;flex-shrink:0}.gds-radio-label{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:#374151;cursor:pointer}.gds-radio-label input{cursor:pointer}.allergy-monitoring-fields-container{width:100%}.allergy-monitoring-fields-container .form-section{margin-bottom:24px}.allergy-monitoring-fields-container .section-title{font-size:18px;font-weight:600;color:#1f2937;margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid #e5e7eb}.allergy-monitoring-fields-container .form-row{display:flex;gap:16px;margin-bottom:16px}.allergy-monitoring-fields-container .form-group{flex:1}.allergy-monitoring-fields-container .form-group.full-width{flex:1 1 100%}.allergy-monitoring-fields-container .field-label{display:block;font-size:14px;font-weight:500;color:#374151;margin-bottom:6px}.allergy-monitoring-fields-container .required{color:#dc2626}.allergy-monitoring-fields-container .form-select,.allergy-monitoring-fields-container .form-input{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s}.allergy-monitoring-fields-container .form-select:focus,.allergy-monitoring-fields-container .form-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.allergy-monitoring-fields-container .form-select:disabled,.allergy-monitoring-fields-container .form-input:disabled{background-color:#f3f4f6;cursor:not-allowed;color:#6b7280}.allergy-monitoring-fields-container .form-checkbox{width:18px;height:18px;cursor:pointer}.allergy-monitoring-fields-container .form-checkbox:disabled{cursor:not-allowed;opacity:.6}.allergy-monitoring-fields-container .field-help{font-size:12px;color:#6b7280;margin-top:4px;display:block}.catheter-profile-type-selector{margin-bottom:24px}.profile-type-options{display:flex;gap:16px;margin-top:8px}.profile-type-button{flex:1;padding:20px;border:2px solid #e0e0e0;border-radius:12px;background:#fff;cursor:pointer;transition:all .2s;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}.profile-type-button:hover:not(:disabled){border-color:#2196f3;background:#f5f5f5;transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.profile-type-button.active{border-color:#2196f3;background:#e3f2fd;box-shadow:0 2px 8px #2196f333}.profile-type-button:disabled{opacity:.6;cursor:not-allowed}.profile-type-icon{font-size:32px;margin-bottom:4px}.profile-type-label{font-size:16px;font-weight:600;color:#2c3e50}.profile-type-description{font-size:12px;color:#7f8c8d;margin-top:4px}.field-help-text{margin-top:8px;font-size:12px;color:#7f8c8d;font-style:italic}.catheter-profile-fields-container{margin-bottom:24px}.form-textarea{resize:vertical;min-height:80px}.infection-risk-flag{padding:12px;background:#fff3cd;border:1px solid #ffc107;border-radius:6px;display:flex;align-items:center;gap:8px}.flag-icon{font-size:20px}.flag-text{font-weight:600;color:#856404}.catheter-record-fields-container{margin-bottom:24px}.form-section{background:#f9f9f9;padding:20px;border-radius:8px;border:1px solid #e0e0e0}.section-title{font-size:18px;font-weight:600;color:#2c3e50;margin-bottom:20px;padding-bottom:10px;border-bottom:2px solid #e0e0e0}.form-row{display:flex;gap:16px;margin-bottom:16px}.form-group{flex:1}.form-group.full-width{flex:1 1 100%}.field-label{display:block;font-size:14px;font-weight:500;color:#2c3e50;margin-bottom:6px}.required{color:#e74c3c}.form-input,.form-select,.form-textarea{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .2s}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:#2196f3;box-shadow:0 0 0 3px #2196f31a}.form-input:disabled,.form-select:disabled,.form-textarea:disabled{background:#f5f5f5;cursor:not-allowed;opacity:.7}.form-textarea{resize:vertical;min-height:60px}.field-help-text{margin-top:4px;font-size:12px;color:#7f8c8d;font-style:italic}.assessment-social-fields-container{display:flex;flex-direction:column;gap:16px}.assessment-social-fields-container .field-row{display:grid;gap:16px}.assessment-social-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.assessment-social-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:4px}.assessment-social-fields-container .field-label .required{color:#ef4444}.assessment-social-fields-container .form-input,.assessment-social-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;background-color:#fff}.assessment-social-fields-container .form-input:focus,.assessment-social-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.assessment-social-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s,box-shadow .2s}.assessment-social-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.risk-assessment-self-harm-fields-container{display:flex;flex-direction:column;gap:24px}.cssrs-link{color:#3b82f6;text-decoration:underline;font-weight:500}.cssrs-link:hover{color:#2563eb}.badges-section{display:flex;justify-content:flex-end;align-items:center;gap:16px;margin-bottom:24px}.logic-note{margin:8px 0 0;padding:10px;background-color:#fff3cd;border-left:3px solid #ffc107;border-radius:4px;font-size:13px;color:#856404;line-height:1.5}.logic-note strong{font-weight:600}.question-example{margin:4px 0 8px;padding:8px 12px;background-color:#f8f9fa;border-left:3px solid #6c757d;border-radius:4px;font-size:13px;color:#495057;font-style:italic;line-height:1.5}.radio-label{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:6px;cursor:pointer;transition:background-color .2s;font-size:14px;color:#495057}.radio-label input[type=radio]{width:18px;height:18px;cursor:pointer;margin:0;flex-shrink:0}@media(max-width:768px){.badges-section{flex-direction:column;align-items:flex-start;gap:12px}.status-badge-capsule{width:100%;justify-content:space-between}.field-label{font-size:14px}.radio-label{padding:8px 10px;font-size:13px}.notice-text{font-size:13px}}.risk-assessment-environmental-fields-container{display:flex;flex-direction:column;gap:24px}.risk-assessment-manual-handling-fields-container{display:flex;flex-direction:column;gap:24px}.notice-section{margin-bottom:16px}.notice-text{margin:0;font-size:13px;color:#6b7280;line-height:1.5;font-style:italic}.hse-link{color:#3b82f6;text-decoration:underline;font-weight:500}.hse-link:hover{color:#2563eb}.badges-section{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.score-badge-capsule{padding:8px 16px;background:var(--theme-button, #667eea);color:#fff;border-radius:20px;font-weight:500;font-size:14px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;border:none}.score-badge-value{color:#fff}.status-badge-capsule{padding:8px 16px;border-radius:20px;font-weight:500;font-size:14px;border:1px solid var(--theme-border, #d1d5db);background:#fff;color:#374151}.status-badge-capsule.status-not-assessed{background:#fff;color:#374151;border:1px solid var(--theme-border, #d1d5db)}.status-badge-text{color:inherit}.questions-section{display:flex;flex-direction:column;gap:20px}.field-group{display:flex;flex-direction:column;gap:12px}.field-label{font-size:15px;font-weight:500;color:#212529;line-height:1.5}.field-label .required{color:#dc3545;margin-left:4px}.radio-group{display:flex;flex-direction:column;gap:8px;margin-top:8px}.radio-label{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:6px;cursor:pointer;transition:background-color .2s;font-size:14px;color:#495057}.radio-label:hover{background-color:#f8f9fa}.radio-label input[type=radio]{width:18px;height:18px;cursor:pointer;margin:2px 0 0;flex-shrink:0}.radio-label span{flex:1;line-height:1.5}@media(max-width:768px){.badges-section{flex-direction:column;align-items:flex-start;gap:12px}.score-badge-capsule,.status-badge-capsule{width:100%;justify-content:space-between}.field-label{font-size:14px}.radio-label{padding:8px 10px;font-size:13px}}.assessment-functional-fields-container{display:flex;flex-direction:column;gap:16px}.assessment-functional-fields-container .field-row{display:grid;gap:16px}.assessment-functional-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.assessment-functional-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:4px}.assessment-functional-fields-container .field-label .required{color:#ef4444}.assessment-functional-fields-container .form-input,.assessment-functional-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;background-color:#fff}.assessment-functional-fields-container .form-input:focus,.assessment-functional-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.assessment-functional-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s,box-shadow .2s}.assessment-functional-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.assessment-functional-barthel{display:flex;flex-direction:column;gap:24px}.barthel-notice-section{text-align:center;padding:0;margin-bottom:0}.barthel-notice-text{margin:0;font-size:13px;color:#6b7280;line-height:1.5;font-style:italic}.barthel-notice-text .barthel-link{color:#3b82f6;text-decoration:underline;font-weight:500}.barthel-notice-text .barthel-link:hover{color:#2563eb}.barthel-badges-section{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:0}.barthel-score-badge-capsule{padding:8px 16px;background:var(--theme-button, #667eea);color:#fff;border-radius:20px;font-weight:500;font-size:14px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;border:none}.barthel-score-badge-value{color:#fff}.barthel-status-badge-capsule{padding:8px 16px;background:#f3f4f6;color:#374151;border-radius:20px;font-weight:500;font-size:14px;border:1px solid #e5e7eb}.barthel-status-badge-text{color:#374151}.barthel-form-title{margin:0;font-size:16px;font-weight:600;color:#111827}.barthel-questions-list{display:flex;flex-direction:column;gap:12px}.barthel-question-row{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:16px;padding:10px 0;border-bottom:1px solid #f3f4f6}.barthel-question-row:last-child{border-bottom:none}.barthel-question-label{font-size:14px;color:#374151;font-weight:500}.barthel-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;background-color:#fff}.barthel-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.assessment-care-plan-review-fields-container{display:flex;flex-direction:column;gap:16px}.assessment-care-plan-review-fields-container .field-row{display:grid;gap:16px}.assessment-care-plan-review-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.assessment-care-plan-review-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:4px}.assessment-care-plan-review-fields-container .field-label .required{color:#ef4444}.assessment-care-plan-review-fields-container .form-input,.assessment-care-plan-review-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;background-color:#fff}.assessment-care-plan-review-fields-container .form-input:focus,.assessment-care-plan-review-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.assessment-care-plan-review-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s,box-shadow .2s}.assessment-care-plan-review-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.care-plan-review-form{max-width:900px}.care-plan-review-section{margin-bottom:28px;padding-bottom:20px;border-bottom:1px solid #e5e7eb}.care-plan-review-section:last-of-type{border-bottom:none}.care-plan-review-section-header{margin-bottom:14px}.care-plan-review-section-title{font-size:15px;font-weight:600;color:#111827;margin:0 0 4px}.care-plan-review-section-subtitle{font-size:12px;color:#6b7280;margin:0}.care-plan-review-field-row,.care-plan-review-domain-row{margin-bottom:12px}.care-plan-review-field-group{display:flex;flex-direction:column;gap:6px}.care-plan-review-field-group.full-width{grid-column:1 / -1}.care-plan-review-field-label{font-size:13px;font-weight:500;color:#374151}.care-plan-review-radio-group{display:flex;flex-wrap:wrap;gap:12px 20px}.care-plan-review-radio-group.inline{flex-direction:row}.care-plan-review-radio-label{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:#374151;cursor:pointer}.care-plan-review-radio-label input{margin:0}.care-plan-review-checkbox-label{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:#374151;cursor:pointer;margin-right:16px;margin-bottom:8px}.care-plan-review-checkbox-group{display:flex;flex-wrap:wrap;gap:8px 20px;margin-bottom:12px}.care-plan-review-readonly{font-size:14px;color:#374151;padding:8px 0;min-height:20px}.care-plan-review-textarea,.care-plan-review-input{width:100%;max-width:600px;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit}.care-plan-review-textarea{min-height:60px;resize:vertical}.care-plan-review-subsection{margin-bottom:20px}.care-plan-review-subtitle{font-size:14px;font-weight:600;color:#374151;margin:0 0 10px}.care-plan-review-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.care-plan-review-risk-list{display:flex;flex-wrap:wrap;gap:8px 16px;margin-bottom:10px}.care-plan-review-risk-item{font-size:13px;color:#374151;padding:4px 10px;background:#f3f4f6;border-radius:6px}.care-plan-review-event-row{margin-bottom:14px}.care-plan-review-event-row .care-plan-review-field-label{display:block;margin-bottom:4px}.care-plan-review-domain-block{margin-bottom:24px;padding:14px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.care-plan-review-domain-title{font-size:14px;font-weight:600;color:#111827;margin:0 0 12px}.care-plan-review-hint{font-size:12px;color:#6b7280;margin:8px 0 0}.care-plan-review-error{color:#dc2626;font-size:13px;margin-bottom:12px}.care-plan-review-loading{color:#6b7280;font-size:14px;padding:12px 0}.creams-fields-container{display:flex;flex-direction:column;gap:16px}.creams-fields-container .field-row{display:grid;gap:16px}.creams-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.creams-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:4px}.creams-fields-container .field-label .required{color:#ef4444}.creams-fields-container .form-input,.creams-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;background-color:#fff}.creams-fields-container .form-input:focus,.creams-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.creams-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s,box-shadow .2s}.creams-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.respiratory-assessment-fields-container{display:flex;flex-direction:column;gap:16px}.respiratory-assessment-fields-container .field-row{display:grid;gap:16px}.respiratory-assessment-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.respiratory-assessment-fields-container .field-label{font-size:14px;font-weight:600;color:#374151;display:flex;align-items:center;gap:4px}.respiratory-assessment-fields-container .field-label .required{color:#ef4444;font-weight:600}.respiratory-assessment-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-family:inherit;background:#fff;color:#111827;transition:all .2s ease}.respiratory-assessment-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.respiratory-assessment-fields-container .circular-checkbox{width:18px;height:18px;cursor:pointer}.circulation-edema-check-fields-container{display:flex;flex-direction:column;gap:16px}.circulation-edema-check-fields-container .field-row{display:grid;gap:16px}.circulation-edema-check-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.circulation-edema-check-fields-container .field-label{font-size:14px;font-weight:600;color:#374151;display:flex;align-items:center;gap:4px}.circulation-edema-check-fields-container .field-label .required{color:#ef4444;font-weight:600}.circulation-edema-check-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-family:inherit;background:#fff;color:#111827;transition:all .2s ease}.circulation-edema-check-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.circulation-edema-check-fields-container .form-select:disabled{background-color:#f3f4f6;cursor:not-allowed;opacity:.6}.circulation-edema-check-fields-container .checkbox-group{display:flex;flex-direction:column;gap:8px;margin-top:4px}.circulation-edema-check-fields-container .checkbox-label{display:flex;align-items:center;gap:8px;font-size:14px;color:#374151;cursor:pointer;padding:6px 8px;border-radius:4px;transition:background-color .2s}.circulation-edema-check-fields-container .checkbox-label:hover{background-color:#f3f4f6}.circulation-edema-check-fields-container .checkbox-label:has(input:disabled){cursor:not-allowed;opacity:.6}.circulation-edema-check-fields-container .circular-checkbox{width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;max-width:18px!important;max-height:18px!important;cursor:pointer;accent-color:#dc2626;margin:0;border-radius:50%!important;appearance:none;-webkit-appearance:none;border:2px solid #d1d5db;background:#fff;position:relative;transition:all .2s ease;flex-shrink:0}.circulation-edema-check-fields-container .circular-checkbox:checked{background:#dc2626!important;border-color:#dc2626!important;width:18px!important;height:18px!important;border-radius:50%!important}.circulation-edema-check-fields-container .circular-checkbox:checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:6px;height:6px;border-radius:50%;background:#fff}.circulation-edema-check-fields-container .circular-checkbox:disabled{cursor:not-allowed;opacity:.6}.clothing-footwear-check-fields-container{display:flex;flex-direction:column;gap:20px}.field-row{display:grid;gap:16px}.field-group{display:flex;flex-direction:column;gap:8px}.field-label{font-size:14px;font-weight:600;color:#374151;display:flex;align-items:center;gap:4px}.required{color:#ef4444;font-weight:600}.form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-family:inherit;background:#fff;color:#111827;transition:all .2s ease}.form-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-select:disabled{background-color:#f5f5f5;cursor:not-allowed;opacity:.6}.documents-fields-container{display:flex;flex-direction:column;gap:16px}.documents-fields-container .field-row{display:grid;gap:16px}.documents-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.documents-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:4px}.documents-fields-container .field-label .required{color:#ef4444}.documents-fields-container .form-input,.documents-fields-container .form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;background-color:#fff}.documents-fields-container .form-input:focus,.documents-fields-container .form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.documents-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s,box-shadow .2s}.documents-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.resident-finance-fields-container{display:flex;flex-direction:column;gap:16px}.resident-finance-fields-container .field-row{display:grid;gap:16px}.resident-finance-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.resident-finance-fields-container .field-label{font-size:14px;font-weight:500;color:#374151;margin-bottom:4px}.resident-finance-fields-container .field-label .required{color:#ef4444;margin-left:4px}.resident-finance-fields-container .form-input,.resident-finance-fields-container .form-select,.resident-finance-fields-container .form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s}.resident-finance-fields-container .form-input:focus,.resident-finance-fields-container .form-select:focus,.resident-finance-fields-container .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.resident-finance-fields-container .form-textarea{resize:vertical;min-height:80px}.positioning-repositioning-fields-container{display:flex;flex-direction:column;gap:20px}.positioning-repositioning-fields-container .field-row{display:grid;gap:16px}.positioning-repositioning-fields-container .field-group{display:flex;flex-direction:column;gap:8px}.positioning-repositioning-fields-container .field-label{font-size:14px;font-weight:600;color:#374151;display:flex;align-items:center;gap:4px}.positioning-repositioning-fields-container .required{color:#ef4444;font-weight:600}.positioning-repositioning-fields-container .form-select,.positioning-repositioning-fields-container .form-input{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-family:inherit;background:#fff;color:#111827;transition:all .2s ease}.positioning-repositioning-fields-container .form-select:focus,.positioning-repositioning-fields-container .form-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.positioning-repositioning-fields-container .input-with-unit{position:relative;display:flex;align-items:center}.positioning-repositioning-fields-container .input-with-unit .form-input{padding-right:60px}.positioning-repositioning-fields-container .input-unit{position:absolute;right:12px;font-size:14px;color:#6b7280;pointer-events:none}.positioning-repositioning-fields-container .checkbox-group{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto;padding:8px;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.positioning-repositioning-fields-container .checkbox-label{display:flex;align-items:center;gap:8px;font-size:14px;color:#374151;cursor:pointer}.positioning-repositioning-fields-container .checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer}.positioning-repositioning-fields-container .checkbox-label input[type=checkbox]:disabled{cursor:not-allowed}.nausea-monitoring-fields-container{display:flex;flex-direction:column;gap:20px}.nausea-monitoring-fields-container .field-row{display:grid;gap:16px}.nausea-monitoring-fields-container .field-group{display:flex;flex-direction:column;gap:8px;position:relative}.nausea-monitoring-fields-container .field-label{font-size:14px;font-weight:600;color:#374151;display:flex;align-items:center;gap:4px}.nausea-monitoring-fields-container .required{color:#ef4444;font-weight:600}.nausea-monitoring-fields-container .form-select,.nausea-monitoring-fields-container .form-input{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-family:inherit;background:#fff;color:#111827;transition:all .2s ease}.nausea-monitoring-fields-container .form-select:focus,.nausea-monitoring-fields-container .form-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.nausea-monitoring-fields-container .input-with-unit{position:relative;display:flex;align-items:center}.nausea-monitoring-fields-container .input-with-unit .form-input{padding-right:80px}.nausea-monitoring-fields-container .input-unit{position:absolute;right:12px;font-size:14px;color:#6b7280;pointer-events:none}.room-environment-fields-container{display:flex;flex-direction:column;gap:20px}.room-environment-fields-container .field-row{display:grid;gap:16px}.room-environment-fields-container .field-group{display:flex;flex-direction:column;gap:8px;position:relative}.room-environment-fields-container .field-label{font-size:14px;font-weight:600;color:#374151;display:flex;align-items:center;gap:4px}.room-environment-fields-container .required{color:#ef4444;font-weight:600}.room-environment-fields-container .form-select,.room-environment-fields-container .form-input{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-family:inherit;background:#fff;color:#111827;transition:all .2s ease}.room-environment-fields-container .form-select:focus,.room-environment-fields-container .form-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.room-environment-fields-container .input-with-unit{position:relative;display:flex;align-items:center}.room-environment-fields-container .input-with-unit .form-input{padding-right:80px}.room-environment-fields-container .input-unit{position:absolute;right:12px;font-size:14px;color:#6b7280;pointer-events:none}.physio-exercise-compliance-fields-container{display:flex;flex-direction:column;gap:20px}.physio-exercise-compliance-fields-container .field-row{display:grid;gap:16px}.physio-exercise-compliance-fields-container .field-group{display:flex;flex-direction:column;gap:8px;position:relative}.physio-exercise-compliance-fields-container .field-label{font-size:14px;font-weight:600;color:#374151;display:flex;align-items:center;gap:4px}.physio-exercise-compliance-fields-container .required{color:#ef4444;font-weight:600}.physio-exercise-compliance-fields-container .form-select,.physio-exercise-compliance-fields-container .form-input{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-family:inherit;background:#fff;color:#111827;transition:all .2s ease}.physio-exercise-compliance-fields-container .form-select:focus,.physio-exercise-compliance-fields-container .form-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.physio-exercise-compliance-fields-container .input-with-unit{position:relative;display:flex;align-items:center}.physio-exercise-compliance-fields-container .input-with-unit .form-input{padding-right:80px}.physio-exercise-compliance-fields-container .input-unit{position:absolute;right:12px;font-size:14px;color:#6b7280;pointer-events:none}.transfer-safety-check-fields-container{display:flex;flex-direction:column;gap:20px}.transfer-safety-check-fields-container .field-row{display:grid;gap:16px}.transfer-safety-check-fields-container .field-group{display:flex;flex-direction:column;gap:8px;position:relative}.transfer-safety-check-fields-container .field-label{font-size:14px;font-weight:600;color:#374151;display:flex;align-items:center;gap:4px}.transfer-safety-check-fields-container .required{color:#ef4444;font-weight:600}.transfer-safety-check-fields-container .form-select,.transfer-safety-check-fields-container .form-input{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-family:inherit;background:#fff;color:#111827;transition:all .2s ease}.transfer-safety-check-fields-container .form-select:focus,.transfer-safety-check-fields-container .form-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.transfer-safety-check-fields-container .input-with-unit{position:relative;display:flex;align-items:center}.transfer-safety-check-fields-container .input-with-unit .form-input{padding-right:80px}.transfer-safety-check-fields-container .input-unit{position:absolute;right:12px;font-size:14px;color:#6b7280;pointer-events:none}.dropdown-checkbox-container{position:relative;width:100%}.dropdown-checkbox-button{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-family:inherit;background:#fff;color:#111827;text-align:left;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .2s ease}.dropdown-checkbox-button:hover:not(:disabled){border-color:#667eea}.dropdown-checkbox-button:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.dropdown-arrow{font-size:10px;color:#6b7280;margin-left:8px}.dropdown-checkbox-menu{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;z-index:1000;max-height:200px;overflow-y:auto;padding:4px}.dropdown-checkbox-option{display:flex;align-items:center;gap:8px;padding:8px 12px;font-size:14px;color:#374151;cursor:pointer;border-radius:4px;transition:background-color .15s ease}.dropdown-checkbox-option:hover{background-color:#f3f4f6}.dropdown-checkbox-option input[type=checkbox]{width:16px;height:16px;cursor:pointer;margin:0}.dropdown-checkbox-option span{flex:1}.quick-shift-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1040}.quick-shift-modal{width:450px;max-width:calc(100vw - 40px);max-height:calc(100vh - 40px);background:var(--color-background);border-radius:12px;box-shadow:0 20px 60px #0000004d;z-index:1050;display:flex;flex-direction:column;overflow:hidden;box-sizing:border-box;margin:0;min-height:0}.quick-shift-brand-box{border:2px solid var(--color-primary, #6366f1);border-radius:var(--radius-xl, 12px)}.quick-shift-brand-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--color-primary, #6366f1);border-radius:var(--radius-xl, 12px) var(--radius-xl, 12px) 0 0;flex-shrink:0}.quick-shift-brand-header-title{font-size:var(--font-size-base, 1rem);font-weight:600;color:var(--color-secondary, #fff)}.quick-shift-brand-close{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid rgba(255,255,255,.3);border-radius:50%;color:var(--color-secondary, #fff);cursor:pointer;transition:all .2s ease;padding:0}.quick-shift-brand-close:hover{background:#ffffff26;border-color:#ffffff80}.quick-shift-header-back{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid rgba(255,255,255,.5);border-radius:50%;color:var(--color-secondary, #fff);cursor:pointer;transition:all .2s ease;padding:0;flex-shrink:0}.quick-shift-header-back:hover{background:#ffffff26;border-color:#fffc}.quick-shift-off-day-form .quick-shift-off-day-header{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:10px;margin-bottom:0;min-width:0;flex-shrink:0;width:100%;box-sizing:border-box}.quick-shift-off-day-header .quick-shift-header-back{border-color:var(--color-border);color:var(--color-text);flex-shrink:0}.quick-shift-off-day-header .quick-shift-header-back:hover{background:var(--color-background);border-color:var(--color-primary);color:var(--color-primary)}.quick-shift-off-day-title{margin:0;font-size:var(--font-size-base, 1rem);white-space:nowrap;flex-shrink:0}.quick-shift-header-spacer{width:32px;height:32px;flex-shrink:0;display:inline-block}.quick-shift-staff-block{display:flex;align-items:center;gap:12px}.quick-shift-staff-avatar{width:44px;height:44px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;color:#fff;background-size:cover;background-position:center}.quick-shift-staff-info{display:flex;flex-direction:column;gap:2px}.quick-shift-staff-info .quick-shift-staff-name{font-size:16px;font-weight:600;color:var(--color-text)}.quick-shift-role-badge{font-size:12px;font-weight:500;color:var(--color-text-light)}.quick-shift-force-assign-round input[type=checkbox]{width:20px;height:20px;border-radius:50%;appearance:none;-webkit-appearance:none;border:2px solid var(--color-border);background:var(--color-background);cursor:pointer;flex-shrink:0;position:relative;transition:border-color .2s,background .2s}.quick-shift-force-assign-round input[type=checkbox]:checked{border-color:var(--color-primary);background:var(--color-primary)}.quick-shift-force-assign-round input[type=checkbox]:checked:after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:6px;height:6px;border-radius:50%;background:#fff}.quick-shift-no-site-message{font-size:12px;color:var(--color-text-light);margin-bottom:6px}.quick-shift-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--color-border);background:var(--color-background)}.quick-shift-header-content{display:flex;flex-direction:column;gap:4px}.quick-shift-header-title{font-size:16px;font-weight:600;color:var(--color-text)}.quick-shift-header-date{font-size:14px;color:var(--color-accent);font-weight:500}.quick-shift-close{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:var(--radius-full);color:var(--color-text-light);cursor:pointer;transition:all .2s ease;padding:0}.quick-shift-close:hover{background:var(--color-background-secondary);color:var(--color-text)}.quick-shift-content{padding:20px;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:16px;min-height:0;flex:1;scrollbar-width:thin;scrollbar-color:var(--color-gray-300) var(--color-background-secondary)}.quick-shift-content::-webkit-scrollbar{width:6px}.quick-shift-content::-webkit-scrollbar-track{background:var(--color-background-secondary)}.quick-shift-content::-webkit-scrollbar-thumb{background:var(--color-gray-300);border-radius:3px}.quick-shift-content::-webkit-scrollbar-thumb:hover{background:var(--color-gray-400)}.quick-shift-field{display:flex;flex-direction:column;gap:8px}.quick-shift-field-label{font-size:13px;font-weight:500;color:var(--color-text)}.quick-shift-staff-row{display:flex;align-items:center;gap:8px}.quick-shift-staff-name{font-size:16px;font-weight:600;color:var(--color-text)}.quick-shift-role-button{padding:4px 10px;background:transparent;border:1px solid var(--color-border);border-radius:6px;font-size:12px;font-weight:500;color:var(--color-text);cursor:default;transition:all .2s ease}.quick-shift-field-input{width:100%;padding:10px 12px;border:1px solid var(--color-border);border-radius:8px;font-size:14px;background:var(--color-background);color:var(--color-text);transition:all .2s ease;box-sizing:border-box}.quick-shift-field-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #f444391a}.quick-shift-field-input::placeholder{color:var(--color-text-light)}.quick-shift-select-wrapper{position:relative;display:flex;align-items:center;gap:8px}.quick-shift-field-select{flex:1;width:100%;padding:10px 40px 10px 12px;border:1px solid var(--color-border);border-radius:8px;font-size:14px;background:var(--color-background);color:var(--color-text);transition:all .2s ease;box-sizing:border-box;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 6L11 1' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:12px 8px;cursor:pointer}.quick-shift-field-select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #f444391a}.quick-shift-field-select::-ms-expand{display:none}.quick-shift-favorite-toggle{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--color-border);border-radius:6px;cursor:pointer;color:var(--color-text-light);transition:all .2s ease;padding:0;flex-shrink:0}.quick-shift-favorite-toggle:hover{background:var(--color-background-secondary);border-color:var(--color-accent);color:var(--color-accent);transform:scale(1.1)}.quick-shift-favorite-toggle svg{width:16px;height:16px}.quick-shift-sites-section{display:flex;gap:8px;margin-top:4px;overflow-x:auto;overflow-y:hidden;padding-bottom:4px;scrollbar-width:none;-ms-overflow-style:none}.quick-shift-sites-section::-webkit-scrollbar{display:none}.quick-shift-sites-section .quick-shift-site-button{flex:0 0 auto}.quick-shift-site-button{padding:6px 16px;border:2px solid;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;background:transparent}.quick-shift-site-capsule{border-radius:20px}.quick-shift-site-button:hover{transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.quick-shift-site-button.selected{font-weight:600}.quick-shift-favorites-scroll{display:flex;gap:8px;margin-top:6px;overflow-x:auto;overflow-y:hidden;padding-bottom:6px;scrollbar-width:none;-ms-overflow-style:none}.quick-shift-favorites-scroll::-webkit-scrollbar{display:none}.quick-shift-favorites-scroll .quick-shift-favorite-box{flex:0 0 auto;min-width:100px}.quick-shift-favorites-grid{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}.quick-shift-select-row{display:flex;align-items:center;gap:8px;margin-top:4px}.quick-shift-select-row .quick-shift-custom-select-wrap{flex:1;min-width:0}.quick-shift-custom-select-wrap{position:relative;display:flex;align-items:center;gap:8px}.quick-shift-custom-select-btn{flex:1;display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border:1px solid var(--color-border);border-radius:8px;font-size:14px;background:var(--color-background);color:var(--color-text);cursor:pointer;text-align:left;transition:all .2s ease}.quick-shift-custom-select-btn:hover{border-color:var(--color-primary)}.quick-shift-custom-select-chevron{flex-shrink:0;margin-left:8px;opacity:.7}.quick-shift-custom-select-backdrop{position:fixed;inset:0;z-index:1100}.quick-shift-custom-select-dropdown{position:fixed;margin-top:4px;background:var(--color-background);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 8px 24px #00000026;max-height:220px;overflow-y:auto;z-index:1101}.quick-shift-custom-select-option{display:flex;align-items:center;gap:8px;padding:10px 12px;font-size:14px;color:var(--color-text);cursor:pointer;transition:background .15s}.quick-shift-custom-select-option:hover{background:var(--color-background-secondary)}.quick-shift-custom-select-option.selected{background:#6366f11a;color:var(--color-primary)}.quick-shift-resident-dropdown{max-height:220px;overflow-y:auto}.quick-shift-resident-option{display:flex;align-items:center;gap:8px}.quick-shift-resident-option svg{flex-shrink:0;width:14px;height:14px}.quick-shift-option-heart{flex-shrink:0;color:#ec4899}.quick-shift-custom-select-option-create{border-top:1px solid var(--color-border);font-weight:500}.quick-shift-capsules{display:flex;flex-wrap:wrap;gap:8px;padding-top:16px;border-top:1px solid var(--color-border);margin-top:8px}.quick-shift-capsule{padding:8px 16px;border-radius:20px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;border:1px solid rgba(0,0,0,.1)}.quick-shift-capsule-off{background:transparent;color:var(--color-text);border-color:var(--color-border)}.quick-shift-capsule-off:hover{background:var(--color-background-secondary);border-color:var(--color-primary)}.quick-shift-capsule-more{background:transparent;color:var(--color-text);border-color:var(--color-border)}.quick-shift-capsule-more:hover{background:var(--color-background-secondary);border-color:var(--color-primary)}.quick-shift-capsule-add{background:var(--color-primary, #6366f1);color:#fff;border-color:var(--color-primary)}.quick-shift-capsule-add:hover:not(:disabled){filter:brightness(1.1);box-shadow:0 2px 8px #6366f159}.quick-shift-capsule-add:disabled{opacity:.5;cursor:not-allowed}.quick-shift-favorite-box{position:relative;padding:10px 14px;background:var(--color-background-secondary);border:1px solid var(--color-border);border-radius:8px;min-width:100px;cursor:pointer;transition:all .2s ease}.quick-shift-favorite-box:hover{border-color:var(--color-border);background:var(--color-background-secondary)}.quick-shift-favorite-name{font-size:12px;font-weight:600;color:var(--color-text);margin-bottom:4px}.quick-shift-favorite-time{font-size:10px;color:var(--color-text-light)}.quick-shift-favorite-heart{position:absolute;top:6px;right:6px;width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;cursor:pointer;color:var(--color-text-light);transition:all .2s ease;padding:0}.quick-shift-favorite-heart:hover{transform:scale(1.2)}.quick-shift-favorite-heart.active{color:var(--color-accent)}.quick-shift-no-favorites{font-size:12px;color:var(--color-text-light);font-style:italic;padding:8px 0}.quick-shift-add-type-form{margin-top:8px;padding:12px;background:var(--color-background-secondary);border-radius:8px;border:1px solid var(--color-border)}.quick-shift-add-type-form .quick-shift-field-input{margin-bottom:8px;width:100%}.quick-shift-time-row{display:flex;align-items:center;gap:8px;margin-bottom:8px;flex-wrap:wrap}.quick-shift-time-row input{flex:0 0 auto}.quick-shift-time-section{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:12px 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.quick-shift-time-group{display:flex;flex-direction:column;gap:6px}.quick-shift-time-group label{font-size:12px;font-weight:500;color:var(--color-text)}.quick-shift-time-group input{padding:8px 10px;border:1px solid var(--color-border);border-radius:6px;font-size:14px;background:var(--color-background);color:var(--color-text);transition:all .2s ease}.quick-shift-time-group input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #f444391a}.quick-shift-actions{display:flex;gap:8px;padding-top:16px;border-top:1px solid var(--color-border);margin-top:8px;flex-wrap:wrap}.quick-shift-btn-more,.quick-shift-btn-create{flex:1;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;color:#fff}.quick-shift-btn-more{background:var(--color-accent)}.quick-shift-btn-more:hover{background:var(--color-accent-dark);transform:translateY(-1px);box-shadow:0 4px 12px #f444394d}.quick-shift-btn-create{background:var(--color-accent);opacity:.9}.quick-shift-btn-create:hover{background:var(--color-accent-dark);opacity:1;transform:translateY(-1px);box-shadow:0 4px 12px #f444394d}.quick-shift-btn-create:disabled{opacity:.5;cursor:not-allowed;transform:none}.quick-shift-off-day-form{padding:16px;background:var(--color-background-secondary);border-radius:8px;border:1px solid var(--color-border);margin:8px 0;min-width:200px}.quick-shift-holiday-capsules{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.quick-shift-holiday-capsules-wrap{margin-top:4px}.quick-shift-off-day-dates{margin-top:20px}.quick-shift-holiday-capsule{padding:10px 14px;border-radius:9999px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;border:1px solid var(--color-border);background:var(--color-background);color:var(--color-text);text-align:center}.quick-shift-holiday-capsule:hover{border-color:var(--color-primary);background:#6366f10f;color:var(--color-primary)}.quick-shift-holiday-capsule.selected{background:var(--color-primary, #6366f1);border-color:var(--color-primary, #6366f1);color:#fff}.quick-shift-off-day-form .quick-shift-field-input:disabled{opacity:.6;cursor:not-allowed;background:var(--color-background-secondary)}.quick-shift-off-day-actions{display:flex;flex-wrap:wrap;gap:8px;padding-top:16px;border-top:1px solid var(--color-border);margin-top:12px}.quick-shift-capsule-cancel{flex:1;min-width:100px;background:var(--color-background);border:1px solid var(--color-border);color:var(--color-text)}.quick-shift-capsule-cancel:hover{background:var(--color-background-secondary);border-color:var(--color-text-light)}.quick-shift-capsule-assign-off{flex:1;min-width:100px;background:var(--color-primary, #6366f1);border-color:var(--color-primary, #6366f1);color:#fff}.quick-shift-capsule-assign-off:hover:not(:disabled){filter:brightness(1.08);box-shadow:0 2px 8px #6366f159}.quick-shift-capsule-assign-off:disabled{opacity:.5;cursor:not-allowed}.quick-shift-permission-note{padding:12px;background:#fffacd;border:1px solid #ffd700;border-radius:6px;font-size:12px;color:#856404;margin:12px 0}.quick-shift-btn-off-day{flex:1;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;background:#ff9800;color:#fff}.quick-shift-btn-off-day:hover{background:#f57c00;transform:translateY(-1px);box-shadow:0 4px 12px #ff98004d}.quick-shift-btn-cancel{flex:1;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;border:1px solid var(--color-border);background:transparent;color:var(--color-text)}.quick-shift-btn-cancel:hover{background:var(--color-background-secondary);border-color:var(--color-accent)}.quick-shift-more-options{padding:16px;background:var(--color-background-secondary);border-radius:8px;border:1px solid var(--color-border);margin:8px 0;display:flex;flex-direction:column;gap:16px}.quick-shift-residents-list{max-height:200px;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding:8px;background:var(--color-background);border-radius:6px;border:1px solid var(--color-border)}.quick-shift-resident-checkbox{display:flex;align-items:center;gap:8px;cursor:pointer;padding:6px;border-radius:4px;transition:background .2s ease}.quick-shift-resident-checkbox:hover{background:var(--color-background-secondary)}.quick-shift-resident-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer}.quick-shift-resident-checkbox span{font-size:13px;color:var(--color-text)}.quick-shift-no-residents{font-size:12px;color:var(--color-text-light);font-style:italic;padding:8px;text-align:center}.quick-shift-sleep-in-section{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.quick-shift-favorite-box.selected{border:2px solid #000;background:var(--color-background-secondary)}.quick-shift-no-site-note{padding:12px;background:#fff3cd;border:1px solid #ffc107;border-radius:6px;display:flex;flex-direction:column;gap:12px}.quick-shift-no-site-message{font-size:13px;font-weight:500;color:#856404}.quick-shift-force-assign-checkbox{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:13px;color:var(--color-text)}.quick-shift-force-assign-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer}.quick-shift-force-assign-checkbox span{font-weight:500}.quick-shift-breaches{margin:16px 0;padding:16px;background:#fef3c7;border:1px solid #fcd34d;border-radius:8px}.quick-shift-breaches--warning{background:#f0f9ff;border-color:#7dd3fc}.quick-shift-breaches-header{display:flex;align-items:center;gap:8px;font-weight:600;color:#92400e;margin-bottom:12px}.quick-shift-breaches--warning .quick-shift-breaches-header{color:#0369a1}.quick-shift-breaches-list{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px}.quick-shift-breach-item{font-size:13px;color:#78350f}.quick-shift-breaches--warning .quick-shift-breach-item{color:#0c4a6e}.quick-shift-breach-item strong{margin-right:4px}.rota-page-container{padding:var(--spacing-md);height:100%;width:100%;display:flex;flex-direction:column;background:var(--color-background);box-sizing:border-box;overflow:hidden;position:relative}.rota-main-container{background:var(--color-background);border:2px solid var(--color-primary);border-radius:var(--radius-xl);padding:0;height:100%;width:100%;flex:1;display:flex;flex-direction:column;box-shadow:var(--shadow-sm);overflow:hidden;box-sizing:border-box}.rota-main-container--draft-mode{border-color:#38bdf8}.rota-header-section.rota-header-section--draft-mode{background:#38bdf8!important;border-bottom-color:#00000014}.rota-header-section--draft-mode .rota-header-title,.rota-header-section--draft-mode .rota-week-display,.rota-header-section--draft-mode .rota-nav-btn,.rota-header-section--draft-mode .rota-calendar-icon-btn,.rota-header-section--draft-mode .rota-calendar-dropdown-btn,.rota-header-section--draft-mode .rota-header-btn,.rota-header-section--draft-mode .header-minus-btn,.rota-header-section--draft-mode .rota-close-header-btn{color:#2e2e2e}.rota-header-section--draft-mode .rota-header-btn.active{background:#2e2e2e;color:#fff;border-color:#2e2e2e}.rota-header-section--draft-mode .rota-nav-btn,.rota-header-section--draft-mode .rota-calendar-icon-btn{border-color:#2e2e2e66;background:#fff9;color:#2e2e2e}.rota-header-section--draft-mode .rota-header-btn:hover{background:#2e2e2e1f;border-color:#2e2e2e80}.rota-header-section--draft-mode .rota-header-btn:not(.rota-header-btn-icon),.rota-header-section--draft-mode .rota-header-dropdown-wrap>.rota-header-btn,.rota-header-section--draft-mode .header-minus-btn,.rota-header-section--draft-mode .rota-close-header-btn{border:1px solid #2e2e2e}.rota-header-section{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);padding:12px 16px;border-bottom:1px solid rgba(224,224,224,.1);background:var(--color-primary);border-radius:var(--radius-xl) var(--radius-xl) 0 0;min-height:56px}.rota-header-section--view-mode{background:#9ca3af;border-bottom-color:#00000014}.rota-header-section--view-mode .rota-header-title,.rota-header-section--view-mode .rota-week-display,.rota-header-section--view-mode .rota-nav-btn,.rota-header-section--view-mode .rota-calendar-icon-btn,.rota-header-section--view-mode .rota-calendar-dropdown-btn,.rota-header-section--view-mode .rota-header-btn,.rota-header-section--view-mode .header-eye-btn{color:#374151}.rota-header-section--view-mode .rota-nav-btn,.rota-header-section--view-mode .rota-calendar-icon-btn{border-color:#0003;background:#ffffff80}.rota-header-left{flex:0 0 auto;display:flex;align-items:center}.rota-header-title{font-size:20px;font-weight:var(--font-weight-semibold);color:var(--color-secondary);margin:0}.rota-header-center{flex:1;display:flex;align-items:center;justify-content:center}.rota-header-right{flex:0 0 auto;display:flex;align-items:center;gap:12px}.rota-header-buttons{display:flex;align-items:center;gap:8px}.rota-header-btn{padding:8px 16px;background:transparent;color:var(--color-secondary);border:1px solid rgba(224,224,224,.2);border-radius:20px;font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.rota-header-btn:hover{background:#ffffff1a;border-color:#ffffff4d}.rota-header-btn.active{background:#fff;color:var(--color-text);border-color:#fff}.rota-header-btn-icon{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:8px 12px}.rota-header-btn-icon svg{flex-shrink:0}.rota-header-filter-caret{font-size:.65em;opacity:.9}.rota-header-dropdown-wrap{position:relative;display:inline-block}.rota-header-dropdown{position:absolute;top:100%;right:0;margin-top:4px;min-width:200px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 4px 12px #00000026;z-index:1000;padding:4px 0}.rota-header-dropdown button{display:block;width:100%;padding:8px 12px;text-align:left;border:none;background:none;cursor:pointer;font-size:.9rem;color:#374151}.rota-header-dropdown button:hover{background:#f3f4f6}.rota-close-header-btn{flex-shrink:0}.rota-cycle-template-body{flex:1;width:100%;min-height:0;display:flex;flex-direction:column;background:var(--color-background);overflow:hidden;position:relative}.rota-calendar-container{flex:1;width:100%;min-height:0;display:flex;flex-direction:column;background:var(--color-background);overflow:auto;scrollbar-width:thin;position:relative;scrollbar-color:rgba(0,0,0,.2) transparent}.rota-calendar-container::-webkit-scrollbar{width:8px}.rota-calendar-container::-webkit-scrollbar-track{background:transparent}.rota-calendar-container::-webkit-scrollbar-thumb{background-color:#0003;border-radius:4px;border:2px solid transparent;background-clip:padding-box}.rota-calendar-container::-webkit-scrollbar-thumb:hover{background-color:#0000004d;overflow:hidden}.rota-site-required{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 32px;text-align:center;color:var(--color-text-light);min-height:400px}.rota-site-required svg{opacity:.4;margin-bottom:16px}.rota-site-required h2{font-size:24px;font-weight:600;color:var(--color-text);margin:16px 0 8px}.rota-site-required p{font-size:14px;color:var(--color-text-light);max-width:400px}.rota-calendar-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--color-border-light);background:var(--color-background-card)}.rota-calendar-title{display:flex;align-items:center;gap:12px}.rota-calendar-title h2{font-size:20px;font-weight:600;color:var(--color-text);margin:0}.rota-site-badge{padding:4px 12px;border-radius:12px;color:#fff;font-size:12px;font-weight:500}.rota-btn{padding:8px 16px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-background);color:var(--color-text);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:6px;white-space:nowrap}.rota-btn:hover{background:var(--color-background-secondary);border-color:var(--color-gray-300)}.rota-btn-secondary{background:var(--color-background)}.rota-btn-primary{background:var(--color-accent);color:#fff}.rota-btn-primary:hover:not(:disabled){background:var(--color-accent-dark);transform:translateY(-1px);box-shadow:0 4px 12px #f444394d}.rota-week-navigation{display:flex;align-items:center;gap:12px}.rota-calendar-icon-btn{width:32px;height:32px;border:1px solid rgba(224,224,224,.3);border-radius:6px;background:#ffffff1a;color:var(--color-secondary);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:0}.rota-calendar-icon-btn:hover{background:#fff3;border-color:#fff6}.rota-nav-btn{width:32px;height:32px;border:1px solid rgba(224,224,224,.3);border-radius:6px;background:#ffffff1a;color:var(--color-secondary);font-size:16px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.rota-nav-btn:hover{background:#fff3;border-color:#fff6}.rota-week-display{font-size:14px;font-weight:600;color:var(--color-secondary);min-width:200px;text-align:center;letter-spacing:-.2px}.rota-error{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:14px;margin:16px 20px}.rota-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px;gap:16px}.rota-calendar-content{flex:1;overflow:auto;position:relative}.rota-days-header{display:grid;grid-template-columns:200px repeat(7,1fr);background:var(--color-background-secondary);border-bottom:none;position:sticky;top:0;z-index:20;box-shadow:0 2px 4px #0000000d;transition:top .3s ease;height:36px;min-height:36px;max-height:36px}.rota-days-header-shifted{top:80px}.rota-staff-column-header{padding:6px 16px;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-light);border-right:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;position:sticky;left:0;z-index:22;background:var(--color-background-secondary);box-shadow:2px 0 4px #0000000d;height:100%}.rota-days-header-shifted .rota-staff-column-header{top:80px}.rota-day-header{padding:6px 8px;text-align:center;border-right:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;gap:4px;background:var(--color-background-secondary);height:100%}.rota-day-header.today{background:transparent;color:var(--color-text);position:relative}.rota-day-header.today:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:calc(100% - 8px);height:calc(100% - 8px);background:var(--color-accent);border-radius:999px;z-index:-1}.rota-day-header.today .rota-day-name,.rota-day-header.today .rota-day-number{color:#fff;position:relative;z-index:1}.rota-hours-column-header{padding:6px 16px;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-light);border-right:1px solid var(--color-border);text-align:center;display:flex;align-items:center;justify-content:center}.rota-hours-cell{padding:12px 8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border-right:1px solid var(--color-border-light)}.rota-hours-value{font-size:14px;font-weight:600;color:var(--color-text)}.rota-favorite-shifts-row{background:#f9fafb;border-bottom:2px solid var(--color-border);border-top:1px solid var(--color-border);padding:12px 16px;min-height:80px;position:relative;z-index:1}.rota-favorite-shifts-fixed{position:sticky;top:0;z-index:21;box-shadow:0 2px 4px #0000000d}.rota-favorite-shifts-container{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-start;overflow-x:auto;min-height:60px;width:100%}.rota-add-template-box{min-width:140px;min-height:54px;border:2px dashed var(--color-border);border-radius:8px;background:transparent;color:var(--color-text);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer;transition:all .2s ease;padding:8px 12px;font-weight:600}.rota-add-template-box:hover{border-color:var(--color-accent);color:var(--color-accent);transform:translateY(-1px);box-shadow:0 2px 8px #00000014}.rota-add-template-plus{font-size:18px;line-height:1}.rota-add-template-label{font-size:11px;text-transform:uppercase;letter-spacing:.5px}.rota-favorite-shift-box{padding:6px 10px;background:var(--color-background);border:1px solid var(--color-border);border-radius:6px;cursor:grab;transition:all .2s ease;-webkit-user-select:none;user-select:none}.rota-favorite-shift-box:hover{transform:translateY(-2px);box-shadow:0 2px 8px #00000026;border-color:var(--color-accent)}.rota-favorite-shift-box:active{cursor:grabbing;transform:translateY(0)}.rota-favorite-shift-name{font-size:11px;font-weight:600;color:var(--color-text);margin-bottom:2px}.rota-favorite-shift-time{font-size:9px;color:var(--color-text-light)}.rota-no-favorite-shifts{padding:12px;font-size:12px;color:var(--color-text-light);font-style:italic;text-align:center;width:100%}.rota-day-name{font-size:11px;font-weight:600;text-transform:uppercase;color:var(--color-text-light)}.rota-day-number{font-size:14px;font-weight:700;color:var(--color-text)}.rota-staff-rows{display:flex;flex-direction:column;margin-top:0;padding-top:0}.rota-staff-row{display:grid;grid-template-columns:200px repeat(7,1fr);border-bottom:1px solid var(--color-border-light);min-height:80px}.rota-staff-row:hover{background:var(--color-background-secondary)}.rota-staff-info{padding:12px 16px;display:flex;align-items:center;gap:12px;border-right:1px solid var(--color-border);background:var(--color-background);position:sticky;left:0;z-index:10;box-shadow:2px 0 4px #0000000d}.rota-staff-profile-trigger{cursor:pointer}.rota-staff-profile-trigger:hover{opacity:.9}.rota-staff-profile-trigger:focus-visible{outline:2px solid var(--color-primary, #2563eb);outline-offset:2px}.rota-staff-avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:16px;flex-shrink:0;background-size:cover;background-position:center}.rota-staff-details{min-width:0;flex:1}.rota-staff-name{font-size:14px;font-weight:500;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:2px}.rota-staff-role{font-size:12px;color:var(--color-text-light);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:4px}.rota-staff-hours-info{display:flex;align-items:center;gap:6px;font-size:11px;margin-top:4px}.rota-hours-tooltip-wrapper{position:relative;display:inline-block}.rota-hours-tooltip-wrapper:hover .rota-tooltip{opacity:1;visibility:visible;transform:translateY(0)}.rota-hours-display{font-weight:600;font-size:11px;position:relative}.rota-hours-display.hours-exact{color:#10b981}.rota-hours-display.hours-above{color:#7c3aed}.rota-hours-display.hours-below{color:#f59e0b}.rota-hours-separator{color:var(--color-text-light);opacity:.5}.rota-contracted-hours{color:var(--color-text-light);font-size:10px;position:relative}.rota-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%) translateY(-4px);background:#000000d9;color:#fff;padding:6px 10px;border-radius:6px;font-size:11px;white-space:nowrap;opacity:0;visibility:hidden;transition:all .2s ease;pointer-events:none;z-index:1000;margin-bottom:6px;box-shadow:0 4px 12px #0003}.rota-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#000000d9}.rota-day-cell{position:relative;padding:4px;border-right:1px solid var(--color-border-light);min-height:80px;display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center}.rota-cell-not-available{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;font-size:9px;font-weight:400;color:#00000047;pointer-events:none;white-space:nowrap;z-index:0}.rota-calendar-content--view-mode .rota-shift-block,.rota-calendar-content--view-mode .rota-shift-other-site{opacity:.6;filter:grayscale(.35);background:#e5e7eb!important;border-color:#d1d5db!important;color:#6b7280!important}.rota-shift-block{padding:8px 10px;border-radius:6px;font-size:12px;cursor:pointer;transition:all .2s ease;border:1px solid rgba(0,0,0,.1);position:relative;z-index:2;width:100%;max-width:100%;align-self:center;min-height:36px;display:flex;flex-direction:column;justify-content:center}.rota-shift-block:hover{transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.rota-shift-draft{border:2px dashed rgba(255,255,255,.6)!important;opacity:.92}.rota-shift-emergency{border-color:#dc2626!important;background:#dc262626!important}.rota-shift-emergency-badge{position:absolute;top:2px;right:4px;display:inline-flex;align-items:center;justify-content:center;min-width:14px;height:14px;padding:0 3px;font-size:10px;font-weight:700;color:#fff;background:#dc2626;border-radius:50%}.rota-shift-actions{position:absolute;top:2px;right:2px;display:flex;gap:4px;z-index:10;background:#fffffff2;padding:2px;border-radius:4px;box-shadow:0 2px 4px #0003}.rota-shift-action-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:none;border-radius:3px;cursor:pointer;background:transparent;color:#333;transition:all .2s ease;padding:0;font-size:10px;font-weight:600}.rota-shift-action-btn:hover{background:#f0f0f0;transform:scale(1.1)}.rota-shift-action-delete{color:#dc2626}.rota-shift-action-delete:hover{background:#fee2e2;color:#991b1b}.rota-leave-btn-approve{color:#16a34a}.rota-leave-btn-approve:hover{background:#dcfce7;color:#15803d}.rota-leave-btn-reject{color:#dc2626}.rota-leave-btn-reject:hover{background:#fee2e2;color:#991b1b}.rota-leave-actions--preview{display:flex;gap:4px}.rota-shift-action-dup{color:#2563eb;font-size:9px;padding:0 4px;width:auto;min-width:28px}.rota-shift-action-dup:hover{background:#dbeafe;color:#1e40af}.rota-shift-action-edit{color:#059669}.rota-shift-action-edit:hover{background:#d1fae5;color:#047857}.rota-shift-action-move{color:#7c3aed}.rota-shift-action-move:hover{background:#ede9fe;color:#6d28d9}.rota-empty-cell-duplicate-mode{background:#fef3c7!important;border-color:#fbbf24!important;cursor:copy!important}.rota-empty-cell-duplicate-mode:hover{background:#fde68a!important}.rota-shift-day{background:#dbeafe;border-color:#93c5fd;color:#1e40af}.rota-shift-night{background:#1e293b;border-color:#334155;color:#fff}.rota-shift-evening{background:#fef3c7;border-color:#fcd34d;color:#92400e}.rota-shift-split{background:#e9d5ff;border-color:#c084fc;color:#6b21a8}.rota-shift-on_call{background:#fce7f3;border-color:#f9a8d4;color:#9f1239}.rota-shift-other-site{background:#f3f4f6;border-color:#d1d5db;color:#6b7280;border-style:dashed;opacity:.7}.rota-shift-time{font-weight:600;margin-bottom:2px}.rota-shift-notes{font-size:11px;opacity:.8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rota-shift-site{font-size:10px;opacity:.7;margin-top:2px}.rota-shift-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.rota-shift-tag{font-size:9px;font-weight:600;padding:2px 6px;border-radius:4px;line-height:1.2}.rota-shift-tag-unconfirmed{background:#fef3c7;color:#b45309;border:1px solid #f59e0b}.rota-shift-tag-sleepin{background:#dbeafe;color:#1d4ed8;border:1px solid #3b82f6}.rota-leave-block{padding:6px 8px;border-radius:6px;font-size:11px;font-weight:500;display:flex;align-items:center;gap:6px;border:1px solid;position:relative;z-index:1;width:100%;max-width:100%;align-self:center;justify-content:center;cursor:pointer;transition:opacity .2s ease}.rota-leave-block:hover{opacity:.9}.rota-leave-block svg{flex-shrink:0;width:16px;height:16px}.rota-leave-holiday{background:#fef3c7;border-color:#fcd34d;color:#92400e}.rota-leave-sick{background:#fee2e2;border-color:#fca5a5;color:#991b1b}.rota-leave-emergency{background:#fecaca;border-color:#f87171;color:#7f1d1d}.rota-leave-other{background:#e5e7eb;border-color:#d1d5db;color:#4b5563}.rota-leave-bank-holiday,.rota-leave-annual-leave{background:#dbeafe;border-color:#3b82f6;color:#1e40af}.rota-leave-authorised-absence,.rota-leave-unauthorised-absence{background:#fee2e2;border-color:#dc2626;color:#991b1b}.rota-leave-actions{position:absolute;top:2px;right:2px;display:flex;gap:4px;z-index:10}.rota-empty-cell{position:absolute;inset:0;z-index:1;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;border-radius:6px}.rota-empty-cell:hover{background:#0000000f}.rota-empty-cell-plus{opacity:0;font-size:24px;font-weight:300;transition:all .2s ease;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--color-primary, #6366f1);color:#fff;box-shadow:0 2px 8px #00000026}.rota-empty-cell:hover .rota-empty-cell-plus{opacity:1;transform:scale(1.1)}.rota-empty-cell-view-mode{cursor:default;background:transparent!important}.rota-empty-cell-view-mode:hover{background:transparent!important}.rota-drop-zone{position:absolute;inset:0;z-index:0;border:2px dashed transparent;border-radius:6px;transition:all .2s ease}.rota-drop-zone:hover{border-color:var(--color-primary, #6366f1);background:#6366f10f}.rota-month-view{display:flex;flex-direction:column;height:100%;overflow:hidden}.rota-month-container{display:flex;gap:16px;padding:12px;height:100%;overflow:hidden}.rota-month-calendar{flex:1;background:var(--color-background);border:1px solid var(--color-border);border-radius:8px;padding:8px;overflow:hidden;display:flex;flex-direction:column}.rota-month-header{margin-bottom:8px}.rota-month-header h3{font-size:16px;font-weight:600;color:var(--color-text);margin:0}.rota-month-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:4px}.rota-month-weekday{text-align:center;font-size:11px;font-weight:600;color:var(--color-text-light);text-transform:uppercase;padding:4px 2px}.rota-month-days{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;flex:1;min-height:0}.rota-month-day{display:flex;flex-direction:column;padding:3px;font-size:11px;color:var(--color-text);border:1px solid var(--color-border-light);border-radius:3px;transition:all .2s ease;cursor:pointer;background:var(--color-background);min-height:0;overflow:hidden}.rota-month-day.empty{visibility:hidden;border:none}.rota-month-day.today{background:var(--color-accent);color:#fff;font-weight:600;border-color:var(--color-accent)}.rota-month-day:not(.empty):not(.today):hover{background:var(--color-background-secondary)}.rota-month-day-number{font-size:11px;font-weight:600;margin-bottom:2px;align-self:flex-start;line-height:1.2}.rota-month-day-indicators{display:flex;flex-wrap:wrap;gap:2px;margin-bottom:2px;flex:1;align-items:flex-start;min-height:0}.rota-month-category-indicator{width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:7px;font-weight:600;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3);flex-shrink:0;cursor:pointer;transition:transform .2s ease}.rota-month-category-indicator:hover{transform:scale(1.1)}.rota-month-day-total{display:flex;align-items:center;gap:2px;font-size:9px;font-weight:600;margin-top:auto;padding-top:2px;border-top:1px solid rgba(0,0,0,.1);line-height:1}.rota-month-day.today .rota-month-day-total{border-top-color:#ffffff4d;color:#fff}.rota-month-day-total svg{width:8px;height:8px}.rota-month-legend{width:220px;background:var(--color-background);border:1px solid var(--color-border);border-radius:8px;padding:12px;height:fit-content;max-height:calc(100vh - 200px);overflow-y:auto}.rota-month-legend-title{font-size:14px;font-weight:600;color:var(--color-text);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--color-border-light)}.rota-month-legend-item{display:flex;align-items:center;gap:8px;padding:6px 0;cursor:default}.rota-month-legend-color{width:16px;height:16px;border-radius:50%;flex-shrink:0;border:1px solid rgba(0,0,0,.1)}.rota-month-legend-label{font-size:12px;color:var(--color-text)}.rota-month-popup-overlay{position:fixed;inset:0;z-index:1000;background:transparent}.rota-month-popup{position:fixed;z-index:1001;background:#fff;border:2px solid var(--color-border);border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:280px;max-width:400px;max-height:400px;overflow:hidden;transform:translate(-50%)}.rota-month-popup-header{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;color:#fff;border-bottom:1px solid rgba(255,255,255,.2)}.rota-month-popup-header h4{margin:0;font-size:14px;font-weight:600}.rota-month-popup-close{background:none;border:none;color:#fff;font-size:20px;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s ease}.rota-month-popup-close:hover{background:#fff3}.rota-month-popup-content{padding:12px;max-height:350px;overflow-y:auto}.rota-month-popup-empty{text-align:center;color:var(--color-text-light);font-size:12px;padding:20px}.rota-month-popup-shifts{display:flex;flex-direction:column;gap:12px}.rota-month-popup-site-group{border-bottom:1px solid var(--color-border-light);padding-bottom:8px}.rota-month-popup-site-group:last-child{border-bottom:none}.rota-month-popup-site-name{font-weight:600;font-size:13px;color:var(--color-text);margin-bottom:6px}.rota-month-popup-shift-item{font-size:12px;color:var(--color-text);padding:4px 0 4px 12px}.rota-filter-section{display:flex;align-items:center;gap:16px;padding:16px 20px;background:var(--color-background);border-bottom:1px solid var(--color-border);flex-wrap:wrap}.rota-staff-filter{display:flex;align-items:center;gap:8px}.rota-staff-name-display{font-size:16px;font-weight:600;color:var(--color-text)}.rota-role-button{padding:6px 12px;background:transparent;border:1px solid var(--color-border);border-radius:6px;font-size:12px;font-weight:500;color:var(--color-text);cursor:pointer;transition:all .2s ease}.rota-role-button:hover{background:var(--color-background-secondary);border-color:var(--color-accent)}.rota-sites-buttons{display:flex;gap:8px;flex-wrap:wrap}.rota-site-button{padding:6px 16px;border:2px solid;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;background:transparent}.rota-site-button:hover{transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.rota-site-button.selected{font-weight:600}.rota-date-display{display:flex;flex-direction:column;gap:4px;margin-left:auto}.rota-date-text{font-size:16px;font-weight:600;color:var(--color-text)}.rota-day-text{font-size:14px;color:var(--color-text-light)}.rota-favorite-shifts{padding:16px 20px;background:var(--color-background-secondary);border-bottom:1px solid var(--color-border)}.rota-favorite-shifts-header{margin-bottom:12px}.rota-favorite-shifts-header span{font-size:14px;font-weight:600;color:var(--color-text);text-transform:uppercase;letter-spacing:.5px}.rota-favorite-shifts-grid{display:flex;gap:12px;flex-wrap:wrap}.rota-favorite-shift-box{position:relative;padding:12px 16px;background:var(--color-background);border:1px solid var(--color-border);border-radius:8px;min-width:120px;cursor:pointer;transition:all .2s ease}.rota-favorite-shift-box:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a;border-color:var(--color-accent)}.rota-favorite-shift-name{font-size:13px;font-weight:600;color:var(--color-text);margin-bottom:4px}.rota-favorite-shift-time{font-size:11px;color:var(--color-text-light)}.rota-favorite-heart{position:absolute;top:8px;right:8px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;cursor:pointer;color:var(--color-text-light);transition:all .2s ease;padding:0}.rota-favorite-heart:hover{transform:scale(1.2)}.rota-favorite-heart.active{color:var(--color-accent)}.rota-no-favorites{font-size:13px;color:var(--color-text-light);font-style:italic}.rota-shift-templates-section{padding:12px 20px;background:var(--color-background);border-bottom:1px solid var(--color-border)}.rota-shift-templates-dropdown-container{max-width:300px}.rota-shift-templates-dropdown{width:100%;padding:10px 12px;border:1px solid var(--color-border);border-radius:8px;font-size:14px;background:var(--color-background);color:var(--color-text);cursor:pointer;transition:all .2s ease}.rota-shift-templates-dropdown:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #f444391a}.rota-calendar-content::-webkit-scrollbar{width:8px;height:8px}.rota-calendar-content::-webkit-scrollbar-track{background:var(--color-background-secondary)}.rota-calendar-content::-webkit-scrollbar-thumb{background:var(--color-gray-300);border-radius:4px}.rota-calendar-content::-webkit-scrollbar-thumb:hover{background:var(--color-gray-400)}.rota-category-section{border-bottom:2px solid var(--color-border);margin-bottom:0;margin-top:0}.rota-category-header{position:sticky;top:0;z-index:19;background:#f3f4f6;border-bottom:1px solid #e5e7eb;padding:6px 16px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s ease;box-shadow:0 2px 4px #00000008}.rota-category-header:hover{background:#e5e7eb}.rota-category-header.expanded{border-bottom-color:#d1d5db}.rota-category-header-content{display:flex;align-items:center;justify-content:center;gap:8px;width:100%}.rota-category-arrow{flex-shrink:0}.rota-category-name{font-size:13px;font-weight:600;color:#111827;text-align:center}.rota-category-summary{font-size:11px;color:#6b7280}.rota-category-header-row{position:sticky;top:36px;z-index:18;transition:background-color .2s ease;-webkit-user-select:none;user-select:none;box-shadow:0 2px 4px #00000008;background:#f3f4f6;margin-top:0;border-top:none;margin-bottom:0}.rota-days-header-shifted~.rota-staff-rows .rota-category-header-row{top:116px}.rota-category-header-row:hover{background:#e5e7eb!important}.rota-category-header-row.expanded{border-bottom-color:#d1d5db}.rota-category-day-total{display:flex;flex-direction:row;justify-content:center;align-items:center;min-height:auto;gap:4px}.rota-category-staff{display:flex;flex-direction:column}.rota-category-staff .rota-staff-row{grid-template-columns:200px repeat(7,1fr)}.rota-month-view .rota-category-staff .rota-staff-row{grid-template-columns:200px repeat(31,minmax(40px,1fr))}.rota-shift-block[style*=border-left]{position:relative}.rota-shift-block[style*=border-left]:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;border-radius:6px 0 0 6px}.rota-calendar-picker-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.rota-calendar-picker{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;width:90%;max-width:400px;overflow:hidden}.rota-calendar-picker-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid rgba(224,224,224,.3);background:var(--color-primary);color:#fff}.rota-calendar-picker-header h3{margin:0;font-size:18px;font-weight:600}.rota-calendar-picker-close{background:transparent;border:none;color:#fff;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s ease}.rota-calendar-picker-close:hover{background:#ffffff1a}.rota-leave-list-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.rota-leave-list-modal{position:relative;background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;width:90%;max-width:720px;height:70vh;min-height:400px;max-height:85vh;overflow:hidden;display:flex;flex-direction:column}.rota-leave-list-header{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;border-bottom:1px solid var(--color-border-dark);background:var(--color-primary);color:var(--color-secondary);border-radius:12px 12px 0 0;flex-shrink:0}.rota-leave-list-header h3{margin:0;font-size:16px;font-weight:600;color:var(--color-secondary)}.rota-leave-list-actions{display:flex;align-items:center;gap:10px}.rota-leave-list-filter-btn{background:transparent;border:none;color:var(--color-secondary);cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s ease,color .2s ease}.rota-leave-list-filter-btn:hover,.rota-leave-list-filter-btn.active{background:var(--color-dark-300, #333);color:var(--color-background)}.rota-leave-list-view-on-calendar-btn{padding:6px 12px;font-size:13px;font-weight:500;border:1px solid rgba(255,255,255,.4);border-radius:8px;background:#ffffff26;color:var(--color-secondary);cursor:pointer;white-space:nowrap;transition:background .2s ease,border-color .2s ease}.rota-leave-list-view-on-calendar-btn:hover{background:#ffffff40;border-color:#fff9}.rota-leave-list-filter-container{position:relative;display:flex;align-items:center}.rota-leave-list-filter-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:var(--color-background-card);border:1px solid var(--color-border);border-radius:var(--radius-md, 8px);box-shadow:0 10px 25px #00000026;z-index:1001;min-width:280px;max-width:360px;overflow:hidden}.rota-leave-list-filter-dropdown-header{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-bottom:1px solid var(--color-border-light)}.rota-leave-list-filter-dropdown-header h4{margin:0;font-size:14px;font-weight:600;color:var(--color-text)}.rota-leave-list-filter-dropdown-close{background:none;border:none;font-size:20px;line-height:1;color:var(--color-text-light);cursor:pointer;padding:0 4px}.rota-leave-list-filter-dropdown-close:hover{color:var(--color-text)}.rota-leave-list-filter-dropdown-content{padding:12px 14px;display:flex;flex-direction:column;gap:12px}.rota-leave-list-filter-dropdown-content label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:500;color:var(--color-text-light)}.rota-leave-list-filter-dropdown-content select,.rota-leave-list-filter-dropdown-content input[type=date]{padding:6px 10px;border:1px solid var(--color-border);border-radius:6px;font-size:13px}.rota-leave-list-filter-dropdown-content .rota-leave-filter-clear{margin-top:4px;padding:6px 12px;font-size:12px;border-radius:6px;border:1px solid var(--color-border);background:var(--color-background);cursor:pointer}.rota-leave-list-filter-dropdown-content .rota-leave-filter-clear:hover{background:var(--color-background-secondary)}.rota-leave-list-close{background:transparent;border:none;color:var(--color-secondary);cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s ease,color .2s ease}.rota-leave-list-close:hover{background:var(--color-dark-300, #333);color:var(--color-background)}.rota-leave-list-body{padding:16px 20px;overflow:auto;flex:1;min-height:0}.rota-leave-list-loading,.rota-leave-list-empty{text-align:center;padding:24px;color:var(--color-text-light);font-size:14px}.rota-leave-list-table{width:100%;border-collapse:collapse;font-size:14px}.rota-leave-list-table th{text-align:left;padding:10px 12px;border-bottom:1px solid var(--color-border);font-weight:600;color:var(--color-text-light)}.rota-leave-list-table td{padding:10px 12px;border-bottom:1px solid rgba(0,0,0,.06)}.rota-leave-list-row{cursor:pointer;transition:background .15s ease}.rota-leave-list-row:hover{background:#0000000a}.rota-leave-status{display:inline-block;padding:2px 8px;border-radius:6px;font-size:12px;font-weight:500}.rota-leave-status--approved{background:#dcfce7;color:#166534}.rota-leave-status--rejected{background:#fee2e2;color:#991b1b}.rota-leave-status--cancelled{background:#f3f4f6;color:#4b5563}.rota-leave-status--pending{background:#fef3c7;color:#92400e}.rota-leave-status-cell{display:flex;align-items:center;gap:6px}.rota-leave-status-select{padding:4px 8px;font-size:12px;font-weight:500;border-radius:6px;border:1px solid var(--color-border);background:var(--color-background);color:var(--color-text);cursor:pointer;min-width:90px}.rota-leave-status-select--pending{background:#fef3c7;border-color:#f59e0b;color:#92400e}.rota-leave-status-select--approved{background:#dcfce7;border-color:#16a34a;color:#166534}.rota-leave-status-select--rejected{background:#fee2e2;border-color:#dc2626;color:#991b1b}.rota-leave-status-select:disabled{opacity:.8;cursor:not-allowed}.rota-leave-status-updating{font-size:12px;color:var(--color-text-light)}.rota-leave-list-table--requests .rota-leave-actions-cell{display:flex;gap:8px;flex-wrap:wrap}.rota-leave-btn{padding:4px 10px;border-radius:6px;font-size:12px;font-weight:500;border:1px solid transparent;cursor:pointer;white-space:nowrap}.rota-leave-btn--approve{background:#dcfce7;color:#166534;border-color:#86efac}.rota-leave-btn--approve:hover:not(:disabled){background:#bbf7d0}.rota-leave-btn--reject{background:#fee2e2;color:#991b1b;border-color:#fca5a5}.rota-leave-btn--reject:hover:not(:disabled){background:#fecaca}.rota-leave-btn--view{background:#e0e7ff;color:#3730a3;border-color:#a5b4fc}.rota-leave-btn--view:hover{background:#c7d2fe}.rota-leave-btn--secondary{background:#f3f4f6;color:#374151;border-color:#d1d5db}.rota-leave-btn--secondary:hover{background:#e5e7eb}.rota-leave-btn:disabled{opacity:.7;cursor:not-allowed}.rota-leave-reject-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1100}.rota-leave-reject-modal{background:#fff;padding:20px;border-radius:12px;box-shadow:0 10px 40px #0003;min-width:320px}.rota-leave-reject-modal h4{margin:0 0 8px;font-size:16px}.rota-leave-reject-hint{margin:0 0 12px;font-size:13px;color:var(--color-text-light)}.rota-leave-reject-reason{width:100%;padding:10px 12px;border:1px solid var(--color-border);border-radius:8px;font-size:14px;resize:vertical;margin-bottom:16px;box-sizing:border-box}.rota-leave-reject-actions{display:flex;justify-content:flex-end;gap:10px}.rota-leave-block--highlighted{outline:3px solid #f59e0b;outline-offset:2px;box-shadow:0 0 0 2px #fff;z-index:2;animation:rota-leave-highlight-pulse 1.5s ease-in-out 2}@keyframes rota-leave-highlight-pulse{0%,to{outline-color:#f59e0b}50%{outline-color:#fbbf24}}.rota-leave-block--preview{outline:2px dashed rgba(0,0,0,.35);outline-offset:1px;opacity:.9;background:#ffffffb3}.rota-header-btn--has-issues{border-color:#f59e0b;color:#f59e0b}.rota-issues-badge{font-size:11px;opacity:.9}.rota-issues-list{list-style:none;margin:0;padding:0}.rota-issues-item{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;margin-bottom:8px;border-radius:8px;background:#fef3c7;border-left:4px solid #f59e0b;font-size:13px;line-height:1.4}.rota-issues-item--overlap,.rota-issues-item--leave_shift_conflict{background:#fef3c7;border-left-color:#f59e0b}.rota-issues-icon{flex-shrink:0}.rota-issues-message{flex:1}.rota-issues-subheading{font-size:13px;font-weight:600;color:#374151;margin:0 0 8px}.rota-issues-validation-section{margin-bottom:16px}.rota-issues-validation-section .rota-issues-subheading{margin-top:0}.rota-issues-item--breach{background:#fef2f2;border-left-color:#dc2626}.rota-issues-muted{font-size:12px;color:#6b7280;margin:8px 0 0}.rota-calendar-picker-body{padding:20px}.calendar-picker{width:100%}.calendar-picker-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.calendar-picker-nav h4{margin:0;font-size:16px;font-weight:600;color:var(--color-text)}.calendar-nav-btn{width:32px;height:32px;border:1px solid rgba(224,224,224,.5);border-radius:6px;background:#fff;color:var(--color-text);font-size:16px;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center}.calendar-nav-btn:hover{background:#f3f4f6;border-color:#d1d5db}.calendar-picker-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:8px}.calendar-weekday{text-align:center;font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;padding:8px 4px}.calendar-picker-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.calendar-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:14px;color:var(--color-text);border-radius:6px;cursor:pointer;transition:all .15s ease;font-weight:500}.calendar-day.empty{visibility:hidden}.calendar-day:hover:not(.empty){background:#f3f4f6}.calendar-day.today{background:var(--color-accent);color:#fff;font-weight:600}.calendar-day.selected{background:var(--color-primary);color:#fff;font-weight:600;box-shadow:0 2px 8px #00000026}.calendar-day.selected.today{background:var(--color-accent);box-shadow:0 2px 8px #f444394d}@media(max-width:1200px){.rota-controls-section{padding:var(--spacing-xs) var(--spacing-sm)}.rota-calendar-controls{gap:8px}.rota-btn{padding:6px 12px;font-size:12px}.rota-btn svg{width:14px;height:14px}.rota-week-display{min-width:140px;font-size:12px}}@media(max-width:768px){.rota-header-section{padding:12px 16px;min-height:50px}.rota-header-title h2{font-size:18px}.rota-controls-section{padding:var(--spacing-xs);min-height:auto;flex-direction:column;align-items:stretch}.rota-calendar-controls{flex-direction:column;gap:8px;align-items:stretch}.rota-btn,.rota-week-navigation{width:100%;justify-content:center}.rota-checkbox-label{margin-left:0;justify-content:center}.rota-days-header,.rota-staff-row{grid-template-columns:120px 100px repeat(7,1fr)}.rota-hours-cell{padding:8px 4px}.rota-hours-value{font-size:12px}.rota-hours-status-btn{font-size:8px;padding:2px 4px}.rota-staff-info{padding:8px 12px}.rota-staff-avatar{width:32px;height:32px;font-size:14px}.rota-staff-name{font-size:12px}.rota-staff-role{font-size:11px}.rota-day-header{padding:8px 4px}.rota-day-name{font-size:10px}.rota-day-number{font-size:14px}}@media(max-width:480px){.rota-header-section{padding:10px 12px}.rota-header-title{flex-direction:column;align-items:flex-start;gap:8px}.rota-site-badge{font-size:11px;padding:3px 8px}.rota-days-header,.rota-staff-row{grid-template-columns:100px repeat(7,1fr)}.rota-staff-column-header{padding:8px 12px;font-size:11px}.rota-shift-block{padding:4px 6px;font-size:10px}.rota-shift-time{font-size:10px}}.shift-types-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000}.shift-types-modal{background:#fff;border-radius:8px;max-width:720px;width:90%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 4px 20px #00000026}.shift-types-modal-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #e5e7eb}.shift-types-modal-header h3{margin:0;font-size:1.1rem}.shift-types-modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#6b7280;padding:0 4px;line-height:1}.shift-types-modal-close:hover{color:#111}.shift-types-modal-error{padding:8px 16px;background:#fef2f2;color:#b91c1c;font-size:.9rem}.shift-types-modal-body{padding:16px;overflow:auto}.shift-types-form{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:16px}.shift-types-form input[type=text],.shift-types-form input[type=number]{padding:6px 10px;border:1px solid #d1d5db;border-radius:4px;font-size:.9rem}.shift-types-form input[type=number]{width:80px}.shift-types-form label{display:flex;align-items:center;gap:4px;font-size:.9rem;white-space:nowrap}.shift-types-btn-save,.shift-types-btn-cancel{padding:6px 12px;border-radius:4px;font-size:.9rem;cursor:pointer;border:1px solid #d1d5db;background:#f9fafb}.shift-types-btn-save{background:#2563eb;color:#fff;border-color:#2563eb}.shift-types-btn-save:hover{background:#1d4ed8}.shift-types-btn-cancel:hover{background:#e5e7eb}.shift-types-table{width:100%;border-collapse:collapse;font-size:.9rem}.shift-types-table th,.shift-types-table td{padding:8px 10px;text-align:left;border-bottom:1px solid #e5e7eb}.shift-types-table th{font-weight:600;background:#f9fafb}.shift-types-table td button{margin-right:8px;padding:4px 8px;font-size:.85rem;cursor:pointer;border:1px solid #d1d5db;border-radius:4px;background:#fff}.shift-types-table td button:hover{background:#f3f4f6}.notes-editor{display:flex;flex-direction:column;height:100%;max-width:900px;margin:0 auto;color:#111827}.notes-editor-loading{padding:2rem;color:#666}.notes-editor-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;padding:8px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:1rem;color:#111827}.notes-editor-toolbar-group{display:flex;align-items:center;gap:2px}.notes-editor-toolbar-group button{padding:6px 10px;background:#f9fafb;color:#111827;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;font-size:.875rem}.notes-editor-toolbar-group button:hover{background:#f3f4f6;color:#111827}.notes-editor-status{margin-left:auto;display:flex;align-items:center;gap:.5rem;color:#374151}.notes-editor-status-saving{font-size:.8rem;color:#6b7280}.notes-editor-status-saved{font-size:.8rem;color:#059669}.notes-editor-save-btn{padding:6px 12px;background:var(--color-primary, #56CCF2);color:#fff;border:none;border-radius:4px;font-size:.8rem;cursor:pointer}.notes-editor-save-btn:hover{opacity:.9}.notes-editor-error{color:#c00;margin-bottom:.5rem;font-size:.875rem}.notes-editor-doc{flex:1;display:flex;flex-direction:column;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px #0000000f;padding:2rem 3rem;min-height:400px}.notes-editor-doc:focus-within{outline:none;box-shadow:0 1px 3px #0000000f}.notes-editor-title-input{width:100%;border:none;font-size:1.5rem;font-weight:600;margin-bottom:1rem;outline:none;background:#fff;color:#111827}.notes-editor-title-input:focus{outline:none;border:none;box-shadow:none}.notes-editor-body{flex:1;min-height:300px;outline:none;font-size:1rem;line-height:1.6;color:#111827}.notes-editor-body:focus{outline:none;border:none;box-shadow:none}.notes-editor-dropdown-wrap{position:relative}.notes-editor-dropdown-btn{padding:6px 10px;background:#f9fafb;color:#111827;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;font-size:.875rem}.notes-editor-dropdown{position:absolute;top:100%;left:0;margin-top:4px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 4px 12px #00000026;z-index:50;min-width:140px;padding:4px 0}.notes-editor-dropdown button{display:block;width:100%;padding:8px 12px;text-align:left;background:#fff;color:#111827;border:none;cursor:pointer;font-size:.875rem}.notes-editor-dropdown button:hover{background:#f3f4f6}.notes-editor-color-dropdown{min-width:200px;padding:8px}.notes-editor-color-section{margin-bottom:8px}.notes-editor-color-section:last-child{margin-bottom:0}.notes-editor-color-label{display:block;font-size:.7rem;color:#6b7280;margin-bottom:4px}.notes-editor-color-swatch-row{display:flex;flex-wrap:wrap;gap:4px}.notes-editor-color-swatch{width:20px;height:20px;border-radius:4px;border:1px solid #d1d5db;cursor:pointer;padding:0}.notes-editor-highlight-swatch{width:24px;height:20px}.notes-editor-body ul.notes-list-checkbox{list-style:none;padding-left:0}.notes-editor-body ul.notes-list-checkbox li{padding-left:1.5em;position:relative}.notes-editor-body ul.notes-list-checkbox li:before{content:"☐";position:absolute;left:0;font-size:1em}.notes-editor-body:empty:before{content:"Start writing…";color:#9ca3af}.notes-editor-body a{color:#2563eb;text-decoration:underline}.notes-editor-body a:hover{color:#1d4ed8}.notes-link-overlay{position:fixed;inset:0;background:#0000004d;display:flex;align-items:center;justify-content:center;z-index:1000}.notes-link-toolkit{background:#fff;border-radius:8px;padding:12px 16px;min-width:280px;box-shadow:0 4px 20px #00000026;border:1px solid #e5e7eb}.notes-link-label{display:block;font-size:.75rem;color:#6b7280;margin-bottom:6px}.notes-link-input{width:100%;padding:8px 10px;border:1px solid #d1d5db;border-radius:4px;font-size:.875rem;margin-bottom:10px;box-sizing:border-box}.notes-link-input:focus{outline:none;border-color:#2563eb}.notes-link-actions{display:flex;gap:8px;justify-content:flex-end}.notes-link-actions button{padding:6px 12px;border-radius:4px;font-size:.875rem;cursor:pointer;border:1px solid #d1d5db;background:#f9fafb}.notes-link-actions button:last-child{background:#2563eb;color:#fff;border-color:#2563eb}.notes-link-actions button:last-child:disabled{opacity:.5;cursor:not-allowed}.notes-editor-fontsize-dropdown{min-width:80px}.notes-editor-save-to-btn{padding:6px 12px;background:#f3f4f6;color:#374151;border:1px solid #e5e7eb;border-radius:4px;font-size:.8rem;cursor:pointer;margin-left:4px}.notes-editor-save-to-btn:hover{background:#e5e7eb}.notes-save-to-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.notes-save-to-modal{background:#fff;border-radius:8px;padding:1.5rem;max-width:420px;width:90%;box-shadow:0 4px 20px #00000026}.notes-save-to-modal h3{margin:0 0 1rem;font-size:1.1rem}.notes-save-to-modal label{display:block;margin-bottom:.75rem}.notes-save-to-modal label select,.notes-save-to-modal label input{display:block;width:100%;margin-top:.25rem;padding:.5rem;border:1px solid #e5e7eb;border-radius:4px}.notes-save-to-error{color:#c00;font-size:.875rem;margin-bottom:.5rem}.notes-save-to-success{color:#059669;font-size:.875rem;margin-bottom:.5rem}.notes-save-to-actions{display:flex;gap:.5rem;margin-top:1rem}.notes-save-to-actions button{padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.875rem}.notes-save-to-actions button[type=button]{background:#f3f4f6;border:1px solid #e5e7eb}.notes-save-to-actions button[type=submit]{background:var(--color-primary, #56CCF2);color:#fff;border:none}.notes-page-wrapper .notes-header-section{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem;padding:10px 16px;min-height:44px;border-bottom:1px solid rgba(0,0,0,.08)}.notes-back-btn{width:36px;height:36px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid rgba(0,0,0,.2);border-radius:50%;cursor:pointer;margin-right:8px}.notes-add-btn{padding:.4rem .9rem;background:var(--color-primary, #56CCF2);color:#fff;border:none;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer}.notes-add-btn:hover{opacity:.9}.notes-content{flex:1;overflow:auto;padding:1rem}.notes-list-view{max-width:720px;margin:0 auto}.notes-error{color:#c00;margin-bottom:1rem}.notes-loading{color:#666}.notes-empty{text-align:center;padding:3rem 1rem;color:#666}.notes-empty .notes-add-btn{margin-top:1rem}.notes-list{display:flex;flex-direction:column;gap:.5rem}.notes-list-card{display:flex;flex-direction:row;align-items:center;justify-content:space-between;text-align:left;padding:1rem 1.25rem;background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:background .15s,box-shadow .15s;outline:none}.notes-list-card:hover{background:#fafafa;box-shadow:0 1px 4px #0000000f}.notes-list-card:focus{outline:none;border-color:#d1d5db}.notes-list-card-main{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start}.notes-list-card-title{font-weight:600;font-size:1rem;margin-bottom:.25rem;color:#111827}.notes-list-card-meta{font-size:.8rem;color:#6b7280}.notes-list-card-actions{display:flex;align-items:center;gap:4px;flex-shrink:0;margin-left:8px}.notes-list-card-action-btn{width:32px;height:32px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:#f3f4f6;color:#374151;border:none;border-radius:6px;cursor:pointer;transition:background .15s,color .15s}.notes-list-card-action-btn:hover{background:#e5e7eb;color:#111827}.notes-list-card-action-delete:hover{background:#fee2e2;color:#dc2626}.notes-share-modal .notes-share-hint{font-size:.875rem;color:#6b7280;margin-bottom:1rem}.notes-share-list{max-height:280px;overflow-y:auto;margin-bottom:1rem;padding:4px 0}.notes-share-item{display:flex;align-items:center;gap:8px;padding:8px 0;cursor:pointer;font-size:.9rem;color:#111827}.notes-share-item input{flex-shrink:0}.company-settings-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999;padding:16px}.company-settings-modal{background:var(--color-background, #fff);border-radius:12px;box-shadow:0 20px 60px #0003;max-width:720px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.company-settings-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--color-border, #e5e7eb);flex-shrink:0}.company-settings-header h2{margin:0;font-size:20px;font-weight:600;color:var(--color-text, #111827)}.company-settings-close{background:none;border:none;font-size:28px;line-height:1;color:#6b7280;cursor:pointer;padding:0 4px}.company-settings-close:hover{color:#111827}.company-settings-form{overflow-y:auto;padding:24px;flex:1}.company-settings-error{background:#fef2f2;color:#b91c1c;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px}.company-settings-section{margin-bottom:28px}.company-settings-section h3{margin:0 0 16px;font-size:16px;font-weight:600;color:var(--color-text, #111827);padding-bottom:8px;border-bottom:1px solid var(--color-border, #e5e7eb)}.company-settings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}.company-settings-grid-2{grid-template-columns:repeat(2,1fr)}.company-settings-field{display:flex;flex-direction:column;gap:4px}.company-settings-field label{font-size:13px;font-weight:500;color:#374151}.company-settings-field input[type=number],.company-settings-field input[type=text],.company-settings-field input[type=time],.company-settings-field select{padding:8px 12px;border:1px solid var(--color-border, #e5e7eb);border-radius:6px;font-size:14px}.company-settings-field input:focus,.company-settings-field select:focus{outline:none;border-color:var(--color-primary, #3b82f6);box-shadow:0 0 0 2px #3b82f633}.company-settings-checkbox label{display:flex;align-items:center;gap:8px;cursor:pointer}.company-settings-checkbox input[type=checkbox]{width:18px;height:18px}.field-error{font-size:12px;color:#b91c1c}.company-settings-leave-types{overflow-x:auto}.company-settings-table{width:100%;border-collapse:collapse;font-size:14px}.company-settings-table th,.company-settings-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--color-border, #e5e7eb)}.company-settings-table th{font-weight:600;color:#374151;background:#f9fafb}.company-settings-input-inline{width:100%;min-width:120px;padding:6px 10px;border:1px solid var(--color-border, #e5e7eb);border-radius:6px;font-size:13px}.company-settings-muted{color:#6b7280;font-size:14px;margin:0}.company-settings-loading{padding:48px;text-align:center;color:#6b7280}.company-settings-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:20px;border-top:1px solid var(--color-border, #e5e7eb);margin-top:8px}.company-settings-btn{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;border:none}.company-settings-btn.secondary{background:#f3f4f6;color:#374151}.company-settings-btn.secondary:hover:not(:disabled){background:#e5e7eb}.company-settings-btn.primary{background:var(--color-primary, #3b82f6);color:#fff}.company-settings-btn.primary:hover:not(:disabled){opacity:.9}.company-settings-btn:disabled{opacity:.6;cursor:not-allowed}.security-section{display:flex;flex-direction:column;gap:2rem;min-height:min-content}.security-section--compact{gap:1.25rem}.security-heading{font-size:1.25rem;font-weight:600;margin:0 0 .5rem;color:var(--text-primary, #1a1a1a)}.security-block{padding:1.25rem;border:1px solid var(--border-color, #e5e7eb);border-radius:8px;background:var(--surface, #fff)}.security-block--compact{padding:.875rem 1rem;border-radius:6px;border-color:#eaeaea;background:#fafafa}.security-block-title{font-size:1rem;font-weight:600;margin:0 0 1rem;color:var(--text-primary, #1a1a1a)}.security-block-title--compact{font-size:.8125rem;font-weight:500;margin:0 0 .75rem;color:#374151}.security-form{display:flex;flex-direction:column;gap:1rem}.security-form--compact{gap:.5rem}.security-row{display:flex;flex-wrap:wrap;gap:.75rem 1rem}.security-field{display:flex;flex-direction:column;gap:.35rem}.security-field--compact{min-width:120px;flex:1}.security-field--compact label{font-size:.75rem;font-weight:500;color:#6b7280}.security-field input{padding:.5rem .75rem;border:1px solid #e5e7eb;border-radius:6px;font-size:.9375rem}.security-field--compact input{padding:.4rem .6rem;font-size:.875rem;border-radius:4px}.security-field input:focus{outline:none;border-color:var(--color-primary, #3b82f6);box-shadow:0 0 0 2px #3b82f61f}.security-hint{font-size:.8rem;color:var(--text-muted, #888);margin:.25rem 0 0}.security-hint--compact{font-size:.7rem;color:#9ca3af;margin:.15rem 0 0}.security-form-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-top:.5rem}.security-show-pwd{display:inline-flex;align-items:center;gap:.4rem;font-size:.75rem;color:#6b7280;cursor:pointer}.security-show-pwd input{width:14px;height:14px;accent-color:#1f2937}.security-btn{padding:.45rem 1.25rem;border:none;border-radius:9999px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s ease}.security-btn--primary{background:var(--color-primary, #3b82f6);color:#fff}.security-btn--primary:hover:not(:disabled){filter:brightness(1.06)}.security-btn--secondary{background:transparent;color:var(--color-primary, #3b82f6);border:1.5px solid var(--color-primary, #3b82f6)}.security-btn--secondary:hover:not(:disabled){background:#3b82f60f}.security-btn:disabled{opacity:.6;cursor:not-allowed}.security-error{color:#dc2626;font-size:.9rem;margin:.25rem 0 0}.security-error--compact{font-size:.8rem}.security-success{color:#16a34a;font-size:.9rem;margin:.25rem 0 0}.security-success--compact{font-size:.8rem}.sessions-list{list-style:none;padding:0;margin:0 0 .75rem}.sessions-list--compact{margin-bottom:.5rem}.sessions-list-item{display:flex;align-items:center;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid #eee;font-size:.875rem}.sessions-list-item:last-child{border-bottom:none}.sessions-list-item.current{font-weight:500}.sessions-device{color:#374151}.sessions-badge{font-size:.7rem;color:var(--color-primary, #3b82f6);font-weight:500}.security-muted{font-size:.9rem;color:#6b7280;margin:0}.security-muted--compact{font-size:.8125rem;color:#9ca3af}.security-2fa-toggles{display:flex;flex-direction:column;gap:.5rem}.security-2fa-row{display:flex;align-items:center;justify-content:space-between;padding:.5rem 0;cursor:pointer;border-radius:4px}.security-2fa-label{font-size:.875rem;color:#1f2937;font-weight:500}.security-2fa-toggle{appearance:none;width:40px;height:22px;background:#d1d5db;border-radius:11px;cursor:pointer;position:relative;transition:background .2s;flex-shrink:0}.security-2fa-toggle:checked{background:#1f2937}.security-2fa-toggle:after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:#fff;top:2px;left:2px;box-shadow:0 1px 2px #0003;transition:transform .2s}.security-2fa-toggle:checked:after{transform:translate(18px)}.security-2fa-toggle:disabled{opacity:.6;cursor:not-allowed}.security-2fa-setup{margin-top:1rem;padding-top:1rem;padding-bottom:.5rem;border-top:1px solid #e5e7eb;display:flex;flex-direction:column;gap:.75rem}.security-2fa-setup .security-muted--compact{line-height:1.4}.security-totp-qr{align-self:flex-start}.security-totp-qr--compact img{display:block;border-radius:6px}.security-totp-secret{word-break:break-all;font-size:.7rem;color:#6b7280}.security-totp-secret--compact{font-size:.6875rem}.security-input-inline{max-width:140px;padding:.5rem .75rem;border:1px solid #e5e7eb;border-radius:6px;font-size:1rem}.security-input-inline--compact{max-width:120px;padding:.4rem .6rem;font-size:.9375rem;border-radius:4px}.security-2fa-setup-actions{display:flex;gap:.5rem;align-items:center}.security-toggle-row{margin-top:.5rem}.security-toggle-label{display:inline-flex;align-items:center;gap:.5rem;font-size:.875rem;cursor:pointer}.security-revoke-btn{padding:.45rem 1rem;border-radius:9999px;font-size:.8125rem;background:transparent;color:var(--color-primary, #3b82f6);border:1.5px solid var(--color-primary, #3b82f6);cursor:pointer}.security-revoke-btn:hover:not(:disabled){background:#3b82f60f}.security-submit-btn{padding:.45rem 1.25rem;border-radius:9999px;font-size:.8125rem;background:var(--color-primary, #3b82f6);color:#fff;border:none;cursor:pointer}.settings-display-section{display:flex;flex-direction:column;gap:20px}.settings-display-block{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px}.settings-display-block-title{font-size:16px;font-weight:600;color:#111827;margin:0 0 8px}.settings-display-block-desc{font-size:14px;color:#6b7280;margin:0 0 16px}.settings-display-block-desc.settings-display-italic{font-style:italic}.settings-display-buttons{display:flex;gap:12px;flex-wrap:wrap}.settings-display-btn{flex:1;min-width:140px;padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;background:#fff;color:#6b7280;font-weight:500;font-size:14px;cursor:pointer;transition:all .2s ease}.settings-display-btn:hover{border-color:#d1d5db;color:#374151}.settings-display-btn.active{border-color:#7c3aed;background:#7c3aed1a;color:#7c3aed;font-weight:600}.settings-display-checkbox{display:flex;align-items:center;gap:12px;cursor:pointer;font-size:14px;color:#111827}.settings-display-checkbox input{width:20px;height:20px;cursor:pointer;accent-color:#7c3aed}.settings-display-company-btn{padding:8px 16px;background:var(--color-primary, #3b82f6);color:#fff;border:none;border-radius:8px;font-weight:500;cursor:pointer}.settings-display-company-btn:hover{filter:brightness(1.05)}.settings-display-coming-soon{margin-top:16px;padding:12px;background:#f9fafb;border-radius:6px;font-size:13px;color:#6b7280;text-align:center}.settings-panel{display:flex;flex-direction:row;flex:1;min-height:0;min-width:0;background:#fafafa}.settings-panel-sidebar{width:200px;min-width:200px;flex-shrink:0;background:#fff;border-right:1px solid #e5e7eb;padding:12px 0;overflow-y:auto}.settings-panel-nav-item{display:block;width:100%;padding:10px 16px;border:none;background:none;text-align:left;font-size:14px;color:#4b5563;cursor:pointer;transition:background .15s,color .15s}.settings-panel-nav-item:hover{background:#f3f4f6;color:#111827}.settings-panel-nav-item.active{background:#7c3aed14;color:#7c3aed;font-weight:600}.settings-panel-content{flex:1;min-width:0;min-height:0;overflow-y:auto;overflow-x:hidden;padding:20px 24px;-webkit-overflow-scrolling:touch}.settings-panel-content-inner{max-width:600px;margin:0 auto;padding-bottom:32px}.settings-panel-section-title{font-size:18px;font-weight:600;color:#111827;margin:0 0 20px;padding-bottom:12px;border-bottom:1px solid #e5e7eb}.settings-placeholder{padding:24px;text-align:center;color:#6b7280;font-size:14px;background:#fff;border:1px solid #e5e7eb;border-radius:8px}#rota-card{position:relative;overflow:hidden}#rota-card .flip-inner{-webkit-transform-style:preserve-3d;transform-style:preserve-3d}#rota-card .flip-face{-webkit-backface-visibility:hidden;backface-visibility:hidden}#rota-card .flip-face.back{-webkit-transform:rotateY(180deg);transform:rotateY(180deg)}#rota-card .card-header{position:sticky!important;top:0!important;z-index:30!important;background:var(--color-primary)!important;border-bottom:1px solid rgba(224,224,224,.1)!important;box-shadow:0 2px 4px #0000000d!important;flex-shrink:0}#rota-card .rota-content{position:relative;overflow-y:auto;overflow-x:auto;-webkit-overflow-scrolling:touch}#rota-card .rota-content .rota-calendar-content{position:relative}#rota-card .rota-content .rota-calendar-content .rota-days-header,#rota-card .rota-content .rota-days-header{position:sticky!important;top:0!important;z-index:20!important;background:var(--color-background-secondary)!important;box-shadow:0 2px 4px #0000000d!important}#rota-card .rota-content .rota-calendar-content .rota-category-header-row,#rota-card .rota-content .rota-category-header-row{position:sticky!important;top:36px!important;z-index:19!important;background:#f3f4f6!important;box-shadow:0 2px 4px #00000008!important}#rota-card .rota-content .rota-calendar-content .rota-category-header-row:not(.expanded){top:36px!important}#rota-card .rota-content .rota-calendar-content .rota-days-header-shifted,#rota-card .rota-content .rota-days-header-shifted{top:80px!important}#rota-card .rota-content .rota-calendar-content .rota-days-header-shifted~.rota-staff-rows .rota-category-header-row,#rota-card .rota-content .rota-days-header-shifted~.rota-staff-rows .rota-category-header-row{top:116px!important}.rota-category-header-row{background-color:#f3f4f6}#rota-card .rota-content .rota-calendar-content .rota-category-header-row{grid-template-columns:200px repeat(7,1fr)!important}#rota-card .rota-content .rota-calendar-content .rota-category-header-content{padding:6px 16px!important;border-right:1px solid var(--color-border)!important}#rota-card .rota-content .rota-calendar-content .rota-category-day-total{flex-direction:column!important;gap:2px!important;white-space:normal!important;line-height:1.2!important;min-height:auto!important;padding:6px 8px!important;border-right:1px solid var(--color-border)!important;border-left:none!important;text-align:center!important;display:flex!important;align-items:center!important;justify-content:center!important}#rota-card .rota-content .rota-calendar-content .rota-category-day-total span:first-child{display:block}#rota-card .rota-content .rota-calendar-content .rota-category-day-total span:nth-child(2){display:none}#rota-card .rota-content .rota-calendar-content .rota-category-day-total span:last-child{display:block}.rota-category-header-cell{padding:10px 16px!important;border-bottom:2px solid #e5e7eb;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s ease}.rota-category-header-cell:hover{background-color:#e5e7eb!important}.rota-category-staff-row{transition:background-color .2s ease}.rota-category-staff-row:hover{background-color:#00000005}.day-header-content{display:flex;flex-direction:column;align-items:center;gap:2px}.day-name{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.day-number{font-size:14px;font-weight:700}.rota-table th.day-column.today{background:transparent;color:var(--color-text);position:relative}.rota-table th.day-column.today:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:calc(100% - 8px);height:calc(100% - 8px);background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-dark) 100%);border-radius:999px;z-index:0;box-shadow:0 2px 8px #f444394d}.rota-table th.day-column.today .day-name,.rota-table th.day-column.today .day-number{color:#fff;position:relative;z-index:1}.staff-info{display:flex;flex-direction:column;gap:2px}.staff-name{font-size:12px;font-weight:600;color:var(--color-text);line-height:1.2}.staff-role{font-size:10px;color:var(--color-text-light);line-height:1.2}.rota-table td.shift-cell{position:relative;padding:8px 4px;min-height:50px;vertical-align:middle;transition:all .2s ease}.rota-table td.shift-cell.empty{background-color:var(--color-background);border:1px dashed var(--color-border-light)}.rota-table td.shift-cell.empty:hover{background-color:var(--color-background-secondary);border-color:var(--color-accent);border-style:solid}.empty-cell-hint{font-size:18px;color:var(--color-text-light);opacity:.3;font-weight:300;transition:all .2s ease}.rota-table td.shift-cell.empty:hover .empty-cell-hint{opacity:.6;color:var(--color-accent);font-weight:500}.rota-table td.shift-cell.day{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border:1px solid #90caf9;color:#1976d2}.rota-table td.shift-cell.night{background:linear-gradient(135deg,#f3e5f5,#e1bee7);border:1px solid #ce93d8;color:#7b1fa2}.rota-table td.shift-cell.evening{background:linear-gradient(135deg,#fff3e0,#ffe0b2);border:1px solid #ffcc80;color:#e65100}.rota-table td.shift-cell.split{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border:1px solid #a5d6a7;color:#2e7d32}.rota-table td.shift-cell.on_call{background:linear-gradient(135deg,#fce4ec,#f8bbd0);border:1px solid #f48fb1;color:#c2185b}.rota-table td.shift-cell.leave{background:linear-gradient(135deg,#ffebee,#ffcdd2);border:1px solid #ef9a9a;color:#c62828}.shift-time-display{font-size:10px;font-weight:600;line-height:1.2;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.leave-indicator{font-size:16px;position:absolute;top:2px;right:2px;opacity:.8}.shift-count-badge{position:absolute;top:2px;left:2px;background:#0009;color:#fff;font-size:9px;font-weight:700;padding:2px 4px;border-radius:8px;line-height:1}.shift-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:8px;z-index:1000;pointer-events:none}.shift-tooltip-content{background:#000000e6;color:#fff;padding:8px 12px;border-radius:6px;font-size:11px;white-space:nowrap;box-shadow:0 4px 12px #0000004d;min-width:150px}.shift-tooltip-content:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#000000e6}.shift-tooltip-content strong{display:block;margin-bottom:4px;font-size:12px}.shift-tooltip-content div{margin-top:2px;opacity:.9}.loading-spinner{animation:spin .8s linear infinite}.rota-table td.shift-cell:hover{transform:translateY(-1px);box-shadow:0 2px 8px #00000026;z-index:5}.rota-table td.shift-cell.day:hover{background:linear-gradient(135deg,#bbdefb,#90caf9);box-shadow:0 2px 8px #1976d24d}.rota-table td.shift-cell.night:hover{background:linear-gradient(135deg,#e1bee7,#ce93d8);box-shadow:0 2px 8px #7b1fa24d}.rota-table td.shift-cell.evening:hover{background:linear-gradient(135deg,#ffe0b2,#ffcc80);box-shadow:0 2px 8px #e651004d}.rota-table td.shift-cell.split:hover{background:linear-gradient(135deg,#c8e6c9,#a5d6a7);box-shadow:0 2px 8px #2e7d324d}.rota-table td.shift-cell.on_call:hover{background:linear-gradient(135deg,#f8bbd0,#f48fb1);box-shadow:0 2px 8px #c2185b4d}.rota-table td.summary-cell{font-weight:600;color:var(--color-text);text-align:center}@media(max-width:768px){.shift-time-display{font-size:9px}.staff-name{font-size:11px}.staff-role{font-size:9px}.day-name{font-size:10px}.day-number{font-size:12px}}.rota-table td.shift-cell:focus{outline:2px solid var(--color-accent);outline-offset:2px}.rota-nav-btn:disabled{opacity:.5;cursor:not-allowed}.risks-actions-container{height:100%;display:flex;flex-direction:column;overflow:auto;padding:12px;box-sizing:border-box}.dropdowns-list{display:flex;flex-direction:column;gap:6px;width:100%}.dropdown-item{border:none;border-radius:0;overflow:visible;transition:all .2s;display:flex;flex-direction:column;gap:0}.dropdown-header{padding:12px 20px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:background-color .2s;border-radius:50px;flex-shrink:0;z-index:1;position:relative;margin:0;width:100%;box-sizing:border-box;border:1px solid;font-family:inherit;font-size:inherit;text-align:left;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}button.dropdown-header{appearance:none;background-color:inherit;color:inherit;min-height:44px}button.dropdown-header:focus{outline:2px solid rgba(0,0,0,.2);outline-offset:2px}button.dropdown-header:focus:not(:focus-visible){outline:none}.dropdown-header:hover{opacity:.8}.dropdown-header.expanded{opacity:1}.dropdown-name{font-size:14px;font-weight:500;color:#212529}.dropdown-chevron{color:#6c757d;flex-shrink:0}.dropdown-content{overflow:hidden;flex:1;background:transparent;border:none;border-radius:0;padding:0;margin:12px 0}.profiles-list{display:flex;flex-direction:column;gap:12px}.profile-dropdown-item{border:1px solid rgba(0,0,0,.1);border-radius:50px;overflow:hidden;background-color:#fff9}.profile-header{padding:10px 16px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;background-color:transparent;transition:background-color .2s;border-radius:50px}.profile-header:hover{background-color:#fffc}.profile-header.expanded{background-color:#ffffffe6}.profile-name{font-size:13px;font-weight:400;color:#495057}.profile-chevron{color:#6c757d;flex-shrink:0}.profile-content{overflow:hidden;background-color:#fff6;border-radius:0 0 50px 50px}.profile-alerts-placeholder{padding:12px;font-size:12px;color:#6c757d;text-align:center}.no-residents,.no-sites{padding:16px;font-size:13px;color:#6c757d;text-align:center}.no-sites{padding:40px}.dropdown-content>.section-header{margin-top:0;margin-bottom:6px;border:1px solid #2e2e2e;border-radius:50px;box-sizing:border-box}.dropdown-content>.section-header:first-of-type{margin-top:0}.dropdown-content>.section-header:last-of-type{margin-bottom:0}.section-header{padding:6px 12px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;background:transparent;transition:background .1s;width:100%;font-family:inherit;font-size:inherit;text-align:left;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}button.section-header{appearance:none;background:transparent;color:inherit;min-height:28px}button.section-header:focus{outline:1px solid rgba(0,0,0,.1);outline-offset:0}button.section-header:focus:not(:focus-visible){outline:none}.section-header:hover{background:#0000000a}.section-header.expanded{background:#0000000d}.section-name{font-size:12px;font-weight:600;color:#374151}.section-count{font-weight:500;color:#6b7280}.section-chevron{color:#6b7280;flex-shrink:0}.section-chevron svg{width:12px;height:12px}.section-content{overflow:hidden;background-color:#ffffff59;border-radius:0 0 6px 6px;padding:2px 4px 4px;margin-bottom:0}.risks-actions-container .alerts-list{display:flex;flex-direction:column;gap:6px;max-height:320px;overflow-y:auto}.risks-actions-container .alert-item{display:flex;flex-direction:column;padding:8px 10px;background-color:#fff;border-radius:6px;border-left:3px solid #6b7280;box-shadow:0 1px 2px #0000000f;transition:box-shadow .15s}.risks-actions-container .alert-item:hover{box-shadow:0 2px 4px #00000014}.risks-actions-container .alert-item.alert-severity-critical,.risks-actions-container .alert-item.alert-severity-high{border-left-color:#dc3545}.risks-actions-container .alert-item.alert-severity-warning,.risks-actions-container .alert-item.alert-severity-medium{border-left-color:#ff9800}.risks-actions-container .alert-item.alert-severity-low,.risks-actions-container .alert-item.alert-severity-resolved{border-left-color:#28a745}.risks-actions-container .alert-item.alert-severity-informational{border-left-color:#2196f3}.risks-actions-container .alert-title{display:block;font-size:13px;font-weight:600;color:#212529;margin-bottom:4px;line-height:1.3}.risks-actions-container .alert-description{display:block;font-size:12px;color:#6c757d;margin-bottom:6px;line-height:1.35}.risks-actions-container .alert-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:11px;color:#6b7280}.risks-actions-container .alert-meta .alert-type,.risks-actions-container .alert-meta .alert-category{padding:1px 6px;border-radius:4px;background-color:#6b72801f;color:#4b5563;font-weight:500}.risks-actions-container .alert-meta-actions{margin-top:4px;margin-bottom:0}.risks-actions-container .alert-badge{font-size:11px}.risks-actions-container .alert-resolve-btn{margin-left:auto;padding:4px 10px;font-size:11px;font-weight:600;color:#fff;background-color:#28a745;border:none;border-radius:4px;cursor:pointer;transition:background-color .15s}.risks-actions-container .alert-resolve-btn:hover{background-color:#218838}.risks-actions-container .alert-meta .alert-severity{padding:1px 6px;border-radius:4px;font-weight:600;font-size:10px;text-transform:uppercase}.risks-actions-container .alert-meta .alert-severity.high{background-color:#dc35451f;color:#dc3545}.risks-actions-container .alert-meta .alert-severity.medium{background-color:#ff98001f;color:#e65100}.risks-actions-container .alert-meta .alert-severity.low{background-color:#28a7451f;color:#28a745}.risks-actions-container .alert-meta .alert-status{padding:1px 6px;border-radius:4px;font-size:10px;font-weight:500}.alerts-loading,.no-alerts{padding:10px;font-size:12px;color:#6c757d;text-align:center}.add-resident-form{background:var(--color-background-card);padding:var(--spacing-md);border-radius:0;height:100%;display:flex;flex-direction:column;overflow:hidden;box-shadow:none;width:100%;max-width:100%}.add-resident-form__header{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:2px solid var(--color-border-light)}.add-resident-form__title{color:var(--color-text);margin:0 0 var(--spacing-sm) 0;font-size:22px;font-weight:var(--font-weight-semibold);letter-spacing:-.01em}.add-resident-form__progress{margin-top:var(--spacing-md)}.add-resident-form__progress-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xs);font-size:12px;color:var(--color-text-light);font-weight:var(--font-weight-medium)}.add-resident-form__progress-bar{width:100%;height:6px;background:var(--color-border-light);border-radius:var(--radius-full);overflow:hidden;position:relative}.add-resident-form__progress-fill{height:100%;background:linear-gradient(90deg,var(--color-primary) 0%,var(--color-accent-dark) 100%);border-radius:var(--radius-full);transition:width .3s ease}.add-resident-form__error{margin-bottom:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);font-size:13px;background:#fef2f2;border:1px solid #fecaca;border-radius:var(--radius-sm);color:var(--color-danger);font-weight:var(--font-weight-medium);display:flex;align-items:center;gap:var(--spacing-xs)}.add-resident-form__form{flex:1;display:flex;flex-direction:column;overflow:hidden}.add-resident-form__content{flex:1;overflow-y:auto;padding-right:var(--spacing-xs);padding-bottom:var(--spacing-xs);padding-top:0}.add-resident-form__content::-webkit-scrollbar{width:6px}.add-resident-form__content::-webkit-scrollbar-track{background:var(--color-background-secondary);border-radius:var(--radius-sm)}.add-resident-form__content::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-sm)}.add-resident-form__content::-webkit-scrollbar-thumb:hover{background:var(--color-gray-400)}.form-section{padding:0}.form-section__header{font-size:14px;font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-sm);margin-top:0;color:var(--color-text);padding-bottom:var(--spacing-xs);border-bottom:1px solid var(--color-border-light);letter-spacing:-.01em}.form-group{margin-bottom:var(--spacing-sm);min-width:0}.form-group--compact{margin-bottom:var(--spacing-xs);min-width:0}.form-group--no-margin{margin-bottom:0;min-width:0}.form-row{display:grid;gap:4px;margin-bottom:0;width:100%}.form-row--2{grid-template-columns:repeat(2,1fr)}.form-row--3{grid-template-columns:repeat(3,minmax(0,1fr))!important;min-width:0}.form-row--3 .form-group,.form-row--3 .form-group--no-margin{min-width:0;width:100%}.form-row--3 .form-input,.form-row--3 .form-select{width:100%;min-width:0;max-width:100%}.form-row--4{grid-template-columns:repeat(4,minmax(0,1fr))!important;min-width:0}.form-row--4 .form-group,.form-row--4 .form-group--no-margin{min-width:0;width:100%}.form-row--4 .form-input,.form-row--4 .form-select{width:100%;min-width:0;max-width:100%}.form-row--compact-4{grid-template-columns:80px 1fr 1fr 1fr}.form-row--compact-3{grid-template-columns:1fr 1fr 120px}.form-group[style*=max-width]{max-width:100px}.form-group[style*=max-width] .form-select,.form-group[style*=max-width] .form-input{width:100%}.form-label{font-size:11px;margin-bottom:3px;display:block;font-weight:var(--font-weight-medium);color:#9ca3af!important;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.form-group .form-label,.form-group--compact .form-label,.form-group--no-margin .form-label{color:#9ca3af!important}.form-label__required{color:var(--color-danger);margin-left:2px}.form-input,.form-select,.form-textarea{color:var(--color-text);background-color:var(--color-background);border:1px solid var(--color-border);padding:6px 4px;font-size:11px;border-radius:var(--radius-sm);width:100%;min-width:0;max-width:100%;transition:var(--transition-fast);font-family:var(--font-family-base);outline:none;box-sizing:border-box}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #2e2e2e1a}.form-input::placeholder{color:var(--color-text-light)}.form-textarea{min-height:80px;resize:vertical;font-family:inherit}.form-input.error,.form-select.error,.form-textarea.error{border-color:var(--color-danger)}.form-error-message{font-size:11px;color:var(--color-danger);margin-top:4px;display:block}.btn{padding:10px 20px;font-size:13px;font-weight:var(--font-weight-medium);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-fast);border:none;display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-xs)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:#fff;box-shadow:var(--shadow-xs)}.btn-primary:hover:not(:disabled){background:#1a1a1a;transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn-secondary{border:1px solid var(--color-border);background:var(--color-background);color:var(--color-text)}.btn-secondary:hover:not(:disabled){background:var(--color-background-secondary)}.btn-success{background:var(--color-success);color:#fff;box-shadow:var(--shadow-xs)}.btn-success:hover:not(:disabled){background:var(--color-success-dark);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn-danger{background:var(--color-danger);color:#fff}.btn-danger:hover:not(:disabled){background:var(--color-danger-dark)}.btn-sm{padding:6px 12px;font-size:11px}.btn-icon{padding:8px 12px;font-size:12px}.add-resident-form__navigation{display:flex;gap:var(--spacing-sm);justify-content:flex-end;margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border-light);flex-shrink:0}.form-card{background:var(--color-background-card);border:1px solid var(--color-border-light);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-md);box-shadow:var(--shadow-xs)}.image-upload-with-fields{display:grid;grid-template-columns:auto 1fr;gap:12px;margin-bottom:var(--spacing-md);align-items:start}.image-upload-section{display:flex;flex-direction:column;align-items:center;justify-content:flex-start}.fields-section{display:flex;flex-direction:column;gap:0;min-width:0;overflow:visible;width:100%}.fields-section .form-row{grid-template-columns:repeat(4,minmax(0,1fr));min-width:0;width:100%}.fields-section .form-row--4{grid-template-columns:repeat(4,minmax(0,1fr))}.fields-section .form-row--3{grid-template-columns:repeat(3,minmax(0,1fr))!important;width:100%}.image-upload-container-compact{margin-bottom:0;width:100%}.image-upload-wrapper{display:flex;flex-direction:column;align-items:center;gap:0;justify-content:flex-start}.image-upload-preview-container-compact{width:330px;height:330px;border-radius:var(--radius-md);border:2px dashed var(--color-border);display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--color-background-secondary);flex-shrink:0;position:relative}.image-upload-preview-wrapper{position:relative;width:100%;height:100%}.image-upload-preview-compact{width:100%;height:100%;object-fit:cover;transition:opacity .3s ease}.image-upload-preview-compact.image-upload-preview--uploading{opacity:.5}.image-upload-overlay{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;transition:opacity .2s ease;pointer-events:none}.image-upload-overlay--uploading{background:#0009;opacity:1;pointer-events:all}.image-upload-overlay--success{background:#22c55ecc;opacity:1;pointer-events:none;animation:fadeOut 2s ease-in-out forwards}.image-upload-overlay--change{background:#00000080;opacity:0;pointer-events:none}.image-upload-preview-wrapper:hover .image-upload-overlay--change{opacity:1;pointer-events:all}.image-upload-success-icon{font-size:48px;color:#fff;font-weight:700}@keyframes fadeOut{0%{opacity:1}70%{opacity:1}to{opacity:0}}.image-upload-change-button{padding:8px 16px;font-size:12px;border:1px solid var(--color-background);border-radius:var(--radius-sm);background:var(--color-background);color:var(--color-text);cursor:pointer;transition:var(--transition-fast);font-family:inherit}.image-upload-change-button:hover:not(:disabled){background:var(--color-background-secondary);border-color:var(--color-primary)}.image-upload-change-button:disabled{opacity:.6;cursor:not-allowed}.image-upload-placeholder-compact{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.image-upload-placeholder-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-sm)}.image-upload-placeholder-icon{font-size:80px;color:var(--color-text-light)}.image-upload-button-inside{padding:8px 16px;font-size:12px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-background);color:var(--color-text);cursor:pointer;transition:var(--transition-fast);font-family:inherit}.image-upload-button-inside:hover:not(:disabled){border-color:var(--color-primary);background:var(--color-background-secondary)}.image-upload-button-inside:disabled{opacity:.6;cursor:not-allowed}.image-upload-button-compact{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;font-size:12px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-background);color:var(--color-text);cursor:pointer;transition:var(--transition-fast);white-space:nowrap;width:auto}.image-upload-button-compact:hover:not(:disabled){border-color:var(--color-primary);background:var(--color-background-secondary)}.image-upload-button-compact:disabled{opacity:.6;cursor:not-allowed}.image-upload-container{margin-bottom:var(--spacing-md)}.image-upload-preview{width:120px;height:120px;border-radius:var(--radius-md);object-fit:cover;border:2px solid var(--color-border);margin-bottom:var(--spacing-sm)}.image-upload-button{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:8px 16px;font-size:12px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-background);color:var(--color-text);cursor:pointer;transition:var(--transition-fast);font-family:inherit}.image-upload-button:hover:not(:disabled){border-color:var(--color-primary);background:var(--color-background-secondary)}.image-upload-button:disabled{opacity:.6;cursor:not-allowed}.checkbox-group{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.checkbox-item{display:inline-flex;align-items:center;font-size:12px;gap:6px}.checkbox-item input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--color-primary)}.list-item{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);background:var(--color-background-secondary);display:flex;justify-content:space-between;align-items:center;transition:var(--transition-fast);margin-bottom:var(--spacing-xs)}.list-item:hover{border-color:var(--color-border);background:var(--color-background)}.list-item__content{flex:1}.list-item__title{font-size:13px;color:var(--color-text);font-weight:var(--font-weight-medium);margin-bottom:2px}.list-item__meta{font-size:11px;color:var(--color-text-light)}.list-item__actions{display:flex;gap:var(--spacing-xs)}.document-upload{margin-bottom:var(--spacing-sm)}.document-upload__button{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:8px 14px;font-size:12px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-background);cursor:pointer;transition:var(--transition-fast)}.document-upload__button:hover{border-color:var(--color-primary);background:var(--color-background-secondary)}.document-upload__success{font-size:11px;color:var(--color-success);margin-top:6px;display:flex;align-items:center;gap:4px}.about-me-section{margin-bottom:var(--spacing-md);padding:var(--spacing-md);border:1px solid var(--color-border-light);border-radius:var(--radius-md);background:#fffbf0}.about-me-section__title{font-size:14px;font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-sm);color:var(--color-text)}.custom-field{margin-top:var(--spacing-xs);padding:var(--spacing-xs);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);background:var(--color-background)}.custom-field__label{font-size:11px;color:var(--color-text);margin-bottom:4px}.tags-list{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-top:var(--spacing-xs)}.tag{display:inline-flex;align-items:center;padding:4px 10px;margin:2px;background-color:var(--color-gray-100);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);font-size:11px;gap:6px}.tag__remove{background:none;border:none;color:var(--color-danger);cursor:pointer;font-size:14px;padding:0;line-height:1;font-weight:700}.tag__remove:hover{color:var(--color-danger-dark)}.form-input--readonly{background-color:var(--color-background-secondary);cursor:not-allowed;opacity:.8}@media(max-width:768px){.image-upload-with-fields{grid-template-columns:1fr;gap:var(--spacing-sm)}.form-row--2{grid-template-columns:1fr}.form-row--3{grid-template-columns:repeat(3,minmax(0,1fr))!important}.form-row--4{grid-template-columns:repeat(4,minmax(0,1fr))!important}.add-resident-form{padding:var(--spacing-md)}.add-resident-form__navigation{flex-direction:column}.add-resident-form__navigation .btn{width:100%}}.form-group .form-group{margin-bottom:var(--spacing-sm)}.form-input:focus-visible,.form-select:focus-visible,.form-textarea:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.form-label--checkbox{display:flex;align-items:center;gap:var(--spacing-xs);cursor:pointer}.form-checkbox{width:18px;height:18px;cursor:pointer;accent-color:var(--color-primary)}.power-of-attorney-header{display:flex;align-items:center;gap:6px;margin-bottom:4px;flex-wrap:nowrap}.form-checkbox--circular{border-radius:3px;appearance:none;-webkit-appearance:none;width:18px;height:18px;min-width:18px;max-width:18px;border:1.5px solid var(--color-border);background-color:var(--color-background);cursor:pointer;position:relative;flex-shrink:0;margin:0;padding:0;box-sizing:border-box;pointer-events:auto}.form-checkbox--circular:checked{background-color:var(--color-primary);border-color:var(--color-primary)}.form-checkbox--circular:checked:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:12px;font-weight:700;line-height:1;display:block;pointer-events:none}.form-help-text{font-size:12px;color:var(--color-text-light);margin-top:6px;font-style:italic}.image-upload-preview-container{width:120px;height:120px;border-radius:var(--radius-md);border:2px dashed var(--color-border);display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--color-background-secondary);flex-shrink:0;position:relative}.image-upload-placeholder{text-align:center;color:var(--color-text-light);font-size:40px}.image-upload-controls{flex:1;display:flex;flex-direction:column;gap:var(--spacing-sm)}.image-upload-status{font-size:12px;color:#fff;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);font-weight:var(--font-weight-medium)}.image-upload-status .spinner{border-color:#ffffff4d;border-top-color:#fff}.spinner{width:14px;height:14px;border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.contacts-list{margin-top:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-xs)}.monitoring-card,.assessment-card{padding:var(--spacing-xs);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);background:var(--color-background)}.monitoring-card__header,.assessment-card__header{font-size:11px;display:flex;align-items:center;margin-bottom:var(--spacing-xs);gap:6px}.monitoring-card__schedule{margin-top:var(--spacing-xs)}.monitoring-card__schedule-label{font-size:10px;display:flex;align-items:center;margin-bottom:4px;gap:4px}.consent-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-xs);margin-bottom:var(--spacing-sm)}.consent-item{font-size:11px;display:flex;align-items:center;gap:6px}.section-compact{padding:var(--spacing-sm);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);background:var(--color-background-secondary);margin-bottom:var(--spacing-md)}.resident-monitorings-section .monitoring-hover-overlay{opacity:0;pointer-events:none;transition:opacity .2s ease}.resident-monitorings-section .monitoring-default-view{opacity:1;transition:opacity .2s ease}.resident-monitorings-grid-container{display:grid!important;grid-template-rows:repeat(3,140px)!important;grid-auto-flow:column!important;max-height:468px!important;overflow-y:hidden!important;width:100%!important}.resident-profile-card{background:var(--color-background-card);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-md);border:1px solid var(--color-border-light);box-shadow:var(--shadow-xs);overflow:visible}.resident-profile-grid{display:grid;grid-template-columns:160px 1fr;gap:24px;align-items:stretch;margin-bottom:24px}.resident-details-section{display:flex;flex-direction:column;gap:0;width:100%;height:100%}.resident-avatar{position:relative;width:160px;height:160px;min-width:160px;min-height:160px;border-radius:var(--radius-full);overflow:hidden;border:3px solid var(--color-border-light);background:var(--color-background-secondary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.resident-avatar img{width:100%;height:100%;object-fit:cover}.resident-avatar-editable{cursor:pointer;outline:none}.resident-avatar-editable:hover{box-shadow:0 0 0 3px var(--color-primary, #2563eb)}.resident-avatar-editable:focus-visible{box-shadow:0 0 0 3px var(--color-primary, #2563eb)}.resident-profile-image-upload-overlay{position:absolute;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:500;border-radius:inherit}.resident-avatar-initials{font-size:48px;color:var(--color-text-light)}.resident-treatment-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:0;margin-bottom:8px;width:100%;justify-content:center;align-items:center}.resident-dnr-badge,.resident-always-resuscitate-badge,.resident-refer-notes-badge,.resident-na-badge{padding:8px 16px;border-radius:20px;font-weight:600;font-size:14px;cursor:default;text-align:center;white-space:nowrap;flex:0 0 auto}.resident-dnr-badge{background:#fff;color:#dc3545;border:1px solid #dc3545}.resident-always-resuscitate-badge{background:#fff;color:#28a745;border:1px solid #28a745}.resident-refer-notes-badge,.resident-na-badge{background:#fff;color:#6c757d;border:1px solid #6c757d}.resident-dnr-badge.clickable{cursor:pointer}.resident-always-resuscitate-badge.clickable,.resident-refer-notes-badge.clickable,.resident-na-badge.clickable{cursor:pointer;transition:opacity .2s,transform .2s}.resident-always-resuscitate-badge.clickable:hover,.resident-refer-notes-badge.clickable:hover,.resident-na-badge.clickable:hover{opacity:.8;transform:scale(1.02)}.treatment-plan-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000}.treatment-plan-modal{background:var(--color-background-card);border-radius:var(--radius-md);padding:0;max-width:600px;width:90%;max-height:90vh;overflow:auto;box-shadow:var(--shadow-lg)}.treatment-plan-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--color-border-light)}.treatment-plan-modal-header h2{margin:0;font-size:20px;font-weight:600;color:var(--color-text)}.treatment-plan-modal-close{background:none;border:none;font-size:28px;cursor:pointer;color:var(--color-text);padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:background .2s}.treatment-plan-modal-close:hover{background:var(--color-background-secondary)}.treatment-plan-modal-content{padding:24px}.treatment-plan-error{padding:12px;background:var(--color-danger-light);color:var(--color-danger);border-radius:var(--radius-sm);margin-bottom:16px;border:1px solid var(--color-danger);font-size:14px}.treatment-plan-note{padding:12px;background:var(--color-background-secondary);border-radius:var(--radius-sm);margin:16px 0;border-left:3px solid var(--color-primary)}.treatment-plan-note p{margin:0;font-size:13px;color:var(--color-text);line-height:1.5}.treatment-plan-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid var(--color-border-light)}.treatment-plan-btn{padding:10px 20px;border-radius:var(--radius-sm);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none}.treatment-plan-btn:disabled{opacity:.6;cursor:not-allowed}.treatment-plan-btn-secondary{background:var(--color-background-secondary);color:var(--color-text);border:1px solid var(--color-border)}.treatment-plan-btn-secondary:hover:not(:disabled){background:var(--color-border-light)}.treatment-plan-btn-primary{background:var(--color-primary);color:#fff}.treatment-plan-btn-primary:hover:not(:disabled){background:var(--color-primary-dark, #0056b3)}.treatment-plan-modal-content .form-group{margin-bottom:20px}.treatment-plan-modal-content .form-label{display:block;margin-bottom:8px;font-weight:500;font-size:14px;color:var(--color-text)}.treatment-plan-modal-content .form-select,.treatment-plan-modal-content .form-textarea{width:100%;padding:10px 12px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:14px;font-family:inherit;background:var(--color-background);color:var(--color-text)}.treatment-plan-modal-content .form-select:focus,.treatment-plan-modal-content .form-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #007bff1a}.treatment-plan-modal-content .form-textarea{resize:vertical;min-height:100px}.resident-photo-caption{font-size:12px;color:var(--color-text-light);margin:8px 0;white-space:nowrap;text-align:center}.resident-details-grid{display:flex;flex-direction:column;justify-content:flex-start;gap:0;margin-bottom:0;margin-top:0}.resident-name-section{display:flex;flex-direction:column;gap:0;width:100%}.resident-name-section .resident-bio-card{margin-top:12px!important;margin-bottom:0!important;width:180%!important;max-width:1800px!important;align-self:flex-start}.resident-name-header{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;margin-bottom:16px}.resident-profile-card .resident-name,.resident-details-grid .resident-name,.resident-name-section .resident-name{color:#212529!important;font-size:24px;font-weight:600;margin:0;display:block;flex:1;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resident-edit-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid var(--color-border);border-radius:50%;background:var(--color-background);color:var(--color-text);cursor:pointer;transition:all .2s;flex-shrink:0}.resident-edit-button:hover{background:var(--color-background-secondary);border-color:var(--color-primary);color:var(--color-primary)}.resident-edit-button:active{transform:scale(.95)}.resident-edit-button svg{width:16px;height:16px}.resident-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px 200px;width:100%;margin-top:0;row-gap:16px}.resident-info-grid .info-item{display:flex;flex-direction:row;align-items:baseline;gap:6px;margin:0;padding:0;white-space:nowrap;min-width:0;border-bottom:none!important}.resident-profile-card .resident-info-grid .info-item,.resident-details-grid .resident-info-grid .info-item{border-bottom:none!important}.resident-profile-card .resident-info-label,.resident-details-grid .resident-info-label{font-size:13px;font-weight:500;color:#6c757d!important;margin:0;white-space:nowrap;flex-shrink:0}.resident-profile-card .resident-info-value,.resident-details-grid .resident-info-value{font-size:13px;font-weight:600;color:#212529!important;margin:0;word-break:break-word;flex:1;min-width:0}.resident-site-badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:13px;font-weight:500;white-space:nowrap;transition:opacity .2s ease}.resident-site-badge:hover{opacity:.9}.resident-site-select{padding:4px 12px;border-radius:20px;font-size:13px;font-weight:500;border:1px solid var(--color-border-light, #e5e7eb);background:#fff;color:var(--color-text-primary, #111827);cursor:pointer;min-width:140px}.resident-site-select:disabled{opacity:.7;cursor:not-allowed}.resident-bio-card{display:flex;flex-direction:column;gap:16px;flex:1;min-height:0}.resident-bio-content{background:var(--color-background-secondary);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);padding:16px;min-height:140px}.resident-bio-title{font-size:16px;font-weight:600;margin:0 0 12px;color:#212529!important}.resident-bio-text{font-size:13px;color:#212529!important;line-height:1.6;margin:0;white-space:pre-wrap}.resident-bio-textarea{width:100%;min-height:120px;padding:12px;font-size:13px;line-height:1.6;color:#212529;background:var(--color-background-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);resize:vertical;font-family:inherit;box-sizing:border-box}.resident-bio-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px rgba(var(--color-primary-rgb, 0, 102, 204),.2)}.resident-bio-textarea::placeholder{color:var(--color-text-light)}.resident-bio-save-btn{margin-top:12px;padding:8px 16px;font-size:13px;font-weight:500;color:#fff;background:var(--color-primary);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background .2s}.resident-bio-save-btn:hover:not(:disabled){background:var(--color-primary-dark, #0056b3)}.resident-bio-save-btn:disabled{opacity:.7;cursor:not-allowed}.resident-room-edit-input{max-width:140px;padding:6px 10px;font-size:13px;font-weight:600;color:var(--color-text, #212529);border:1px solid var(--color-border, #dee2e6);border-radius:6px;background:var(--color-background, #fff)}.resident-room-edit-input:focus{outline:none;border-color:var(--color-primary)}.resident-room-edit-input::placeholder{color:var(--color-text-light)}.resident-contacts-section{margin-top:12px;padding-top:0}.resident-contacts-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.resident-contacts-title{font-size:18px;font-weight:600;color:#212529!important;margin:0}.resident-add-contact-btn{padding:8px 16px;background:var(--color-primary);color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background .2s}.resident-add-contact-btn:hover{background:var(--color-primary-dark, #0056b3)}.resident-contacts-grid{display:flex;flex-direction:row;gap:12px;margin-bottom:12px;overflow-x:auto;overflow-y:hidden;padding-bottom:8px;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}.resident-contacts-grid::-webkit-scrollbar{height:6px}.resident-contacts-grid::-webkit-scrollbar-track{background:transparent}.resident-contacts-grid::-webkit-scrollbar-thumb{background-color:var(--color-border);border-radius:3px}.resident-contact-profile{padding:12px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-background-card);display:flex;flex-direction:column;gap:4px;transition:box-shadow .2s;min-width:200px;max-width:200px;flex-shrink:0}.resident-contact-profile:hover{box-shadow:0 2px 4px #0000001a}.resident-contact-profile-name{font-size:14px;font-weight:600;color:#212529!important;margin:0;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resident-contact-profile-relationship{font-size:12px;color:#6c757d!important;margin:0;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resident-contact-profile-phone{font-size:12px;color:#495057!important;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resident-contact-profile-email{font-size:12px;color:#495057!important;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;position:relative;transition:color .2s}.resident-contact-profile-email:hover{color:var(--color-primary)!important}.resident-contact-profile-email[data-copy-hint]:after{content:attr(data-copy-hint);position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:#333;color:#fff;padding:4px 8px;border-radius:4px;font-size:11px;white-space:nowrap;margin-bottom:4px;z-index:10;pointer-events:none;opacity:0;transition:opacity .2s}.resident-contact-profile-email:hover[data-copy-hint]:after{opacity:1}.resident-medicines-section{margin-top:12px;padding-top:0}.resident-medicines-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.resident-medicines-title{font-size:18px;font-weight:600;color:#212529!important;margin:0}.resident-no-medicines{font-size:13px;color:#6c757d!important;margin:0;padding:12px 0}.resident-medicines-grid{display:flex;flex-direction:row;gap:12px;margin-bottom:12px;overflow-x:auto;overflow-y:hidden;padding-bottom:8px;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}.resident-medicines-grid::-webkit-scrollbar{height:6px}.resident-medicines-grid::-webkit-scrollbar-track{background:transparent}.resident-medicines-grid::-webkit-scrollbar-thumb{background-color:var(--color-border);border-radius:3px}.resident-medicine-profile{padding:12px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-background-card);display:flex;flex-direction:column;gap:4px;transition:box-shadow .2s;min-width:200px;max-width:200px;flex-shrink:0}.resident-medicine-profile:hover{box-shadow:0 2px 4px #0000001a}.resident-medicine-profile-name{font-size:14px;font-weight:600;color:#212529!important;margin:0;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resident-medicine-profile-dosage{font-size:12px;color:#495057!important;margin:0;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resident-medicine-profile-form,.resident-medicine-profile-route{font-size:12px;color:#6c757d!important;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resident-risks-section{margin-top:12px;padding-top:0}.resident-risks-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.resident-risks-title{font-size:18px;font-weight:600;color:#212529!important;margin:0}.resident-risks-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.resident-risk-badge{display:inline-block;padding:6px 12px;background:var(--risk-bg, var(--color-danger-light, #fee2e2));color:var(--risk-color, var(--color-danger, #dc2626));border:1px solid var(--risk-color, var(--color-danger, #dc2626));border-radius:16px;font-size:12px;font-weight:500;white-space:nowrap;transition:all .2s}.resident-risk-badge:hover{background:var(--risk-color, var(--color-danger, #dc2626));color:#fff}.resident-monitorings-section{margin-top:0;padding-top:0;scrollbar-width:none;-ms-overflow-style:none}.resident-monitorings-section::-webkit-scrollbar{display:none}.monitoring-form-wrapper{scrollbar-width:none;-ms-overflow-style:none}.monitoring-form-wrapper::-webkit-scrollbar{display:none}.resident-monitorings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.resident-monitorings-title{font-size:18px;font-weight:600;color:#212529!important;margin:0}.resident-assign-monitoring-btn{padding:8px 16px;background:var(--color-primary);color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background .2s}.resident-assign-monitoring-btn:hover{background:var(--color-primary-dark, #0056b3)}.resident-monitorings-grid{display:flex;flex-direction:row;gap:12px;margin-bottom:12px;overflow-x:auto;overflow-y:hidden;padding-bottom:8px;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}.resident-monitorings-grid::-webkit-scrollbar{height:6px}.resident-monitorings-grid::-webkit-scrollbar-track{background:transparent}.resident-monitorings-grid::-webkit-scrollbar-thumb{background-color:var(--color-border);border-radius:3px}.resident-monitoring-profile{padding:12px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-background-card);display:flex;flex-direction:column;gap:4px;transition:box-shadow .2s;min-width:200px;max-width:200px;flex-shrink:0}.resident-monitoring-profile:hover{box-shadow:0 2px 4px #0000001a}.resident-monitoring-profile-name{font-size:14px;font-weight:600;color:#212529!important;margin:0;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resident-monitoring-profile-schedule{font-size:12px;color:#6c757d!important;margin:0;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resident-no-monitorings,.resident-loading{color:#6c757d;font-size:14px;margin:0;padding:12px 0}.resident-monitorings-scroll-container{scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}.resident-monitorings-scroll-container::-webkit-scrollbar{height:6px}.resident-monitorings-scroll-container::-webkit-scrollbar-track{background:transparent}.resident-monitorings-scroll-container::-webkit-scrollbar-thumb{background-color:var(--color-border);border-radius:3px}.resident-no-contacts{color:#6c757d;font-size:14px;font-style:italic;margin:0;padding:20px;text-align:center}.resident-view-more-contacts{padding:8px 16px;background:transparent;color:var(--color-primary);border:1px solid var(--color-primary);border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;margin-top:8px}.resident-view-more-contacts:hover{background:var(--color-primary);color:#fff}.resident-view-profile-btn{padding:10px var(--spacing-md);background:var(--color-danger);color:#fff;border:none;border-radius:var(--radius-sm);font-weight:var(--font-weight-medium);font-size:13px;cursor:pointer;transition:var(--transition-fast)}.resident-view-profile-btn:hover{background:var(--color-danger-dark)}.resident-main-panels{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.resident-panel{background:var(--color-background-card);border-radius:var(--radius-xl);border:2px solid var(--color-primary);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;flex:1;min-height:835px;max-height:835px;height:835px;overflow:hidden}.resident-panel-header{padding:12px 16px;border-bottom:1px solid rgba(224,224,224,.1);display:flex;justify-content:space-between;align-items:center;min-height:48px;height:48px;background-color:var(--color-primary);border-radius:18px 18px 0 0}.resident-panel-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin:0;color:var(--color-secondary)}.care-notes-download-button,.care-notes-expand-all-button{background:transparent;border:1px solid rgba(255,255,255,.3);color:#e0e0e0;cursor:pointer;border-radius:50%;width:32px;height:32px;min-width:32px;min-height:32px;padding:0;margin:0;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);font-size:14px;line-height:1}.care-notes-download-button:hover,.care-notes-expand-all-button:hover{background:#ffffff1a;border-color:#ffffff80;color:#fff}.care-notes-filter-container{position:relative;display:flex;align-items:center}.care-notes-filter-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;min-width:32px;min-height:32px;padding:0;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:transparent;color:#e0e0e0;cursor:pointer;transition:all var(--transition-fast);position:relative;font-size:14px;line-height:1}.care-notes-filter-icon:hover{background:#ffffff1a;border-color:#ffffff80;color:#fff}.care-notes-filter-icon.has-filters{border-color:#ffffff80;color:#fff}.filter-badge{position:absolute;top:-4px;right:-4px;width:8px;height:8px;background:var(--color-accent);border-radius:50%;border:2px solid var(--color-primary)}.care-notes-filter-panel{position:absolute;top:calc(100% + 8px);right:0;background:var(--color-background-card);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:1000;min-width:280px;max-width:400px}.care-notes-filter-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--color-border-light)}.care-notes-filter-header h4{margin:0;font-size:14px;font-weight:600;color:var(--color-text)}.care-notes-filter-close{background:none;border:none;font-size:24px;line-height:1;color:var(--color-text-light);cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;transition:color .2s}.care-notes-filter-close:hover{color:var(--color-text)}.care-notes-filter-content{padding:16px;display:flex;flex-direction:column;gap:16px}.care-notes-filter-group{display:flex;flex-direction:column;gap:8px}.care-notes-filter-group label{font-size:13px;font-weight:500;color:var(--color-text)}.care-notes-filter-select{padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:14px;font-family:inherit;background:var(--color-background);color:var(--color-text);cursor:pointer;transition:border-color .2s}.care-notes-filter-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #007bff1a}.care-notes-filter-clear{padding:8px 16px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-background-secondary);color:var(--color-text);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;margin-top:8px}.care-notes-filter-clear:hover{background:var(--color-border-light);border-color:var(--color-text-light)}.care-note-date-group{position:relative}.care-note-date-header{position:sticky;top:0;z-index:10;background:#f8f9fa;border-bottom:2px solid #dee2e6;text-align:center;transform:translateZ(0);backface-visibility:hidden;-webkit-font-smoothing:antialiased}.care-note-date-header.sticky{box-shadow:0 2px 4px #0000001a;background:#f8f9fafa}.care-note-date-header:hover{background-color:#e9ecef!important}.care-note-row-red-flag{background-color:#fee!important;border-left:3px solid #dc3545}.care-note-row-red-flag:hover{background-color:#fdd!important}.resident-export-btn{padding:6px 12px;font-size:12px;border:1px solid var(--color-border);border-radius:var(--radius-xs);background:var(--color-background);color:var(--color-text);cursor:pointer;transition:var(--transition-fast)}.resident-export-btn:hover{background:var(--color-background-secondary)}.resident-panel-controls{padding:var(--spacing-sm) 20px;border-bottom:1px solid var(--color-border-light);display:flex;align-items:center;gap:var(--spacing-sm);background:var(--color-background-secondary)}.resident-chart-toggle{padding:6px 12px;font-size:12px;border:none;border-radius:var(--radius-xs);cursor:pointer;transition:var(--transition-fast)}.resident-chart-toggle.active{background:var(--color-primary);color:#fff}.resident-chart-toggle.inactive{background:transparent;color:var(--color-text)}.resident-nav-buttons{margin-left:auto;display:flex;gap:var(--spacing-xs);align-items:center}.resident-nav-btn{padding:4px 8px;border:1px solid var(--color-border);border-radius:var(--radius-xs);background:var(--color-background);cursor:pointer}.resident-panel-content{flex:1;overflow:hidden;padding:20px;display:flex;flex-direction:column;min-height:0;position:relative;scrollbar-width:none;-ms-overflow-style:none}.resident-panel-content::-webkit-scrollbar{display:none}.resident-panel-content .care-notes-flip-face.back{padding:0!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch}.resident-panel-content .care-notes-flip-face.back>div{padding:0!important;margin:0!important;height:100%;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch}.resident-panel-content .care-notes-flip-face.back>div>div{padding:0!important;margin:0!important;min-height:100%}.resident-panel-content .care-notes-flip-face.back{scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.2) transparent}.resident-panel-content .care-notes-flip-face.back::-webkit-scrollbar{width:8px}.resident-panel-content .care-notes-flip-face.back::-webkit-scrollbar-track{background:transparent}.resident-panel-content .care-notes-flip-face.back::-webkit-scrollbar-thumb{background-color:#0003;border-radius:4px}.resident-panel-content .care-notes-flip-face.back::-webkit-scrollbar-thumb:hover{background-color:#0000004d}.care-notes-flip-inner{width:100%;height:100%;perspective:1000px}.care-notes-flip-face{width:100%;height:100%;backface-visibility:hidden;-webkit-backface-visibility:hidden}.care-notes-flip-face.front{transform:rotateY(0)}.care-notes-flip-face.back{transform:rotateY(180deg)}.resident-profile-main-layout{display:grid;grid-template-columns:50% 50%;gap:var(--spacing-sm);align-items:stretch;width:100%;min-height:835px;max-height:835px;height:835px}.resident-profile-left-box{display:flex;flex-direction:column;width:100%}.resident-profile-right-box{display:flex;flex-direction:column;width:100%;height:835px;min-height:835px;max-height:835px}.resident-allergies-more{transition:color .2s}.resident-allergies-more:hover{color:var(--color-primary-dark, #0056b3)!important}.resident-allergies-tooltip{pointer-events:auto}.resident-allergies-tooltip ul{list-style-type:disc}.resident-allergies-tooltip li{word-break:break-word}@media(max-width:1024px){.resident-profile-main-layout{grid-template-columns:1fr;gap:var(--spacing-md)}.resident-profile-grid{grid-template-columns:140px 1fr 350px;gap:20px}.resident-avatar{width:140px;height:140px;min-width:140px;min-height:140px}.resident-main-panels{grid-template-columns:1fr;gap:var(--spacing-sm)}.resident-panel{max-height:835px;height:835px}.resident-contacts{flex-wrap:wrap}.resident-contact-card{min-width:180px}}@media(max-width:768px){.resident-profile-main-layout{grid-template-columns:1fr;gap:var(--spacing-md)}.resident-profile-grid{grid-template-columns:120px 1fr;gap:16px}.resident-bio-card{grid-column:1 / -1;margin-top:12px!important;width:100%!important;max-width:100%!important}.resident-name-section .resident-bio-card{width:100%!important;max-width:100%!important}.resident-avatar{width:120px;height:120px;min-width:120px;min-height:120px}.resident-info-grid{grid-template-columns:1fr;gap:12px}.resident-contacts{flex-direction:column;gap:12px}.resident-contact-card{width:100%;min-width:auto}.resident-main-panels{grid-template-columns:1fr}.resident-panel-controls{padding:var(--spacing-xs) var(--spacing-md)}.resident-panel-content{padding:var(--spacing-md)}}.resident-qr-code-section{margin-top:auto;padding:4px 12px;background:transparent;border:1px solid #000000;border-radius:20px;display:flex;flex-direction:column;gap:4px;min-height:fit-content}.resident-qr-code-header{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:500;line-height:1.2;gap:8px}.resident-qr-code-title{color:#000;white-space:nowrap}.resident-qr-code-header-actions{display:flex;align-items:center;gap:6px}.resident-qr-code-error-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.resident-qr-code-download-container{position:relative}.resident-qr-code-button{display:flex;align-items:center;justify-content:center;width:24px;height:24px;min-width:24px;min-height:24px;padding:0;border:none;border-radius:4px;background:transparent;color:#333;cursor:pointer;transition:all var(--transition-fast)}.resident-qr-code-button:hover:not(:disabled){background:#0000000d;color:#000}.resident-qr-code-button:disabled{opacity:.5;cursor:not-allowed}.resident-qr-code-button svg{width:16px;height:16px;flex-shrink:0}.resident-qr-code-download{background:transparent;color:#333;border:none}.resident-qr-code-download:hover:not(:disabled){background:#0000000d;color:#000}.resident-qr-code-regenerate{background:transparent;color:#333;border:none}.resident-qr-code-regenerate:hover:not(:disabled){background:#0000000d;color:#000}.resident-qr-code-regenerate{background:var(--color-background);color:var(--color-text)}.resident-qr-code-download-menu{position:absolute;top:100%;left:0;margin-top:4px;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:0 4px 12px #00000026;z-index:1000;min-width:200px;overflow:hidden}.resident-qr-code-download-option{display:block;width:100%;padding:10px 16px;text-align:left;border:none;background:transparent;color:var(--color-text);font-size:13px;cursor:pointer;transition:background-color var(--transition-fast)}.resident-qr-code-download-option:hover:not(:disabled){background:var(--color-background-hover)}.resident-qr-code-download-option:disabled{opacity:.5;cursor:not-allowed}.resident-qr-code-download-option:not(:last-child){border-bottom:1px solid var(--color-border)}.resident-qr-code-error{color:var(--color-error, #dc3545);font-size:12px;text-align:center;padding:4px 8px;background:#dc35451a;border-radius:var(--radius-sm)}.resident-dropdown-menu{position:fixed;top:78px;background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 4px 12px #00000026;z-index:1000;max-height:500px;overflow:hidden;max-width:none!important}.resident-dropdown-content{display:flex;flex-direction:row;gap:-10px;padding:16px;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}.resident-dropdown-content::-webkit-scrollbar{height:6px}.resident-dropdown-content::-webkit-scrollbar-track{background:transparent}.resident-dropdown-content::-webkit-scrollbar-thumb{background-color:var(--color-border);border-radius:3px}.resident-dropdown-item{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px;background:transparent;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all .2s;min-width:180px;width:180px;flex-shrink:0;outline:none}.resident-dropdown-item:hover:not(:disabled){transform:translateY(-2px)}.resident-dropdown-item:focus{outline:none}.resident-dropdown-item:disabled{opacity:.5;cursor:not-allowed}.resident-dropdown-avatar{width:80px;height:80px;border-radius:50%;overflow:hidden;border:2px solid var(--color-border-light);display:flex;align-items:center;justify-content:center;background:var(--color-background-secondary);flex-shrink:0}.resident-dropdown-avatar img{width:100%;height:100%;object-fit:cover}.resident-dropdown-initials{font-size:20px;font-weight:600;color:var(--color-text);display:flex;align-items:center;justify-content:center;width:100%;height:100%}.resident-dropdown-name{font-size:12px;font-weight:500;color:var(--color-text);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px;width:100%}.resident-dropdown-site{font-size:11px;font-weight:400;color:var(--color-text-light);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px;width:100%;margin-top:-4px}.resident-dropdown-empty{padding:20px;text-align:center;color:var(--color-text-light);font-size:14px}.site-profile-content.blurred{filter:blur(4px);transition:filter .2s ease;pointer-events:none;-webkit-user-select:none;user-select:none}.header-action-btn:focus{outline:none;background:transparent;border-color:#ffffff4d;color:#e0e0e0}.header-action-btn:active{outline:none;background:#ffffff1a;border-color:#ffffff80;color:#fff}.weight-chart-container{scrollbar-width:thin;scrollbar-color:transparent transparent;transition:scrollbar-color .3s ease;margin:0!important;padding-left:0!important;padding-right:0!important;box-sizing:border-box;-webkit-overflow-scrolling:touch}.weight-chart-container:hover{scrollbar-color:rgba(0,0,0,.3) transparent}.weight-chart-container::-webkit-scrollbar{height:8px;width:8px}.weight-chart-container::-webkit-scrollbar-track{background:transparent;margin:0;border-radius:0}.weight-chart-container::-webkit-scrollbar-thumb{background-color:transparent;border-radius:4px;transition:background-color .2s ease;border:none}.weight-chart-container:hover::-webkit-scrollbar-thumb{background-color:#0000004d!important}.weight-chart-container::-webkit-scrollbar-thumb:hover{background-color:#00000080!important}.monitoring-settings-panel-container{scrollbar-width:thin;scrollbar-color:rgba(46,46,46,.3) transparent}.monitoring-settings-panel-container::-webkit-scrollbar{width:8px}.monitoring-settings-panel-container::-webkit-scrollbar-track{background:transparent}.monitoring-settings-panel-container::-webkit-scrollbar-thumb{background-color:#2e2e2e4d;border-radius:4px;border:2px solid transparent;background-clip:padding-box}.monitoring-settings-panel-container::-webkit-scrollbar-thumb:hover{background-color:#2e2e2e80}.hideScrollbar{scrollbar-width:none;-ms-overflow-style:none}.hideScrollbar::-webkit-scrollbar{width:0;height:0}.hideScrollbar:hover,.hideScrollbar:focus,.hideScrollbar:focus-within,.hideScrollbar:active{scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.35) transparent}.hideScrollbar:hover::-webkit-scrollbar,.hideScrollbar:focus::-webkit-scrollbar,.hideScrollbar:focus-within::-webkit-scrollbar,.hideScrollbar:active::-webkit-scrollbar{width:8px;height:8px}.hideScrollbar::-webkit-scrollbar-thumb{background:transparent;border-radius:9999px}.hideScrollbar:hover::-webkit-scrollbar-thumb,.hideScrollbar:focus::-webkit-scrollbar-thumb,.hideScrollbar:focus-within::-webkit-scrollbar-thumb,.hideScrollbar:active::-webkit-scrollbar-thumb{background:#00000059}.hideScrollbar::-webkit-scrollbar-track{background:transparent}.risk-assessment-table-container{width:100%;background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a;margin-top:0}.risk-assessment-table-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:16px}.table-title{margin:0;font-size:18px;font-weight:600;color:#333}.table-controls{display:flex;align-items:center;gap:12px}.table-wrapper{overflow-x:auto;border:1px solid #e0e0e0;border-radius:6px;margin-bottom:16px}.risk-assessment-table{width:100%;border-collapse:collapse;background:#fff;font-size:14px}.risk-assessment-table thead{background:#f5f5f5;border-bottom:2px solid #e0e0e0}.risk-assessment-table th{padding:12px 16px;text-align:left;font-weight:600;color:#555;font-size:13px;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e0e0e0;white-space:nowrap}.risk-assessment-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s ease}.risk-assessment-table th.sortable:hover{background-color:#eee}.risk-assessment-table tbody tr{border-bottom:1px solid #f0f0f0;transition:background-color .2s ease}.risk-assessment-table tbody tr:hover{background-color:#f9f9f9}.risk-assessment-table tbody tr:last-child{border-bottom:none}.risk-assessment-table td{padding:12px 16px;color:#333;vertical-align:middle}.risk-level-badge{display:inline-block;font-size:12px;font-weight:600;padding:4px 10px;border-radius:12px;text-transform:capitalize}.view-record-btn{background:#007bff;color:#fff;border:none;padding:6px 12px;border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease}.view-record-btn:hover{background:#0056b3;transform:translateY(-1px);box-shadow:0 2px 4px #007bff4d}.view-record-btn:active{transform:translateY(0)}.table-footer{display:flex;justify-content:flex-end;padding-top:12px;border-top:1px solid #e0e0e0}.record-count{font-size:12px;color:#666;font-style:italic}.empty-state{padding:60px 20px;text-align:center;color:#666}.empty-state-icon{font-size:48px;margin-bottom:16px;opacity:.5}.empty-state p{margin:8px 0;font-size:14px}.empty-state-hint{font-size:12px;color:#999;font-style:italic;margin-top:8px!important}.loading-state{padding:60px 20px;text-align:center;color:#666}.loading-state p{margin:0;font-size:14px}.error-message{padding:20px;background:#fff3cd;border:1px solid #ffc107;border-radius:4px;color:#856404;text-align:center}.error-message strong{display:block;margin-bottom:8px;font-size:16px}.error-message p{margin:0;font-size:14px}@media(max-width:768px){.risk-assessment-table-header{flex-direction:column;align-items:flex-start}.table-controls{width:100%}.risk-assessment-table{font-size:12px}.risk-assessment-table th,.risk-assessment-table td{padding:8px 12px}}@media print{.risk-assessment-table-container{box-shadow:none;padding:0}.risk-assessment-table-header{margin-bottom:10px}.table-controls,.view-record-btn{display:none}.risk-assessment-table,.risk-assessment-table th,.risk-assessment-table td{border:1px solid #000}}.update-request-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000}.update-request-modal{background:#fff;border-radius:12px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.update-request-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb}.update-request-modal-header h3{margin:0;font-size:18px;font-weight:600;color:#1f2937}.update-request-modal-close{background:none;border:none;font-size:28px;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background-color .2s}.update-request-modal-close:hover{background-color:#f3f4f6}.update-request-modal-form{padding:24px}.update-request-field-group{margin-bottom:20px}.update-request-field-group label{display:block;margin-bottom:8px;font-weight:500;color:#374151;font-size:14px}.update-request-readonly-field{padding:10px 12px;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280;font-size:14px}.update-request-modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px;border-top:1px solid #e5e7eb}.update-request-btn-cancel,.update-request-btn-submit{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none}.update-request-btn-cancel{background-color:#f3f4f6;color:#374151}.update-request-btn-cancel:hover:not(:disabled){background-color:#e5e7eb}.update-request-btn-submit{background-color:#3b82f6;color:#fff}.update-request-btn-submit:hover:not(:disabled){background-color:#2563eb}.update-request-btn-submit:disabled,.update-request-btn-cancel:disabled{opacity:.5;cursor:not-allowed}.update-request-error{padding:12px;background-color:#fee2e2;color:#991b1b;border-radius:6px;margin-bottom:16px;font-size:14px}.mar-admin-form{padding:20px;max-width:500px}.mar-admin-form .form-group{margin-bottom:16px}.mar-admin-form label{display:block;margin-bottom:6px;font-weight:500;color:#333}.mar-admin-form input[type=text],.mar-admin-form input[type=time],.mar-admin-form select,.mar-admin-form textarea{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;box-sizing:border-box}.mar-admin-form textarea{resize:vertical;min-height:60px}.mar-admin-form .form-actions{display:flex;gap:12px;margin-top:24px;justify-content:flex-end}.mar-admin-form .btn{padding:10px 20px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s}.mar-admin-form .btn-primary{background-color:#3498db;color:#fff}.mar-admin-form .btn-primary:hover:not(:disabled){background-color:#2980b9}.mar-admin-form .btn-secondary{background-color:#95a5a6;color:#fff}.mar-admin-form .btn-secondary:hover:not(:disabled){background-color:#7f8c8d}.mar-admin-form .btn:disabled{opacity:.6;cursor:not-allowed}.mar-chart-view{padding:0;background:#fff;height:100%;max-height:100%;display:flex;flex-direction:column;overflow:hidden;position:relative}.mar-pagination{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:20px;padding:12px;background:#f5f5f5;border-top:1px solid #ddd}.mar-resident-details-wrapper{display:flex;width:100%;margin:0;padding:12px 0 0 12px;position:sticky;top:0;z-index:100;background:#fff;flex-shrink:0}.mar-resident-details-box{background:#fff;border:1px solid #e0e0e0;border-radius:12px;padding:0;box-shadow:0 1px 3px #0000001a;width:35%;max-width:420px;flex-shrink:0}.mar-resident-details-inner{display:flex!important;gap:20px;align-items:flex-start;position:relative;padding:0 16px;margin:0}.mar-resident-image-wrapper{display:flex;flex-direction:column;align-items:center;gap:8px;flex-shrink:0}.mar-resident-details{display:flex!important;gap:20px;margin-bottom:20px;padding:15px 0!important;background:transparent!important;border:none!important;border-radius:0!important}.mar-resident-image{width:100px;height:100px;min-width:100px;min-height:100px;border-radius:50%!important;overflow:hidden;background:#e0e0e0;display:flex;align-items:center;justify-content:center;flex-shrink:0;align-self:flex-start;margin-top:0}.mar-resident-image img{width:100%;height:100%;object-fit:cover}.mar-resident-initials{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:600;color:#666}.mar-site-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;white-space:nowrap;text-align:center;display:inline-block}.mar-meds-due-badge{background:#ff9800;color:#fff;padding:2px 8px;border-radius:8px;font-size:12px;font-weight:600;margin-left:4px}.mar-resident-info{flex:1;display:flex;flex-direction:column;gap:8px;justify-content:space-between;min-height:100px}.mar-resident-name{font-size:20px;font-weight:600;color:#000;margin-top:0;padding-top:0;line-height:1.2}.mar-resident-details-grid{display:flex!important;flex-direction:column!important;gap:8px;justify-content:flex-end;flex:1}.mar-resident-detail-item{display:flex;gap:8px;font-size:14px}.mar-resident-detail-label{font-weight:600;color:#333;min-width:120px}.mar-resident-detail-value{color:#666}.mar-allergies-more{transition:color .2s}.mar-allergies-more:hover{color:#1976d2!important}.mar-allergies-tooltip{pointer-events:auto}.mar-allergies-tooltip ul{list-style-type:disc}.mar-allergies-tooltip li{word-break:break-word}.mar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;position:relative}.mar-header-left{flex:1;display:flex;align-items:center}.mar-header-right{flex:1}.mar-controls{display:flex;align-items:center;gap:15px}.mar-controls-centered{position:absolute;left:50%;transform:translate(-50%)}.mar-controls-inline{display:flex;align-items:center;gap:15px}.mar-month-navigation-capsule{display:flex;align-items:center;gap:4px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:20px;padding:4px 8px}.mar-month-year-capsule{display:flex;align-items:center;gap:4px;padding:0 8px;min-width:80px;justify-content:center}.mar-month-year-capsule .mar-month-name{font-size:14px;font-weight:600;color:var(--color-background)}.mar-month-year-capsule .mar-year-name{font-size:14px;font-weight:600;color:var(--color-background);opacity:.9}.mar-page-navigation-capsule{display:flex;align-items:center;gap:4px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:20px;padding:4px 8px}.mar-page-capsule{display:flex;align-items:center;gap:4px;padding:0 8px;min-width:80px;justify-content:center}.mar-page-capsule .mar-page-text{font-size:14px;font-weight:600;color:var(--color-background)}.mar-today-view-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:20px;padding:8px 16px;cursor:pointer;font-size:14px;font-weight:500;color:var(--color-background);transition:all .2s;white-space:nowrap}.mar-today-view-btn:hover{background:#fff3;border-color:#ffffff4d}.mar-nav-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:6px;padding:8px 12px;cursor:pointer;font-size:18px;font-weight:700;color:var(--color-background);transition:all .2s;min-width:40px;display:flex;align-items:center;justify-content:center}.mar-nav-btn-today{background:#f5f5f5;border:1px solid #ddd;border-radius:6px;padding:8px 12px;cursor:pointer;color:#333;transition:all .2s;min-width:40px;display:flex;align-items:center;justify-content:center}.mar-nav-btn-today svg{width:16px;height:16px}.mar-nav-btn-today:hover{background:#e0e0e0;border-color:#bbb}.mar-nav-btn:hover{background:#fff3;border-color:#ffffff4d}.mar-nav-btn:active{background:#d0d0d0}.mar-month-year-display{display:flex;align-items:center;gap:8px;min-width:200px;justify-content:center}.mar-month-name{font-size:18px;font-weight:600;color:var(--color-background)}.mar-year-name{font-size:18px;font-weight:600;color:var(--color-background);opacity:.9}.mar-month-select,.mar-year-input{padding:8px 12px;border:1px solid #ccc;border-radius:4px;font-size:14px}.mar-year-input{width:80px}.mar-table-container{overflow-x:auto;border:1px solid #000;border-radius:8px;overflow:hidden;flex:1;min-height:0;max-height:calc(100vh - 300px);overflow-y:hidden;margin:0 12px}.mar-table{width:100%;border-collapse:separate;border-spacing:0;font-size:12px;background:#fff;border-radius:8px;overflow:hidden}.mar-table thead{background:#d0d0d0;position:sticky;top:0;z-index:10}.mar-table thead tr:first-child th:first-child{border-top-left-radius:8px}.mar-table thead tr:first-child th:last-child{border-top-right-radius:8px}.mar-table th{border:1px solid #000;padding:8px 4px;text-align:center;font-weight:700;background:#d0d0d0;font-size:11px}.mar-table th:first-child{border-left:1px solid #000}.mar-table th:last-child{border-right:1px solid #000}.mar-col-medication{min-width:250px;max-width:250px;text-align:left;padding:8px;vertical-align:top}.mar-medicine-even{background-color:#e8e8e8!important}.mar-medicine-odd{background-color:#fff!important}.mar-medicine-name{font-weight:600;margin-bottom:8px;font-size:12px;line-height:1.4}.mar-medicine-section{margin-top:10px;padding-top:8px;border-top:1px solid #e0e0e0}.mar-medicine-section-inline{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;line-height:1.6}.mar-medicine-section-centered{justify-content:center;text-align:center}.mar-medicine-section-centered .mar-medicine-badges-wrapper{justify-content:center}.mar-medicine-section-header{font-size:11px;color:#333;font-weight:700;white-space:nowrap;flex-shrink:0}.mar-medicine-badges-wrapper{flex:1;min-width:0}.mar-medicine-badges{display:inline-flex;flex-wrap:wrap;gap:4px;align-items:center;width:100%}.mar-medicine-badges:after{content:"";flex-basis:100%;width:0;order:999}.mar-medicine-badge{display:inline-block;padding:3px 8px;border-radius:4px;font-size:10px;font-weight:500;white-space:nowrap;line-height:1.4}.mar-warning-badge{background:#fff3cd;color:#856404;border:1px solid #ffc107}.mar-instruction-badge{background:#d1ecf1;color:#0c5460;border:1px solid #17a2b8}.mar-col-hour{min-width:60px;max-width:60px;text-align:center;font-weight:700}.mar-col-day{min-width:30px;max-width:30px;text-align:center}.mar-table tbody tr:last-child td:first-child{border-bottom-left-radius:8px}.mar-table tbody tr:last-child td:last-child{border-bottom-right-radius:8px}.mar-table td{border:1px solid #000;padding:4px;text-align:center;vertical-align:middle;min-height:30px}.mar-table td:first-child{border-left:1px solid #000}.mar-table td:last-child{border-right:1px solid #000}.mar-cell{cursor:pointer;transition:all .2s;font-weight:700;font-size:14px}.mar-cell:hover{opacity:.8;transform:scale(1.1);z-index:5;position:relative}.mar-loading,.mar-error{text-align:center;padding:40px;font-size:16px}.mar-error{color:#f44336;background:#ffebee;border:1px solid #f44336;border-radius:4px;margin-bottom:20px}.mar-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10001}.mar-modal{background:#fff;padding:30px;border-radius:8px;max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.mar-admin-form .form-group{margin-bottom:20px}.mar-admin-form label{display:block;margin-bottom:8px;font-weight:600;color:#333}.mar-admin-form input,.mar-admin-form select,.mar-admin-form textarea{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px}.mar-admin-form textarea{resize:vertical;min-height:80px}.form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.btn{padding:10px 20px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:600;transition:all .2s}.btn-primary{background:#2196f3;color:#fff}.btn-primary:hover{background:#1976d2}.btn-secondary{background:#757575;color:#fff}.btn-secondary:hover{background:#616161}.mar-cell-not-scheduled{font-weight:600;font-size:11px;-webkit-user-select:none;user-select:none}.mar-legend{margin-top:20px;margin-left:20px;margin-right:20px;padding:15px!important;background:#fff!important;border:1px solid #ddd!important;border-radius:8px!important;display:flex;flex-wrap:wrap;gap:15px;box-shadow:0 1px 3px #0000001a!important;position:sticky;top:140px;z-index:99;flex-shrink:0}.mar-legend-item{display:flex;align-items:center;gap:8px;font-size:13px}.mar-legend-label{font-weight:600;padding:4px 8px;border-radius:4px;min-width:30px;text-align:center}.mar-legend-description{color:#666}.mar-col-day-today{background-color:#fff9c4!important;font-weight:600}.mar-cell-overdue{animation:blink-red 1.5s infinite;box-shadow:0 0 8px #f4433699}@keyframes blink-red{0%,to{background-color:#ffebee;box-shadow:0 0 8px #f4433699}50%{background-color:#ffcdd2;box-shadow:0 0 12px #f44336cc}}.mar-cell-upcoming{animation:blink-yellow 1.5s infinite;box-shadow:0 0 8px #ffeb3b99}@keyframes blink-yellow{0%,to{background-color:#fff9c4;box-shadow:0 0 8px #ffeb3b99}50%{background-color:#fff59d;box-shadow:0 0 12px #ffeb3bcc}}.mar-admin-form{position:relative}.emar-view{padding:20px;max-width:1200px;margin:0 auto}.emar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #e0e0e0}.emar-header h2{margin:0;color:#2c3e50}.emar-controls{display:flex;gap:10px;align-items:center}.emar-date-picker{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.emar-error{background-color:#ffebee;color:#c62828;padding:12px;border-radius:4px;margin-bottom:20px}.emar-loading{text-align:center;padding:40px;color:#6c757d}.emar-prn-section{margin-bottom:30px;padding:20px;background-color:#f5f5f5;border-radius:8px}.emar-prn-section h3{margin-top:0;color:#2c3e50}.emar-prn-list{display:flex;flex-direction:column;gap:10px}.emar-prn-item{display:flex;justify-content:space-between;align-items:center;padding:15px;background-color:#fff;border-radius:6px;border-left:4px solid #2196f3}.prn-info{flex:1}.emar-scheduled-section{margin-top:30px}.emar-scheduled-section h3{margin-bottom:15px;color:#2c3e50}.emar-empty{text-align:center;padding:40px;color:#6c757d;background-color:#f5f5f5;border-radius:8px}.emar-records-list{display:flex;flex-direction:column;gap:15px}.emar-record{background-color:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a;transition:box-shadow .2s}.emar-record:hover{box-shadow:0 4px 8px #00000026}.emar-record-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.emar-record-time{font-size:18px;font-weight:700;color:#2c3e50}.status-badge{padding:4px 12px;border-radius:12px;color:#fff;font-size:12px;font-weight:600;text-transform:uppercase}.medicine-name{font-size:16px;margin-bottom:5px;color:#2c3e50}.medicine-details{color:#6c757d;font-size:14px;margin-bottom:8px}.medicine-instructions{margin-top:8px;color:#757575}.controlled-drug-badge{display:inline-block;margin-top:8px;padding:4px 8px;background-color:#fff3cd;color:#856404;border-radius:4px;font-size:12px;font-weight:600}.administered-info,.withheld-info,.refused-info{margin-top:8px;padding:8px;background-color:#f5f5f5;border-radius:4px}.emar-notes{margin-top:10px;padding-top:10px;border-top:1px solid #e0e0e0;color:#6c757d}.emar-record-actions{display:flex;gap:10px;margin-top:15px;padding-top:15px;border-top:1px solid #e0e0e0}.btn{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s}.btn-primary{background-color:#2196f3;color:#fff}.btn-primary:hover{background-color:#1976d2}.btn-success{background-color:#4caf50;color:#fff}.btn-success:hover{background-color:#45a049}.btn-warning{background-color:#ff9800;color:#fff}.btn-warning:hover{background-color:#f57c00}.btn-danger{background-color:#f44336;color:#fff}.btn-danger:hover{background-color:#da190b}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover{background-color:#5a6268}.btn-sm{padding:6px 12px;font-size:12px}.emar-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.emar-modal{background-color:#fff;border-radius:8px;padding:30px;max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.emar-modal h3{margin-top:0;margin-bottom:20px;color:#2c3e50}.emar-admin-form,.emar-prn-form{display:flex;flex-direction:column;gap:15px}.form-group{display:flex;flex-direction:column;gap:5px}.form-group label{font-weight:500;color:#2c3e50;font-size:14px}.form-group input,.form-group select,.form-group textarea{padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:inherit}.form-group textarea{resize:vertical;min-height:80px}.form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:10px}.emar-record.administered{background-color:#f1f8f4}.emar-record.missed{background-color:#ffebee}.emar-record.withheld{background-color:#fff3e0}.emar-record.refused{background-color:#f3e5f5}.emar-record.due{background-color:#fff9e6}.site-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 200px;width:100%;margin-top:0}.site-info-grid .info-item{display:flex;flex-direction:row;align-items:baseline;gap:6px;margin:0;padding:0;white-space:nowrap;min-width:0;background:transparent!important;border:none!important;border-bottom:none!important}.site-profile-card .site-info-grid .info-item,.site-profile-summary .site-info-grid .info-item{background:transparent!important;border:none!important;border-bottom:none!important;padding:0!important}.site-profile-card .site-info-label,.site-profile-summary .site-info-label{font-size:13px;font-weight:500;color:#6c757d!important;margin:0;white-space:nowrap;flex-shrink:0}.site-profile-card .site-info-value,.site-profile-summary .site-info-value{font-size:13px;font-weight:600;color:#212529!important;margin:0;word-break:break-word}.site-profile-main-layout{display:grid;grid-template-columns:50% 50%;gap:var(--spacing-sm);align-items:stretch;width:100%;min-height:835px;max-height:835px;height:835px}.site-profile-left-box{display:flex;flex-direction:column;width:100%;overflow-y:auto}.site-profile-right-box{display:flex;flex-direction:column;width:100%;height:835px;min-height:835px;max-height:835px;overflow:hidden}.site-profile-grid{display:grid;grid-template-columns:180px 1fr;gap:24px;align-items:start;margin-bottom:24px}.site-profile-card{background:var(--color-background-card, #fff);border-radius:var(--radius-md, 12px);padding:var(--spacing-md, 16px);margin-bottom:var(--spacing-md, 16px);border:1px solid var(--color-border-light, #e5e7eb);box-shadow:var(--shadow-xs, 0 1px 2px rgba(0, 0, 0, .05));height:100%;display:flex;flex-direction:column;overflow:visible}.site-avatar{width:160px;height:160px;min-width:160px;min-height:160px;border-radius:var(--radius-full, 50%);overflow:hidden;border:3px solid var(--color-border-light, #e5e7eb);background:var(--color-background-secondary, #6b7280);display:flex;align-items:center;justify-content:center}.site-capacity-badge{padding:8px 16px;border-radius:20px;font-weight:600;font-size:14px;cursor:default;text-align:center;white-space:nowrap;display:flex;align-items:center;gap:6px;background:#fff;color:#198754;border:1px solid #198754;transition:all .2s ease}.site-capacity-badge.at-capacity{color:#dc3545;border-color:#dc3545}.site-capacity-badge.clickable{cursor:pointer}.site-capacity-badge.clickable:hover{opacity:.8;transform:scale(1.02)}.site-profile-avatar-section{display:flex;flex-direction:column;align-items:center;margin-bottom:var(--spacing-lg)}.site-profile-avatar{width:160px;height:160px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:64px;font-weight:700;color:#fff;border:3px solid #fff;box-shadow:0 2px 8px #0000001a}.site-details-section{flex:1;display:flex;flex-direction:column}.site-details-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.site-detail-item{display:flex;flex-direction:column;gap:4px}.site-detail-label{font-size:12px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.site-detail-value{font-size:14px;color:#333;font-weight:500}.site-detail-input{padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;color:#333;background:#fff}.site-detail-input.editable{border-color:#f44;background:#fff}.site-detail-input.editable:focus{outline:none;border-color:#f44;box-shadow:0 0 0 3px #f444391a}.site-detail-color-input{width:50px;height:40px;border:1px solid #ddd;border-radius:4px;cursor:pointer}.site-edit-actions{margin-top:var(--spacing-lg);display:flex;gap:var(--spacing-md);justify-content:flex-end}.site-panel{background:var(--color-background-card, #fff);border-radius:var(--radius-xl, 18px);border:2px solid var(--color-primary, #000);box-shadow:var(--shadow-sm, 0 2px 4px rgba(0,0,0,.1));display:flex;flex-direction:column;flex:1;min-height:835px;max-height:835px;height:835px;overflow:hidden}.site-panel-header{padding:12px 16px;border-bottom:1px solid rgba(224,224,224,.1);display:flex;justify-content:space-between;align-items:center;min-height:48px;height:48px;background-color:var(--color-primary, #000);border-radius:18px 18px 0 0}.site-panel-title{font-size:var(--font-size-lg, 18px);font-weight:var(--font-weight-semibold, 600);margin:0;color:var(--color-secondary, #fff)}.site-panel-content{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;min-height:0;position:relative}.site-compliance-monitorings-container::-webkit-scrollbar{width:8px}.site-compliance-monitorings-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.site-compliance-monitorings-container::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.site-compliance-monitorings-container::-webkit-scrollbar-thumb:hover{background:#555}.site-profile-left-box::-webkit-scrollbar{width:8px}.site-profile-left-box::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.site-profile-left-box::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.site-profile-left-box::-webkit-scrollbar-thumb:hover{background:#555}.site-profile-right-box::-webkit-scrollbar{width:8px}.site-profile-right-box::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.site-profile-right-box::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.site-profile-right-box::-webkit-scrollbar-thumb:hover{background:#555}.site-residents-section{margin-top:24px;padding-top:0;border-top:none}.site-residents-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.site-residents-title{font-size:18px;font-weight:600;color:#212529!important;margin:0}.site-residents-grid{display:flex;flex-direction:row;gap:16px;margin-bottom:12px;overflow-x:auto;overflow-y:hidden;padding-bottom:8px;scrollbar-width:thin;scrollbar-color:var(--color-border, #ddd) transparent}.site-residents-grid::-webkit-scrollbar{height:6px}.site-residents-grid::-webkit-scrollbar-track{background:transparent}.site-residents-grid::-webkit-scrollbar-thumb{background-color:var(--color-border, #ddd);border-radius:3px}.site-resident-profile{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:100px;max-width:100px;flex-shrink:0;padding:8px;transition:transform .2s}.site-resident-profile:hover{transform:translateY(-2px)}.site-resident-profile-clickable{cursor:pointer;background:transparent;border:none;border-radius:8px;font:inherit;text-align:inherit}.site-resident-profile-clickable:hover{background:#0000000a}.site-resident-profile-clickable:focus-visible{outline:2px solid var(--color-primary, #4f46e5);outline-offset:2px}.site-resident-avatar{width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid #ddd;overflow:hidden;flex-shrink:0}.site-resident-avatar img{width:100%;height:100%;object-fit:cover}.site-resident-name{font-size:13px;font-weight:500;color:#212529;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100px}.site-no-residents{color:#6c757d;font-size:14px;font-style:italic;margin:0;padding:20px;text-align:center}.site-monitorings-section{margin-top:24px;padding-top:24px;border-top:1px solid var(--color-border-light, #e0e0e0)}.site-monitorings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.site-monitorings-title{font-size:18px;font-weight:600;color:#212529!important;margin:0}.site-monitorings-grid{display:flex;flex-direction:row;gap:16px;margin-bottom:12px;overflow-x:auto;overflow-y:hidden;padding-bottom:8px;scrollbar-width:thin;scrollbar-color:var(--color-border, #ddd) transparent}.site-monitorings-grid::-webkit-scrollbar{height:6px}.site-monitorings-grid::-webkit-scrollbar-track{background:transparent}.site-monitorings-grid::-webkit-scrollbar-thumb{background-color:var(--color-border, #ddd);border-radius:3px}.site-monitoring-profile{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:100px;max-width:100px;flex-shrink:0;padding:8px;transition:transform .2s}.site-monitoring-profile:hover{transform:translateY(-2px)}.site-monitoring-icon{width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid;overflow:hidden;flex-shrink:0}.site-monitoring-name{font-size:13px;font-weight:500;color:#212529;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100px}.site-no-monitorings{color:#6c757d;font-size:14px;font-style:italic;margin:0;padding:20px;text-align:center}.allergy-form-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.allergy-form-modal-content{background:#fff;border-radius:12px;width:90%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 10px 40px #0003}.allergy-form-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb}.allergy-form-modal-header h3{margin:0;font-size:18px;font-weight:600;color:#1f2937}.allergy-form-modal-close{background:none;border:none;font-size:28px;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background-color .2s}.allergy-form-modal-close:hover{background-color:#f3f4f6;color:#374151}.allergy-form-modal-body{padding:24px;overflow-y:auto;flex:1}.allergy-form-modal-errors{margin-top:16px;padding:12px;background-color:#fee2e2;border:1px solid #fecaca;border-radius:6px}.error-message{color:#991b1b;font-size:13px;margin-bottom:4px}.error-message:last-child{margin-bottom:0}.allergy-form-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid #e5e7eb}.allergy-form-modal-footer .btn{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;border:none;transition:all .2s}.allergy-form-modal-footer .btn-secondary{background-color:#f3f4f6;color:#374151}.allergy-form-modal-footer .btn-secondary:hover{background-color:#e5e7eb}.allergy-form-modal-footer .btn-primary{background-color:#3b82f6;color:#fff}.allergy-form-modal-footer .btn-primary:hover{background-color:#2563eb}.site-management-page{max-width:1200px;margin:0 auto;padding:32px;background:var(--color-background)}.site-management-header{margin-bottom:32px}.site-management-title-section{margin-bottom:8px}.site-management-title{font-size:28px;font-weight:600;color:var(--color-text);margin:0 0 8px;letter-spacing:-.5px}.site-management-subtitle{font-size:14px;color:var(--color-text-light);margin:0;line-height:1.5}.site-management-error{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:14px;margin-bottom:24px}.site-management-error svg{flex-shrink:0}.site-management-content{background:var(--color-background-card);border:1px solid var(--color-border-light);border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000000d}.site-management-loading,.site-management-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 32px;text-align:center}.site-management-loading{gap:16px}.site-management-empty{gap:16px;color:var(--color-text-light)}.site-management-empty svg{opacity:.4;stroke:var(--color-text-light)}.site-management-empty h3{font-size:18px;font-weight:600;color:var(--color-text);margin:0}.site-management-empty p{font-size:14px;color:var(--color-text-light);margin:0}.loading-spinner{width:40px;height:40px;border:3px solid var(--color-gray-200);border-top-color:var(--color-accent);border-radius:50%;animation:spin .8s linear infinite}.loading-spinner-small{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:currentColor;border-radius:50%;animation:spin .6s linear infinite}.site-management-table-container{display:flex;flex-direction:column}.site-management-table-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:var(--color-background-secondary);border-bottom:1px solid var(--color-border-light)}.site-management-selection-count{font-size:13px;font-weight:500;color:var(--color-accent)}.site-management-table-wrapper{max-height:500px;overflow-y:auto;overflow-x:auto}.site-management-table{width:100%;border-collapse:collapse;font-size:14px}.site-management-table thead{position:sticky;top:0;z-index:10;background:var(--color-background)}.site-management-table th{padding:12px 20px;text-align:left;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-light);border-bottom:1px solid var(--color-border-light);background:var(--color-background)}.site-management-th-checkbox{width:48px;padding-left:20px!important}.site-management-table tbody tr{border-bottom:1px solid var(--color-border-light);transition:background-color .15s ease;cursor:pointer}.site-management-table tbody tr:hover{background:var(--color-background-secondary)}.site-management-table tbody tr.site-management-row-selected{background:#f0f9ff;border-color:#bae6fd}.site-management-table tbody tr.site-management-row-selected:hover{background:#e0f2fe}.site-management-table td{padding:16px 20px;color:var(--color-text)}.site-management-td-checkbox{width:48px;padding-left:20px!important}.site-management-td-muted{color:var(--color-text-light)}.site-management-checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none}.site-management-checkbox{position:absolute;opacity:0;width:0;height:0}.site-management-checkbox-custom{width:20px;height:20px;border:2px solid var(--color-gray-300);border-radius:4px;background:var(--color-background);position:relative;transition:all .2s ease;flex-shrink:0}.site-management-checkbox:checked+.site-management-checkbox-custom{background:var(--color-accent);border-color:var(--color-accent)}.site-management-checkbox:checked+.site-management-checkbox-custom:after{content:"";position:absolute;left:6px;top:2px;width:5px;height:10px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.site-management-checkbox:focus+.site-management-checkbox-custom{box-shadow:0 0 0 3px #f444391a}.site-management-select-all-text{font-size:13px;font-weight:500;color:var(--color-text)}.site-management-site-name{display:flex;align-items:center;gap:12px}.site-management-site-avatar{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:14px;flex-shrink:0}.site-management-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:24px;border-top:1px solid var(--color-border-light)}.site-management-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:500;border-radius:8px;border:none;cursor:pointer;transition:all .2s ease;font-family:inherit}.site-management-btn:disabled{opacity:.5;cursor:not-allowed}.site-management-btn-secondary{background:var(--color-background);color:var(--color-text);border:1px solid var(--color-border)}.site-management-btn-secondary:hover:not(:disabled){background:var(--color-background-secondary);border-color:var(--color-gray-300)}.site-management-btn-danger{background:var(--color-danger);color:#fff}.site-management-btn-danger:hover:not(:disabled){background:#c82333;transform:translateY(-1px);box-shadow:0 4px 12px #dc35454d}.site-management-btn-danger:active:not(:disabled){transform:translateY(0)}.site-management-btn-primary{background:var(--color-accent);color:#fff}.site-management-btn-primary:hover:not(:disabled){background:var(--color-accent-dark);transform:translateY(-1px);box-shadow:0 4px 12px #f444394d}.site-management-btn-primary:active:not(:disabled){transform:translateY(0)}.site-management-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease}.site-management-modal{background:var(--color-background-card);border-radius:16px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:480px;width:90%;max-height:90vh;overflow-y:auto;animation:slideUp .3s ease}.site-management-modal-header{display:flex;align-items:center;gap:16px;padding:24px 24px 0}.site-management-modal-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.site-management-modal-icon-warning{background:#fef3c7;color:#d97706}.site-management-modal-title{font-size:20px;font-weight:600;color:var(--color-text);margin:0}.site-management-modal-body{padding:20px 24px}.site-management-modal-body p{font-size:14px;line-height:1.6;color:var(--color-text);margin:0}.site-management-modal-body strong{color:var(--color-text);font-weight:600}.site-management-modal-actions{display:flex;gap:12px;justify-content:flex-end;padding:0 24px 24px}.site-management-table-wrapper::-webkit-scrollbar{width:8px;height:8px}.site-management-table-wrapper::-webkit-scrollbar-track{background:var(--color-background-secondary)}.site-management-table-wrapper::-webkit-scrollbar-thumb{background:var(--color-gray-300);border-radius:4px}.site-management-table-wrapper::-webkit-scrollbar-thumb:hover{background:var(--color-gray-400)}.delete-resident-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;position:relative}.delete-resident-form{padding:0 24px 24px}.form-info{margin-bottom:24px;padding:16px;background:#f8f9fa;border-radius:12px;border-left:4px solid #f44}.form-info p{margin:0 0 8px;color:#2c3e50;font-size:14px}.form-info p:last-child{margin-bottom:0}.form-info-subtitle{font-size:12px;color:#6c757d}.form-select,.form-input,.form-textarea{width:100%;padding:12px 16px;border:2px solid #e9ecef;border-radius:10px;font-size:15px;transition:all .3s ease;box-sizing:border-box;background:#fff;color:#2c3e50;font-family:inherit}.form-select:focus,.form-input:focus,.form-textarea:focus{outline:none;border-color:#f44;box-shadow:0 0 0 4px #f444391a}.form-textarea{resize:vertical;min-height:100px;line-height:1.6}.btn-primary{background:linear-gradient(135deg,#f44,#ff6b6b);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 16px #f444394d}.btn-danger{background:linear-gradient(135deg,#dc3545,#c82333)}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.swap-resident-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;position:relative}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 24px 0;border-bottom:2px solid #e9ecef;margin-bottom:24px}.modal-header h2{margin:0;font-size:24px;font-weight:700;color:#2c3e50}.modal-close{background:transparent;border:none;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;color:#6c757d;transition:all .2s ease;border-radius:8px}.modal-close:hover{background:#f8f9fa;color:#2c3e50}.swap-resident-form{padding:0 24px 24px}.form-info{margin-bottom:24px;padding:16px;background:#e3f2fd;border-radius:12px;border-left:4px solid #2196f3}.form-info p{margin:0;color:#2c3e50;font-size:14px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#2c3e50;font-size:14px}.form-group label .required{color:#f44;font-size:16px}.form-select{width:100%;padding:12px 16px;border:2px solid #e9ecef;border-radius:10px;font-size:15px;transition:all .3s ease;box-sizing:border-box;background:#fff;color:#2c3e50;font-family:inherit}.form-select:focus{outline:none;border-color:#2196f3;box-shadow:0 0 0 4px #2196f31a}.alert{padding:12px 16px;border-radius:10px;margin-bottom:20px;font-size:14px}.alert-error{background:#ffebee;border:2px solid #f44;color:#c62828}.alert-warning{background:#fff3e0;border:2px solid #ff9800;color:#e65100}.form-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:24px;border-top:2px solid #e9ecef;margin-top:24px}.btn-primary,.btn-secondary{padding:12px 24px;border:none;border-radius:10px;font-weight:600;font-size:15px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px}.btn-primary{background:linear-gradient(135deg,#2196f3,#42a5f5);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 16px #2196f34d}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary{background:#fff;color:#6c757d;border:2px solid #e9ecef}.btn-secondary:hover:not(:disabled){background:#f8f9fa;border-color:#adb5bd;color:#495057}.loading-state{padding:24px;text-align:center;color:#6c757d}.emar-residents-list-container{padding:24px;max-width:1400px;margin:0 auto}.emar-residents-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:16px}.emar-residents-title{font-size:24px;font-weight:600;color:var(--color-text);margin:0}.emar-residents-search{flex:1;max-width:400px;min-width:200px}.emar-residents-search-input{width:100%;padding:10px 16px;border:1px solid var(--color-border-light);border-radius:var(--radius-md);font-size:14px;background:var(--color-background-card);color:var(--color-text);transition:all .2s ease}.emar-residents-search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #0000001a}.emar-residents-loading,.emar-residents-empty,.emar-residents-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:var(--color-text-light)}.emar-residents-error button{margin-top:16px;padding:8px 16px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:14px;font-weight:500}.emar-residents-error button:hover{opacity:.9}.loading-spinner{width:40px;height:40px;border:4px solid var(--color-border-light);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}@keyframes spin{to{transform:rotate(360deg)}}.emar-residents-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.emar-resident-card{display:flex;align-items:center;gap:16px;padding:16px;background:var(--color-background-card);border:1px solid var(--color-border-light);border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-xs)}.emar-resident-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.emar-resident-avatar{width:60px;height:60px;min-width:60px;min-height:60px;border-radius:50%;overflow:hidden;border:2px solid var(--color-border-light);background:var(--color-background-secondary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.emar-resident-avatar img{width:100%;height:100%;object-fit:cover}.emar-resident-initials{font-size:24px;font-weight:600;color:var(--color-text-light)}.emar-resident-info{flex:1;min-width:0}.emar-resident-name{font-size:16px;font-weight:600;color:var(--color-text);margin:0 0 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.emar-resident-medicine-count{display:flex;align-items:center;gap:8px}.emar-medicine-badge{display:inline-block;padding:4px 12px;background:var(--color-primary);color:#fff;border-radius:12px;font-size:12px;font-weight:600}.emar-resident-arrow{color:var(--color-text-light);flex-shrink:0;transition:transform .2s ease}.emar-resident-card:hover .emar-resident-arrow{transform:translate(4px);color:var(--color-primary)}@media(max-width:768px){.emar-residents-grid{grid-template-columns:1fr}.emar-residents-header{flex-direction:column;align-items:stretch}.emar-residents-search{max-width:100%}}.cycle-template-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000}.cycle-template-modal{background:#fff;border-radius:8px;max-width:960px;width:95%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 4px 20px #00000026}.cycle-template-modal-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #e5e7eb}.cycle-template-modal-header h3{margin:0;font-size:1.1rem}.cycle-template-modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#6b7280;padding:0 4px;line-height:1}.cycle-template-modal-close:hover{color:#111}.cycle-template-modal-error-block{padding:8px 16px;background:#fef2f2;color:#b91c1c;font-size:.9rem;margin-bottom:4px}.cycle-template-modal-error{color:#b91c1c}.cycle-template-modal-breaches{margin:8px 0 0;padding-left:20px;list-style:disc}.cycle-template-modal-breaches li{margin-top:4px}.cycle-template-breach-item{display:block;margin-top:2px}.cycle-template-generate-help{margin:8px 0 0;font-size:.8rem;color:#6b7280;max-width:560px}.cycle-template-generate-help strong{color:#374151}.cycle-template-modal-body{padding:16px;overflow:auto;display:flex;gap:16px;min-height:300px;color:var(--color-text, #2e2e2e);background:var(--color-background, #fff)}.rota-cycle-template-embed{display:flex;flex-direction:column;height:100%;min-height:0;width:100%}.cycle-template-embedded-body{padding:16px;overflow:auto;display:flex;gap:16px;flex:1;min-height:0;color:var(--color-text, #2e2e2e);background:var(--color-background, #fff)}.cycle-template-sidebar{flex-shrink:0;width:180px;border-right:1px solid var(--color-border-light, #e5e7eb);padding-right:16px;color:var(--color-text, #2e2e2e)}.cycle-template-btn-capsule{border-radius:9999px;border:1px solid var(--color-primary, #2e2e2e);color:var(--color-primary, #2e2e2e);background:var(--color-background, #fff);font-weight:500;cursor:pointer;transition:background .2s,color .2s}.cycle-template-btn-capsule:hover:not(:disabled){background:var(--color-primary, #2e2e2e);color:var(--color-secondary, #fff)}.cycle-template-btn-capsule:disabled{opacity:.6;cursor:not-allowed}.cycle-template-btn-new{width:100%;padding:8px 16px;margin-bottom:12px;font-size:.9rem}.cycle-template-list{list-style:none;margin:0;padding:0}.cycle-template-list li{margin-bottom:4px}.cycle-template-list button{width:100%;padding:6px 10px;text-align:left;border:1px solid transparent;background:var(--color-background-secondary, #f9fafb);color:var(--color-text, #2e2e2e);border-radius:4px;cursor:pointer;font-size:.9rem;font-weight:500;transition:background .2s,color .2s,border-color .2s}.cycle-template-list button:hover{background:var(--color-gray-200, #e5e7eb);color:var(--color-primary, #2e2e2e);border-color:var(--color-primary, #2e2e2e)}.cycle-template-list button.active{background:var(--color-primary, #2e2e2e);color:var(--color-secondary, #fff);border-color:var(--color-primary, #2e2e2e)}.cycle-template-main{flex:1;min-width:0}.cycle-template-form{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;margin-bottom:16px}.cycle-template-form-row{display:flex;align-items:center;gap:8px}.cycle-template-form-row label{font-size:.9rem;font-weight:500;color:#374151;white-space:nowrap}.cycle-template-form input[type=text],.cycle-template-form input[type=number],.cycle-template-form input[type=date],.cycle-template-form select{padding:6px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:.9rem;min-width:120px}.cycle-template-form-row.cycle-template-form-actions-row{width:100%;margin-top:4px}.cycle-template-btn-save{padding:8px 20px;font-size:.9rem}.cycle-template-btn-save:hover:not(:disabled){background:#2e2e2e;color:#fff}.cycle-template-tabs-row{display:flex;align-items:center;gap:16px;margin-bottom:12px;flex-wrap:wrap}.cycle-template-header-btn{padding:6px 14px;border:1px solid #2e2e2e;background:#fff;color:#2e2e2e;border-radius:9999px;cursor:pointer;font-size:.85rem;font-weight:500}.cycle-template-header-btn:hover,.cycle-template-header-btn.active{background:#2e2e2e;color:#fff}.cycle-template-favorites-row{margin-bottom:12px;padding:10px 0;border:1px solid #e5e7eb;border-radius:8px;background:#f9fafb}.cycle-template-favorites-container{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:0 12px}.cycle-template-favorite-box{padding:8px 12px;border:1px solid #93c5fd;background:#eff6ff;border-radius:6px;cursor:grab;font-size:.85rem;min-width:80px}.cycle-template-favorite-box:active{cursor:grabbing}.cycle-template-favorite-box:hover{background:#dbeafe;border-color:#3b82f6}.cycle-template-favorite-name{font-weight:500;color:#1e40af}.cycle-template-favorite-time{font-size:.75rem;color:#3b82f6;margin-top:2px}.cycle-template-no-favorites{color:#6b7280;font-size:.85rem}.cycle-template-tabs{display:flex;gap:8px;flex-wrap:wrap}.cycle-template-tab-capsule{padding:6px 14px;border:1px solid #2e2e2e;background:#fff;color:#2e2e2e;border-radius:9999px;cursor:pointer;font-size:.85rem;font-weight:500;transition:background .2s,color .2s}.cycle-template-tab-capsule:hover{background:#f3f4f6}.cycle-template-tab-capsule.active{background:#2e2e2e;color:#fff;border-color:#2e2e2e}.cycle-template-grid-wrap{overflow:auto;margin-bottom:16px}.cycle-template-grid{width:100%;border-collapse:collapse;font-size:.85rem}.cycle-template-grid th,.cycle-template-grid td{border:1px solid #e5e7eb;padding:8px;vertical-align:top}.cycle-template-grid th{background:#f9fafb;font-weight:600}.cycle-template-grid-staff-days .cycle-template-th-staff{min-width:140px;text-align:left;padding:8px 12px}.cycle-template-cell-staff{font-weight:500;background:#f9fafb;white-space:nowrap;padding:8px 12px}.cycle-template-cell{min-width:120px;min-height:52px;vertical-align:top;position:relative}.cycle-template-empty-cell{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:6px;transition:background .2s}.cycle-template-empty-cell:hover{background:#f4443914}.cycle-template-empty-cell-plus{opacity:0;font-size:22px;font-weight:300;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--color-accent, #f44336);color:#fff;transition:opacity .2s,transform .2s}.cycle-template-empty-cell:hover .cycle-template-empty-cell-plus,.cycle-template-add-more:hover .cycle-template-empty-cell-plus{opacity:1;transform:scale(1.08)}.cycle-template-add-more{position:relative;z-index:1;display:inline-flex;margin-top:4px;min-height:28px;cursor:pointer;border-radius:6px;padding:2px}.cycle-template-add-more .cycle-template-empty-cell-plus{font-size:16px;width:22px;height:22px}.cycle-template-drop-zone{position:absolute;inset:0;z-index:0;border-radius:6px}.cycle-template-drop-zone:hover{border:2px dashed var(--color-accent, #f44336);background:#f444390d}.cycle-template-slot-block{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:6px;font-size:11px;background:#dbeafe;border:1px solid #93c5fd;color:#1e40af;margin-bottom:4px;position:relative;z-index:1}.cycle-template-slot-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cycle-template-slot-remove{flex-shrink:0;width:18px;height:18px;padding:0;border:none;background:#fef2f2;color:#b91c1c;border-radius:4px;cursor:pointer;font-size:14px;line-height:1}.cycle-template-slot-remove:hover{background:#fecaca}.cycle-template-slot{display:flex;gap:4px;align-items:center;margin-bottom:4px}.cycle-template-slot select{flex:1;min-width:0;padding:4px 6px;border:1px solid #d1d5db;border-radius:4px;font-size:.8rem}.cycle-template-slot button{flex-shrink:0;width:22px;height:22px;padding:0;border:none;background:#fef2f2;color:#b91c1c;border-radius:4px;cursor:pointer;font-size:1rem;line-height:1}.cycle-template-add-slot{padding:4px 8px;border:1px dashed #d1d5db;background:#fafafa;border-radius:4px;cursor:pointer;font-size:.85rem;color:#6b7280}.cycle-template-add-slot:hover{background:#f3f4f6;color:#111}.cycle-template-actions{margin-top:8px}.cycle-template-btn-generate{padding:8px 16px;background:#16a34a;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.9rem}.cycle-template-btn-generate:hover:not(:disabled){background:#15803d}.cycle-template-btn-generate:disabled{opacity:.7;cursor:not-allowed}.cycle-template-placeholder{color:#6b7280;font-size:.9rem}.cycle-template-select-site{color:#6b7280;font-size:.9rem;margin:0 0 12px}.cycle-template-picker-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.cycle-template-picker{background:#fff;border-radius:8px;padding:16px;min-width:220px;box-shadow:0 4px 20px #00000026}.cycle-template-picker-title{margin:0 0 12px;font-size:.95rem;font-weight:600}.cycle-template-picker-list{display:flex;flex-direction:column;gap:4px;max-height:280px;overflow:auto;margin-bottom:12px}.cycle-template-picker-item{padding:8px 12px;text-align:left;border:1px solid #e5e7eb;border-radius:6px;background:#fff;cursor:pointer;font-size:.9rem}.cycle-template-picker-item:hover{background:#f3f4f6;border-color:#d1d5db}.cycle-template-picker-cancel{width:100%;padding:6px 12px;border:1px solid #d1d5db;border-radius:6px;background:#f9fafb;cursor:pointer;font-size:.9rem}.cycle-template-picker-cancel:hover{background:#e5e7eb}.cycle-template-availability-message{margin:0 0 12px;font-size:.9rem;color:#374151}.cycle-template-picker-actions{display:flex;gap:8px;justify-content:flex-end}.cycle-template-picker-confirm{padding:6px 14px;border:1px solid #2e2e2e;background:#2e2e2e;color:#fff;border-radius:6px;cursor:pointer;font-size:.9rem}.cycle-template-picker-confirm:hover{background:#1a1a1a;border-color:#1a1a1a}.rota-reports-inner{height:100%;display:flex;flex-direction:column;overflow:hidden;min-height:0}.rota-reports-overlay{position:fixed;inset:0;background:#fff;z-index:10000;display:flex;flex-direction:column;overflow:hidden}.rota-reports-panel{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.rota-reports-brand-header{display:flex;align-items:center;gap:16px;padding:12px 16px;min-height:56px;box-sizing:border-box;border-bottom:1px solid rgba(255,255,255,.1);background:#2e2e2e;flex-shrink:0}.rota-reports-brand-header .header-action-btn{background:transparent;border:1px solid rgba(255,255,255,.3);color:#e0e0e0;cursor:pointer;padding:0;border-radius:50%;transition:all .15s ease;display:flex;align-items:center;justify-content:center;width:32px;height:32px;min-width:32px;min-height:32px;flex-shrink:0}.rota-reports-brand-header .header-action-btn svg{width:16px;height:16px;stroke:currentColor;fill:none}.rota-reports-brand-header .header-action-btn:hover{background:#ffffff1a;border-color:#ffffff80;color:#fff}.rota-reports-brand-header .header-action-btn:focus-visible{outline:2px solid rgba(255,255,255,.6);outline-offset:2px}.rota-reports-title{margin:0;font-size:1.25rem;font-weight:600;color:#fff;letter-spacing:-.02em;flex-shrink:0}.rota-reports-capsules{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-left:auto}.rota-reports-capsule{padding:6px 14px;border-radius:9999px;border:1px solid rgba(255,255,255,.35);background:transparent;color:#e0e0e0;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.rota-reports-capsule:hover{background:#ffffff1a;border-color:#ffffff80;color:#fff}.rota-reports-capsule.active{background:#fff3;border-color:#fff9;color:#fff}.rota-reports-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#6b7280;padding:0 4px;line-height:1}.rota-reports-close:hover{color:#111}.rota-reports-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;padding:12px 16px;border-bottom:1px solid #e5e7eb;background:#f9fafb}.rota-reports-filters label{display:flex;flex-direction:column;gap:4px;font-size:.85rem;color:#374151}.rota-reports-filters input,.rota-reports-filters select{padding:6px 8px;border:1px solid #d1d5db;border-radius:4px;font-size:.9rem;min-width:120px}.rota-reports-refresh{padding:6px 12px;background:var(--color-primary, #2563eb);color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem}.rota-reports-refresh:hover{opacity:.9}.rota-reports-bradford-note{margin:0;padding:8px 16px;font-size:.85rem;color:#6b7280;background:#f9fafb;border-bottom:1px solid #e5e7eb}.rota-reports-tabs{display:flex;gap:4px;padding:8px 16px 0;border-bottom:1px solid #e5e7eb}.rota-reports-tab{padding:8px 14px;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;font-size:.9rem;color:#6b7280}.rota-reports-tab:hover{color:#111}.rota-reports-tab.active{color:var(--color-primary, #2563eb);border-bottom-color:var(--color-primary, #2563eb);font-weight:500}.rota-reports-error{padding:8px 16px;background:#fef2f2;color:#b91c1c;font-size:.9rem}.rota-reports-body{padding:16px;overflow:auto;flex:1;min-height:0}.rota-reports-table{width:100%;border-collapse:collapse;font-size:.9rem}.rota-reports-table th,.rota-reports-table td{padding:8px 10px;text-align:left;border-bottom:1px solid #e5e7eb}.rota-reports-table th{font-weight:600;background:#f9fafb}.rota-reports-labour-group{margin-bottom:20px}.rota-reports-labour-group h4{margin:0 0 8px;font-size:.95rem;color:#374151}.rota-reports-empty{color:#6b7280;font-size:.9rem}.rota-reports-bradford .bradford-risk-low{color:#15803d;font-weight:500}.rota-reports-bradford .bradford-risk-medium{color:#b45309;font-weight:500}.rota-reports-bradford .bradford-risk-high{color:#b91c1c;font-weight:600}.rota-reports-attendance-filters{flex-wrap:wrap}.rota-reports-attendance-views{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.rota-reports-view-btn{padding:6px 12px;font-size:.85rem;border:1px solid #d1d5db;background:#fff;border-radius:4px;cursor:pointer}.rota-reports-view-btn.active{background:var(--color-primary, #2563eb);color:#fff;border-color:var(--color-primary, #2563eb)}.rota-reports-condense{display:flex;align-items:center;gap:6px}.rota-reports-payroll-period-nav{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.rota-reports-period-btn{padding:6px 10px;font-size:.85rem;border:1px solid #d1d5db;background:#fff;border-radius:4px;cursor:pointer}.rota-reports-period-btn:hover{background:#f3f4f6}.rota-reports-period-label{font-size:.9rem;font-weight:500;color:#374151;min-width:180px;text-align:center}.rota-reports-attendance-body{margin-top:8px}.rota-reports-attendance-actions{display:flex;align-items:center;gap:12px;margin-bottom:12px}.rota-reports-export-csv{padding:6px 12px;font-size:.85rem;border:1px solid #d1d5db;background:#fff;border-radius:4px;cursor:pointer}.rota-reports-export-csv:hover{background:#f9fafb}.rota-reports-legend{font-size:.8rem;color:#6b7280}.rota-reports-table-wrap{overflow-x:auto}.rota-reports-attendance-grid .rota-reports-cell-clickable{cursor:pointer}.rota-reports-cell-clickable:hover{background:#f3f4f6}.rota-reports-breakdown-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:10001}.rota-reports-breakdown-modal{background:#fff;border-radius:8px;padding:16px;max-width:640px;width:90%;max-height:80vh;overflow:auto;box-shadow:0 4px 20px #0003}.rota-reports-breakdown-modal h4{margin:0 0 12px;font-size:1rem}.finance-layout-wrapper .finance-layout-main{display:flex;flex-direction:column;overflow:hidden}.finance-layout-wrapper .finance-header-section{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--spacing-sm);min-height:44px;height:auto;padding:10px 16px;margin-bottom:var(--spacing-md, 1rem);border-bottom:1px solid rgba(224,224,224,.1);background:var(--color-primary);border-radius:var(--radius-xl) var(--radius-xl) 0 0;flex-shrink:0}.finance-layout-wrapper .finance-header-section .management-header-left{display:flex;align-items:center;gap:var(--spacing-sm);flex-shrink:0}.finance-back-btn{width:36px;height:36px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:transparent;color:var(--color-secondary);border:1px solid rgba(224,224,224,.3);border-radius:50%;cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.finance-back-btn:hover{background:#ffffff1a;border-color:#fff6;color:var(--color-secondary)}.finance-layout-wrapper .finance-header-right{display:flex;align-items:center;gap:var(--spacing-sm);flex-shrink:0;margin-left:auto}.finance-header-capsules{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-xs, 6px)}.finance-capsule-btn{padding:8px 16px;background:transparent;color:var(--color-secondary);border:1px solid rgba(224,224,224,.2);border-radius:20px;font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);text-decoration:none;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.finance-capsule-btn:hover{background:#ffffff1a;border-color:#ffffff4d;color:var(--color-secondary)}.finance-capsule-btn.active{background:#fff3;border-color:#ffffff80;color:var(--color-secondary)}.finance-capsule-btn-icon{padding:8px 10px;display:inline-flex;align-items:center;justify-content:center}.finance-capsule-btn-icon svg{display:block}.finance-layout-body{flex:1;display:flex;min-height:0;overflow:hidden}.finance-layout-content{flex:1;padding:var(--spacing-md);overflow-y:auto;overflow-x:hidden;min-width:0}.finance-layout-loading{padding:2rem;text-align:center}.finance-layout-error{color:#c00;margin-bottom:1rem}.finance-dashboard{padding:0}.finance-dashboard-cards{display:flex;flex-wrap:wrap;gap:1rem;margin:1rem 0}.finance-dashboard-card{background:var(--color-background);border:1px solid rgba(0,0,0,.08);border-radius:8px;padding:1rem 1.25rem;min-width:180px;display:flex;flex-direction:column;gap:.25rem}.finance-dashboard-card-label{font-size:.875rem;color:#666}.finance-dashboard-card-value{font-size:1rem;font-weight:600}.finance-dashboard-links{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}.finance-dashboard-link{padding:.5rem 1rem;background:var(--color-primary);color:var(--color-secondary, #fff);border-radius:20px;text-decoration:none;font-size:.9rem;font-weight:500}.finance-dashboard-link:hover{opacity:.9}.finance-page-wrapper .management-main-container{display:flex;flex-direction:column;overflow:hidden}.finance-page{flex:1;padding:var(--spacing-md, 1rem);overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;min-height:0}.finance-filters{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end;margin-bottom:1rem}.finance-filters label{display:flex;flex-direction:column;gap:.25rem;font-size:.875rem}.finance-current-period-label{align-self:center;font-size:.875rem;color:#555;margin-left:.25rem}.finance-filters select,.finance-filters input{padding:.35rem .5rem;min-width:140px}.finance-view-toggle{display:flex;align-items:center;gap:.5rem;font-size:.875rem}.finance-view-toggle button{padding:.35rem .6rem;border:1px solid #ccc;background:#fff;border-radius:4px;cursor:pointer;font-size:.85rem}.finance-view-toggle button.active{background:#56ccf2;color:#fff;border-color:#56ccf2}.finance-refresh{padding:.35rem .75rem;cursor:pointer;background:#56ccf2;color:#fff;border:none;border-radius:4px}.finance-refresh:hover{opacity:.9}.finance-error{color:#c00;margin-bottom:1rem}.finance-body{min-height:200px}.finance-table-wrap{overflow-x:auto}.finance-table{width:100%;border-collapse:collapse;font-size:.875rem}.finance-table th,.finance-table td{padding:.5rem .6rem;text-align:left;border-bottom:1px solid #eee}.finance-table th{font-weight:600;background:#f5f5f5}.finance-table tbody tr:hover{background:#fafafa}.finance-override-link{color:#56ccf2;text-decoration:none;cursor:pointer}button.finance-override-link{background:none;border:none;padding:0;font:inherit}.finance-override-link:hover{text-decoration:underline}.finance-detail-row td{background:#f9f9f9;padding:.75rem}.finance-detail{font-size:.8125rem;color:#555}.finance-empty{color:#666;font-style:italic}.finance-sub-page h3{margin-top:0}.finance-aggregated{margin-top:1rem}.finance-report-result{font-size:.8rem;overflow:auto;max-height:400px;background:#f5f5f5;padding:1rem;border-radius:4px}.finance-modal-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.finance-modal{background:#fff;border-radius:8px;padding:1.5rem;max-width:420px;width:90%;max-height:90vh;overflow-y:auto}.finance-modal h4{margin:0 0 1rem}.finance-modal .finance-filters{margin-bottom:.75rem}.finance-modal .finance-filters+.finance-filters{margin-top:0}.finance-report-formatted{margin-top:1rem}.finance-report-dl{display:grid;grid-template-columns:auto 1fr;gap:.25rem 1.5rem;margin:.5rem 0;font-size:.9rem}.finance-report-dl dt{font-weight:500;color:#555}.finance-report-raw-toggle{display:inline-flex;align-items:center;gap:.5rem;margin-top:.5rem;font-size:.875rem;cursor:pointer}.finance-report-result-block{margin-top:.5rem}.finance-settings-page .finance-settings-form{max-width:480px;margin-top:1rem}.finance-settings-section{margin-bottom:1.5rem}.finance-settings-section h4{margin:0 0 .75rem;font-size:.95rem;color:#444}.finance-settings-hint{margin:0 0 .5rem;font-size:.8rem;color:#666}.finance-settings-check{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;cursor:pointer}.finance-settings-check input{width:auto}.finance-settings-field{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.75rem;font-size:.875rem}.finance-settings-field input[type=date],.finance-settings-field input[type=number]{padding:.35rem .5rem;min-width:140px;max-width:200px}.finance-settings-success{color:#0a0;margin-bottom:1rem}.finance-settings-current-period{margin-top:.75rem;padding:.5rem .75rem;background:#f5f5f5;border-radius:6px;font-size:.9rem;color:#333}.finance-settings-current-period strong{display:block;margin-bottom:.25rem}.finance-settings-radio-group{margin-bottom:.75rem}.finance-settings-period-table-wrap{margin-top:.75rem;overflow-x:auto}.finance-settings-period-table{width:100%;border-collapse:collapse;font-size:.85rem}.finance-settings-period-table th,.finance-settings-period-table td{padding:.4rem .6rem;text-align:left;border:1px solid #e0e0e0}.finance-settings-period-table th{background:#f5f5f5;font-weight:600;color:#444}.finance-settings-inline-check{display:inline-flex;align-items:center;margin:0;cursor:pointer}.finance-settings-inline-check input{width:auto;margin:0 0 0 .25rem}.finance-settings-period-date-input{padding:.25rem .35rem;font-size:.8rem;min-width:0;width:100%;max-width:140px;border:1px solid #ccc;border-radius:4px}.files-breadcrumbs{display:flex;align-items:center;padding:12px 16px;background:#f5f5f5;border-bottom:1px solid rgba(224,224,224,.2);gap:8px;flex-wrap:wrap}.files-breadcrumb-item{background:none;border:none;color:#666;cursor:pointer;font-size:14px;padding:4px 8px;border-radius:4px;transition:all var(--transition-fast)}.files-breadcrumb-item:hover{background:#0000000d;color:#000}.files-breadcrumb-separator{color:#999}.files-content{flex:1;overflow-y:auto;padding:20px}.files-loading{display:flex;align-items:center;justify-content:center;height:200px;color:#666;font-size:16px}.files-folders-list{display:flex;flex-direction:column;gap:2px;margin-bottom:32px}.files-folder-row{display:flex;align-items:center;gap:12px;padding:10px 16px;cursor:pointer;transition:all var(--transition-fast);background:transparent}.files-folder-row:hover{background:#00000008}.files-folder-icon{flex-shrink:0;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}.files-folder-name{font-size:14px;font-weight:500;color:#333;flex:1}.files-folders-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px;margin-bottom:32px}.files-folder-item{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;border-radius:8px;cursor:pointer;transition:all var(--transition-fast);min-height:120px;background:transparent}.files-folder-item:hover{box-shadow:0 4px 12px #0000001a}.files-folder-icon-grid{flex-shrink:0;margin-bottom:8px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.15))}.files-folder-name-grid{font-size:14px;font-weight:500;text-align:center;color:#333;word-break:break-word}.files-files-section{margin-top:32px}.files-section-title{font-size:18px;font-weight:600;margin-bottom:16px;color:#333}.files-files-list{display:flex;flex-direction:column;gap:8px}.files-file-item{display:flex;align-items:center;gap:12px;padding:12px;background:#f9f9f9;border-radius:8px;border:1px solid #e0e0e0;transition:all var(--transition-fast)}.files-file-item:hover{background:#f0f0f0;box-shadow:0 2px 4px #0000000d}.files-file-icon{font-size:24px;flex-shrink:0}.files-file-info{flex:1;min-width:0}.files-file-name{font-size:14px;font-weight:500;color:#333;margin-bottom:4px;word-break:break-word}.files-file-meta{font-size:12px;color:#666}.files-file-actions{display:flex;gap:8px;flex-shrink:0}.files-action-btn{background:none;border:none;cursor:pointer;font-size:18px;padding:4px 8px;border-radius:4px;transition:all var(--transition-fast)}.files-action-btn:hover{background:#0000000d}.files-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.files-modal-content{background:#fff;border-radius:12px;padding:24px;min-width:400px;max-width:90%;box-shadow:0 4px 20px #00000026}.files-modal-title{font-size:20px;font-weight:600;margin:0 0 20px;color:#333}.files-modal-body{display:flex;flex-direction:column;gap:16px}.files-modal-input{padding:12px 16px;border:1px solid #e0e0e0;border-radius:8px;font-size:14px;outline:none;transition:border-color .2s}.files-modal-input:focus{border-color:var(--color-primary)}.files-modal-actions{display:flex;gap:12px;justify-content:flex-end}.files-modal-btn{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.files-modal-btn-cancel{background:#f5f5f5;color:#333}.files-modal-btn-cancel:hover{background:#e0e0e0}.files-modal-btn-create{background:var(--color-primary);color:var(--color-secondary)}.files-modal-btn-create:hover{opacity:.9;transform:scale(1.02)}.files-search-container{display:flex;align-items:center;padding:0 12px;flex:0 0 auto}.files-search-input{width:250px;padding:8px 12px;border:1px solid rgba(224,224,224,.2);border-radius:20px;font-size:13px;outline:none;transition:border-color .2s;background:#ffffff1a;color:var(--color-secondary)}.files-search-input:focus{border-color:#ffffff4d;background:#fff3;box-shadow:0 0 0 2px #ffffff1a}.files-search-input::placeholder{color:#ffffffb3}.main-content:has(.tasks-page){scrollbar-width:none;-ms-overflow-style:none}.main-content:has(.tasks-page)::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}.tasks-page{display:flex;height:100%;background:var(--color-background);overflow:hidden;flex:1}.tasks-sidebar{width:260px;background:#fff;border-right:1px solid #e5e7eb;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth;transition:width .25s ease,transform .25s ease,opacity .25s ease;scrollbar-width:none;-ms-overflow-style:none;padding-left:12px}.tasks-sidebar::-webkit-scrollbar{display:none!important;width:0!important;height:0!important;background:transparent!important}.tasks-sidebar *::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}.tasks-sidebar.collapsed{width:0;transform:translate(-12px);opacity:0;pointer-events:none}.tasks-create-task-btn{width:calc(100% - 6px);padding:10px 14px;margin:12px 6px 12px 0;background:#3a3a3a;color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #667eea40}.tasks-create-task-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #7c3aed59}.tasks-create-task-btn:active{transform:translateY(0)}.tasks-sidebar-item{width:calc(100% - 4px);padding:10px 10px 10px 0;margin:1px 4px 1px 0;background:transparent;border:none;border-radius:6px;cursor:pointer;display:flex;align-items:center;gap:10px;color:#4b5563;font-size:14px;text-align:left;transition:all .15s cubic-bezier(.4,0,.2,1);position:relative;white-space:nowrap;min-width:0}.tasks-sidebar-item>span:first-of-type{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1}.tasks-sidebar-item:hover{background:#f3f4f6;color:#fff}.tasks-sidebar-item.active{background:#3a3a3a;color:#fff;font-weight:500;box-shadow:0 2px 8px #667eea33}.tasks-sidebar-item.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:60%;background:#fff;border-radius:0 2px 2px 0}.tasks-sidebar-icon{font-size:16px;width:18px;text-align:center;display:flex;align-items:center;justify-content:center;flex-shrink:0}.tasks-sidebar-section{margin-top:4px;padding-top:8px;border-top:1px solid #e5e7eb}.tasks-sidebar-section:first-of-type{border-top:none;margin-top:0;padding-top:0}.tasks-sidebar-section-header{padding:6px 12px 6px 0;margin-left:-6px;font-size:10px;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.8px;margin-bottom:2px;transition:color .2s ease}.tasks-sidebar-section-header:hover{color:inherit}.tasks-projects-section{flex:1;padding:12px 12px 12px 0}.tasks-projects-header{padding:8px 12px 8px 0;margin-bottom:8px}.tasks-projects-header h3{margin:0;font-size:12px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.tasks-projects-list{display:flex;flex-direction:column;gap:4px}.tasks-project-item{width:100%;padding:10px 12px;background:transparent;border:none;border-left:3px solid;border-radius:6px;cursor:pointer;display:flex;align-items:center;gap:10px;color:var(--color-text);font-size:14px;text-align:left;transition:all .2s ease}.tasks-project-item:hover{background:#f3f4f6;color:#4b5563}.tasks-project-item.active{background:var(--color-background);font-weight:600}.tasks-project-icon{font-size:16px}.tasks-project-name{flex:1}.tasks-empty-projects{padding:20px;text-align:center;color:var(--color-text-muted)}.tasks-empty-projects button{margin-top:12px;padding:8px 16px;background:var(--color-accent);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px}.tasks-main{flex:1;display:flex;flex-direction:row;align-items:stretch;overflow:hidden;background:var(--color-background, #ffffff);gap:0}.tasks-main.expanded{padding-left:4px}.tasks-list-panel{flex:0 0 45%;min-width:300px;margin:6px 0 12px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000000d;display:flex;flex-direction:column;overflow:hidden}.tasks-list-panel .tasks-list{flex:1;overflow-y:auto;padding:12px}.tasks-detail-panel{flex:1 1 55%;align-self:stretch;min-height:100%;background:var(--color-background, #ffffff);display:flex;flex-direction:column;overflow:hidden;margin:0 12px 12px 0}.tasks-detail-panel-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#9ca3af;text-align:center;padding:40px}.tasks-detail-panel-empty svg{margin-bottom:16px;opacity:.5}.tasks-detail-panel-empty h3{margin:0 0 8px;font-size:18px;font-weight:600;color:#6b7280}.tasks-detail-panel-empty p{margin:0;font-size:14px}.tasks-header{padding:16px 28px;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center;background:#fff;position:sticky;top:0;z-index:10;box-shadow:0 1px 3px #0000000d}.tasks-header-left h1{margin:0 0 4px;font-size:24px;font-weight:700;color:#111827;letter-spacing:-.3px}.tasks-count{font-size:13px;color:#6b7280;font-weight:500}.tasks-header-right{display:flex;align-items:center;gap:12px}.tasks-sidebar-toggle-pill{display:inline-flex;align-items:center;background:#eef2ff;border-radius:999px;padding:2px;margin-top:4px;gap:2px}.tasks-sidebar-toggle-btn{border:none;background:transparent;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:600;color:#4b5563;cursor:pointer;transition:all .2s ease}.tasks-sidebar-toggle-btn.active{background:#4f46e5;color:#fff;box-shadow:0 1px 4px #4f46e559}.tasks-add-task-btn{padding:10px 20px;background:var(--color-accent);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;display:flex;align-items:center;gap:8px;transition:all .2s ease}.tasks-add-task-btn:hover{background:var(--color-accent-dark);transform:translateY(-1px);box-shadow:0 4px 12px #007bff4d}.tasks-list{flex:1;overflow-y:auto;padding:24px 32px;background:linear-gradient(to bottom,#fff,#f9fafb);scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none}.tasks-list::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}.tasks-site-separator{height:1px;background:#e5e7eb;margin:20px 0;border-top:2px solid;opacity:.6}.tasks-label-separator{height:1px;background:#e5e7eb;margin:16px 0 12px;padding-left:20px}.tasks-site-group{margin-bottom:40px}.tasks-site-group:last-child{margin-bottom:0}.tasks-site-header{margin-bottom:20px;padding:12px 0;border-bottom:2px solid #e5e7eb;display:flex;align-items:center;transition:all .2s ease}.tasks-site-header:hover{color:inherit;border-bottom-color:#e5e7eb}.tasks-site-header h3{margin:0;font-size:20px;font-weight:700;color:inherit;letter-spacing:-.3px;flex:1}.tasks-label-group{margin-bottom:20px;margin-left:0}.tasks-label-group:last-child{margin-bottom:0}.tasks-label-header{margin-bottom:12px;padding:6px 0;display:flex;align-items:center;transition:all .2s ease}.tasks-label-header:hover{color:inherit}.tasks-label-name{font-size:14px;font-weight:600;color:inherit;display:inline-flex;align-items:center;gap:6px;flex:1}.tasks-resident-group{margin-bottom:16px;margin-left:0;padding-left:16px;border-left:2px solid #e5e7eb}.tasks-resident-group:last-child{margin-bottom:0}.tasks-resident-header{margin-bottom:10px;padding:3px 0}.tasks-resident-name{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.tasks-resident-tasks{margin-left:0}.tasks-task-item-minimal{padding:10px 12px;margin:4px 0;border-radius:8px;cursor:pointer;transition:all .15s ease;background:transparent}.tasks-task-item-minimal:hover,.tasks-task-item-minimal.selected{background-color:#f3f4f6}.tasks-task-item-minimal.completed{opacity:.6}.tasks-task-item{display:flex;gap:14px;padding:16px 50px 16px 18px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:10px;transition:all .25s cubic-bezier(.4,0,.2,1);cursor:pointer;position:relative;box-shadow:0 1px 3px #0000000a}.tasks-task-item:hover{box-shadow:0 4px 12px #00000014;border-color:#d1d5db;background:#fafafa}.tasks-task-item.completed{opacity:.65;background:#f9fafb;border-color:#e5e7eb}.tasks-task-item.completed .tasks-task-title{text-decoration:line-through;color:#9ca3af}.tasks-task-item.overdue{border-left:4px solid #dc2626!important;background:linear-gradient(to right,#fef2f2,#fff 4%);border-color:#fca5a5}.tasks-task-item.overdue:hover{background:linear-gradient(to right,#fee2e2,#fafafa 4%);border-color:#f87171}.tasks-task-item.monitoring-task{border-left:4px solid #3b82f6;background:linear-gradient(to right,#eff6ff,#fff 4%);transition:all .25s ease}.tasks-task-item.monitoring-task:hover{background:linear-gradient(to right,#dbeafe,#fafafa 4%);box-shadow:0 4px 12px #3b82f626}.tasks-task-item.monitoring-task.overdue{border-left:4px solid #dc2626!important;background:linear-gradient(to right,#fef2f2,#fff 4%)}.tasks-task-item.monitoring-task.overdue:hover{background:linear-gradient(to right,#fee2e2,#fafafa 4%)}.tasks-task-checkbox{display:flex;align-items:flex-start;padding-top:2px;flex-shrink:0}.tasks-task-checkbox input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:#7c3aed;flex-shrink:0;border-radius:4px}.tasks-task-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}.tasks-task-title{font-size:15px;font-weight:600;color:#111827;line-height:1.4;letter-spacing:-.01em}.tasks-task-description{font-size:13px;color:#6b7280;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tasks-task-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:4px}.tasks-task-date{font-size:11px;color:#6b7280;padding:4px 10px;background:#f3f4f6;border-radius:8px;font-weight:500;white-space:nowrap;display:inline-flex;align-items:center;gap:4px}.tasks-task-date.overdue{color:#dc2626;background:#fee2e2;font-weight:600}.tasks-task-priority{font-size:10px;color:#fff;padding:4px 10px;border-radius:8px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;min-width:32px;text-align:center;white-space:nowrap;box-shadow:0 1px 2px #0000001a}.tasks-task-site{font-size:12px;color:var(--color-text-muted);padding:4px 8px;background:var(--color-background-secondary);border-radius:4px}.tasks-loading,.tasks-empty{text-align:center;padding:60px 20px;color:#6b7280}.tasks-empty p{font-size:15px;margin-bottom:6px;color:#374151;font-weight:500}.tasks-empty button{margin-top:16px;padding:10px 20px;background:#3a3a3a;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #7c3aed40}.tasks-empty button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #7c3aed59}.tasks-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.tasks-modal{background:#fff;border-radius:12px;padding:24px;width:90%;max-width:400px;box-shadow:0 20px 60px #0000004d}.tasks-modal h3{margin:0 0 20px;font-size:20px;font-weight:600;color:var(--color-text)}.tasks-form-group{margin-bottom:16px}.tasks-form-group label{display:block;margin-bottom:8px;font-size:14px;font-weight:500;color:var(--color-text)}.tasks-form-group input[type=text]{width:100%;padding:10px 12px;border:1px solid var(--color-border-light);border-radius:6px;font-size:14px}.tasks-form-group input[type=color]{width:60px;height:40px;border:1px solid var(--color-border-light);border-radius:6px;cursor:pointer}.tasks-modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.tasks-modal-actions button{padding:10px 20px;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease}.tasks-modal-actions button[type=button]{background:var(--color-background-secondary);color:var(--color-text)}.tasks-modal-actions button[type=submit]{background:var(--color-accent);color:#fff}.tasks-modal-actions button:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.tasks-widget-mode,.tasks-widget-mode .management-main-container{padding:0!important;margin:0!important;height:100%!important}.tasks-widget-mode .tasks-page{margin-top:0!important;height:100%!important}.tasks-widget-mode .tasks-list{padding:12px 16px!important;height:100%!important;overflow-y:auto!important}.tasks-widget-mode.compact .tasks-task-item{padding:12px 14px!important;margin-bottom:8px!important}.tasks-widget-mode.compact .tasks-task-title{font-size:14px!important}.tasks-widget-mode.compact .tasks-task-description{font-size:12px!important;margin-top:2px!important}.task-circle-checkbox{width:20px;height:20px;min-width:20px;min-height:20px;border-radius:50%;border:2px solid;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;background:transparent}.task-circle-checkbox.completed{animation:checkboxComplete .3s ease}.task-circle-checkbox.disabled{cursor:not-allowed;opacity:.5}@keyframes checkboxComplete{0%{transform:scale(1)}50%{transform:scale(1.15)}to{transform:scale(1)}}.tasks-site-section{margin-bottom:24px}.tasks-site-section:last-child{margin-bottom:0}.tasks-site-section-header{display:flex;align-items:center;gap:10px;padding:8px 0;margin-bottom:8px}.tasks-site-section-header h3{margin:0;font-size:15px;font-weight:600;color:#111827;flex:1}.tasks-site-section-tasks{display:flex;flex-direction:column}.task-hover-actions{display:flex;align-items:center;gap:4px;opacity:0;transition:opacity .15s ease}.tasks-task-item-minimal:hover .task-hover-actions{opacity:1}.task-date-picker{position:absolute;top:100%;left:0;margin-top:4px;background:#fff;border-radius:12px;box-shadow:0 4px 24px #00000026;padding:16px;width:280px;z-index:1000}.task-date-picker-quick-option{display:flex;align-items:center;padding:10px 12px;cursor:pointer;border-radius:8px;transition:background .15s}.task-date-picker-quick-option:hover{background:#f3f4f6}.task-date-picker-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.task-date-picker-day{width:32px;height:32px;border:none;border-radius:50%;background:transparent;cursor:pointer;transition:background .15s;font-size:13px}.task-date-picker-day:hover{background:#f3f4f6}.task-date-picker-day.selected{background:#dc4c4c;color:#fff}.task-date-picker-day.today{color:#dc4c4c;font-weight:600}.task-menu{position:absolute;top:100%;right:0;margin-top:4px;background:#fff;border-radius:8px;box-shadow:0 4px 16px #0000001f;min-width:160px;z-index:1000;overflow:hidden}.task-menu-item{display:flex;align-items:center;gap:10px;padding:10px 14px;cursor:pointer;font-size:14px;color:#374151;transition:background .15s}.task-menu-item:hover{background:#f3f4f6}.task-menu-item.danger{color:#dc2626}.task-menu-item.danger:hover{background:#fef2f2}.task-menu-divider{height:1px;background:#e5e7eb;margin:4px 0}.task-assign-dropdown{position:absolute;top:100%;right:0;margin-top:4px;background:#fff;border-radius:8px;box-shadow:0 4px 16px #0000001f;width:220px;z-index:1000;overflow:hidden}.task-assign-dropdown-search{padding:8px}.task-assign-dropdown-search input{width:100%;padding:8px 12px;border:1px solid #e5e7eb;border-radius:6px;font-size:13px;outline:none}.task-assign-dropdown-search input:focus{border-color:#9ca3af}.task-assign-dropdown-list{max-height:200px;overflow-y:auto}.task-assign-dropdown-item{display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;font-size:13px;color:#374151;transition:background .15s}.task-assign-dropdown-item:hover{background:#f3f4f6}.task-assign-dropdown-item.assigned{background:#f0fdf4}.task-assign-dropdown-item.assigned:hover{background:#dcfce7}.task-assign-dropdown-avatar{width:28px;height:28px;border-radius:50%;background:#e5e7eb;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:500;color:#6b7280}.tasks-site-section{position:relative}.tasks-site-section-header{display:flex;align-items:center;gap:8px;padding:12px 10px;min-height:44px;background:transparent;border-radius:0;cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none;border-bottom:1px solid #e5e7eb}.tasks-site-section-header:hover{background:#00000005}.tasks-site-section-header.sticky{position:sticky;top:0;z-index:10;background:#fff;box-shadow:0 2px 4px #0000000d}.task-hover-actions-improved{display:flex;align-items:center;gap:2px;opacity:0;transform:translate(8px);transition:all .2s ease}.tasks-task-item-minimal:hover .task-hover-actions-improved{opacity:1;transform:translate(0)}.task-action-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;border:none;background:transparent;cursor:pointer;color:#6b7280;transition:all .15s ease}.task-action-btn:hover{background:#f3f4f6;color:#374151}.task-action-btn.nudge:hover{background:#fef3c7;color:#d97706}.task-action-btn.assign{width:32px;height:32px;border-radius:50%;border:1.5px dashed #d1d5db;background:transparent;font-size:12px;font-weight:600}.task-action-btn.assign:hover{border-color:#9ca3af;background:#f3f4f6}.task-action-btn.assign.has-assignee{border-style:solid;border-color:#e5e7eb;background:#f3f4f6}.task-action-btn.menu:hover{background:#f3f4f6}.tasks-task-item-minimal.selected .task-hover-actions-improved{opacity:1;transform:translate(0)}.tasks-task-item-minimal{position:relative;z-index:1}.task-date-picker,.task-menu,.task-assign-dropdown{z-index:1001!important}.tasks-list-panel .tasks-list{scrollbar-width:none;-ms-overflow-style:none}.tasks-list-panel .tasks-list::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}.training-page-wrapper .training-header-section{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--spacing-sm, .5rem);padding:10px 16px;min-height:44px;border-bottom:1px solid rgba(0,0,0,.08)}.training-header-right{display:flex;align-items:center;gap:var(--spacing-sm);flex-shrink:0;margin-left:auto}.training-header-capsules{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-xs, 6px)}.training-capsule-btn{padding:8px 16px;background:transparent;color:inherit;border:1px solid rgba(0,0,0,.2);border-radius:20px;font-weight:500;font-size:var(--font-size-sm, .875rem);cursor:pointer;transition:all .2s ease;white-space:nowrap}.training-capsule-btn:hover{background:#0000000f;border-color:#0000004d}.training-capsule-btn.active{background:#00000014;border-color:#00000059;font-weight:600}.training-close-btn{width:36px;height:36px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:transparent;color:#e0e0e0;border:1px solid #e0e0e0;border-radius:50%;cursor:pointer;transition:all .2s ease;flex-shrink:0}.training-close-btn:hover{background:#e0e0e01a;color:#e0e0e0;border-color:#e0e0e0}.training-content{flex:1;overflow:auto;padding:1rem}.monitoring-test-page{padding:20px;max-width:1400px;margin:0 auto}.monitoring-test-header{margin-bottom:30px}.monitoring-test-header h1{font-size:2rem;margin-bottom:10px;color:#333}.monitoring-test-header p{color:#666;font-size:1.1rem;margin-bottom:10px}.category-breakdown{display:flex;gap:20px;flex-wrap:wrap;margin-top:15px;padding:10px;background:#f8f9fa;border-radius:6px}.breakdown-item{font-size:.95rem;color:#555}.breakdown-item strong{color:#333;margin-right:5px}.test-config-section{background:#f8f9fa;padding:20px;border-radius:8px;margin-bottom:30px}.test-config-section h2{margin-top:0;margin-bottom:15px;color:#333}.config-row{display:flex;gap:20px;flex-wrap:wrap}.config-item{flex:1;min-width:200px}.config-item label{display:block;margin-bottom:5px;font-weight:600;color:#555}.config-item select{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;background:#fff}.config-item select:disabled{background:#f5f5f5;cursor:not-allowed}.no-data-message{padding:8px 12px;background:#fff3cd;border:1px solid #ffc107;border-radius:4px;color:#856404;font-size:14px}.config-status{margin-top:15px;padding:10px;background:#d4edda;border:1px solid #28a745;border-radius:4px;color:#155724;font-weight:600;text-align:center}.test-summary-section{background:#fff;padding:20px;border-radius:8px;margin-bottom:30px;box-shadow:0 2px 4px #0000001a}.test-summary-section h2{margin-top:0;margin-bottom:15px;color:#333}.summary-stats{display:flex;gap:15px;flex-wrap:wrap;margin-bottom:15px}.stat-card{flex:1;min-width:120px;padding:15px;border-radius:8px;text-align:center;background:#f8f9fa}.stat-card.total{background:#e3f2fd;border:2px solid #2196f3}.stat-card.pending{background:#fff3e0;border:2px solid #ff9800}.stat-card.passed{background:#e8f5e9;border:2px solid #4caf50}.stat-card.failed{background:#ffebee;border:2px solid #f44336}.stat-value{font-size:2rem;font-weight:700;color:#333;margin-bottom:5px}.stat-label{font-size:.9rem;color:#666;text-transform:uppercase;letter-spacing:.5px}.summary-percentage{text-align:center;font-size:1.2rem;font-weight:600;color:#333;padding-top:10px;border-top:1px solid #eee}.test-actions{display:flex;gap:15px;margin-bottom:30px;flex-wrap:wrap}.btn-test-all,.btn-clear-results{padding:12px 24px;border:none;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s}.btn-test-all{background:#2196f3;color:#fff}.btn-test-all:hover:not(:disabled){background:#1976d2;transform:translateY(-2px);box-shadow:0 4px 8px #2196f34d}.btn-test-all:disabled{background:#ccc;cursor:not-allowed}.btn-clear-results{background:#f44336;color:#fff}.btn-clear-results:hover:not(:disabled){background:#d32f2f;transform:translateY(-2px);box-shadow:0 4px 8px #f443364d}.btn-clear-results:disabled{background:#ccc;cursor:not-allowed}.monitoring-types-list{margin-bottom:30px}.monitoring-types-list h2{margin-bottom:20px;color:#333}.monitoring-types-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.monitoring-type-card{background:#fff;border:2px solid #e0e0e0;border-radius:8px;padding:15px;transition:all .3s}.monitoring-type-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.monitoring-type-card.success{border-color:#4caf50;background:#f1f8f4}.monitoring-type-card.error{border-color:#f44336;background:#fff5f5}.monitoring-type-card.pending{border-color:#ff9800;background:#fffbf0}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid #eee}.card-header h3{margin:0;font-size:1.1rem;color:#333;flex:1}.status-badge{padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge.success{background:#4caf50;color:#fff}.status-badge.error{background:#f44336;color:#fff}.status-badge.pending{background:#ff9800;color:#fff}.card-body{margin-bottom:15px}.monitoring-type-info{font-size:.9rem;color:#666;line-height:1.6}.monitoring-type-info div{margin-bottom:5px}.monitoring-type-info strong{color:#333}.error-message{margin-top:10px;padding:8px;background:#ffebee;border-left:3px solid #f44336;border-radius:4px;font-size:.85rem;color:#c62828}.card-actions{display:flex;justify-content:flex-end}.btn-test{padding:8px 16px;background:#2196f3;color:#fff;border:none;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s}.btn-test:hover:not(:disabled){background:#1976d2;transform:translateY(-1px);box-shadow:0 2px 4px #2196f34d}.btn-test:disabled{background:#ccc;cursor:not-allowed}.failed-tests-section{background:#fff5f5;padding:20px;border-radius:8px;border:2px solid #f44336;margin-top:30px}.failed-tests-section h2{margin-top:0;margin-bottom:15px;color:#c62828}.failed-tests-list{display:flex;flex-direction:column;gap:15px}.failed-test-item{background:#fff;padding:15px;border-radius:6px;border-left:4px solid #f44336}.failed-test-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.failed-test-header strong{color:#333;font-size:1rem}.test-time{color:#666;font-size:.85rem}.failed-test-error{color:#c62828;font-size:.9rem;line-height:1.5}.loading,.error{text-align:center;padding:40px;font-size:1.2rem}.loading{color:#666}.error{color:#f44336;background:#ffebee;border-radius:8px}.summary-table-section{margin-top:40px;background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a}.summary-table-section h2{margin-top:0;margin-bottom:20px;color:#333}.summary-table-container{overflow-x:auto}.summary-table{width:100%;border-collapse:collapse;font-size:.95rem}.summary-table thead{background:#f8f9fa;border-bottom:2px solid #dee2e6}.summary-table th{padding:12px 15px;text-align:left;font-weight:600;color:#333;white-space:nowrap}.summary-table td{padding:15px;border-bottom:1px solid #e9ecef;vertical-align:top}.summary-table tbody tr:hover{background:#f8f9fa}.resident-name-cell,.site-name-cell{font-weight:600;color:#333;min-width:150px}.passed-cell,.failed-cell{min-width:300px;max-width:400px}.monitoring-list{list-style:none;padding:0;margin:0}.monitoring-item{padding:6px 0;border-bottom:1px solid #f0f0f0}.monitoring-item:last-child{border-bottom:none}.passed-item{color:#28a745}.failed-item{color:#dc3545}.failed-name{display:block;margin-bottom:4px}.failed-error-tooltip{display:block;font-size:.85rem;color:#6c757d;font-style:italic;margin-top:4px}.no-results{color:#6c757d;font-style:italic}@media(max-width:768px){.monitoring-test-page{padding:15px}.monitoring-types-grid{grid-template-columns:1fr}.config-row,.summary-stats,.test-actions{flex-direction:column}.btn-test-all,.btn-clear-results{width:100%}.summary-table-container{overflow-x:scroll}.summary-table{font-size:.85rem}.summary-table th,.summary-table td{padding:8px}.passed-cell,.failed-cell{min-width:200px;max-width:250px}}.login-page{min-height:100vh;width:100%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;position:relative}.cube-logo{display:flex;align-items:center;justify-content:center}.cube-logo svg{filter:drop-shadow(2px 4px 6px rgba(0,0,0,.15))}.logo-section{display:flex;flex-direction:column;align-items:center;gap:16px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transition:all .8s cubic-bezier(.4,0,.2,1)}.logo-section.moved-up{transform:translate(-50%,calc(-50% - 120px))}.brand-name{font-family:Quicksand,sans-serif;font-size:42px;font-weight:400;color:#3a3a3a;letter-spacing:-.5px;opacity:1;transition:opacity .5s ease}.logo-section.moved-up .brand-name{opacity:0}.brand-highlight{font-weight:400}.login-form-container{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;max-width:400px;padding:0 20px;box-sizing:border-box;opacity:0;visibility:hidden;transition:all .6s cubic-bezier(.4,0,.2,1);margin-top:40px}.login-form-container.visible{opacity:1;visibility:visible}.login-form{display:flex;flex-direction:column;align-items:center;gap:10px;width:100%}.form-group{width:75%}.login-page .form-input{width:100%!important;padding:14px 20px!important;background:#fff!important;border:1px solid #d0d0d0!important;border-radius:9999px!important;font-family:Montserrat,sans-serif!important;font-size:14px!important;font-weight:400!important;color:#333!important;text-align:center!important;transition:all .2s ease!important;box-sizing:border-box!important;height:46px!important;-webkit-appearance:none!important;-moz-appearance:none!important;appearance:none!important}.login-page .form-input::placeholder{color:#999!important;font-weight:400!important}.login-page .form-input:focus{outline:none!important;border-color:#888!important;box-shadow:0 0 0 2px #0000000d!important}.login-page .form-input:hover:not(:focus){border-color:#aaa!important}.login-2fa-message{text-align:center;margin:0 0 12px;font-size:15px;color:#333}.login-2fa-sent{text-align:center;margin:0 0 8px;font-size:13px;color:#16a34a}.login-2fa-error{text-align:center;margin:0 0 8px;font-size:13px;color:#dc2626}.login-2fa-muted{text-align:center;margin:12px 0 0;font-size:12px;color:#888}.login-button{width:50%;padding:12px 20px;background:#3a3a3a;color:#fff;border:none;border-radius:9999px;font-family:Montserrat,sans-serif;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;margin-top:4px;letter-spacing:.5px;height:44px}.login-button:hover:not(:disabled){background:#4a4a4a;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{opacity:.7;cursor:not-allowed}.login-help{margin-top:8px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px}.login-signup-button{padding:10px 20px;background:transparent;color:#3a3a3a;border:1px solid #3a3a3a;border-radius:9999px;font-family:Montserrat,sans-serif;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;letter-spacing:.5px}.login-signup-button:hover{background:#3a3a3a;color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.login-help-link{font-family:Montserrat,sans-serif;font-size:13px;font-weight:400;color:#666;text-decoration:underline;transition:color .2s ease}.login-help-link:hover{color:#333}.login-help-button{background:none;border:none;cursor:pointer;padding:0;font:inherit;text-decoration:underline}.login-forgot-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.login-forgot-panel{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0003;max-width:400px;width:100%;padding:24px}.login-forgot-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.login-forgot-header h3{margin:0;font-family:Montserrat,sans-serif;font-size:18px;font-weight:600;color:#333}.login-forgot-close{background:none;border:none;font-size:24px;color:#666;cursor:pointer;padding:0;line-height:1;transition:color .2s}.login-forgot-close:hover{color:#333}.login-forgot-desc{font-size:14px;color:#666;margin:0 0 16px}.login-forgot-success{font-size:14px;color:#0d6efd;margin:0 0 12px;padding:10px;background:#e7f1ff;border-radius:8px}.login-forgot-error{font-size:14px;color:#dc3545;margin:0 0 12px}.login-forgot-form .form-input{width:100%;margin-bottom:16px;box-sizing:border-box}.login-forgot-actions{display:flex;gap:12px;justify-content:flex-end}.login-forgot-cancel{padding:10px 18px;background:#f0f0f0;border:1px solid #d0d0d0;border-radius:9999px;font-family:Montserrat,sans-serif;font-size:14px;cursor:pointer;color:#333;transition:background .2s}.login-forgot-cancel:hover:not(:disabled){background:#e0e0e0}.login-forgot-cancel:disabled{opacity:.7;cursor:not-allowed}.login-error-toast{position:fixed;top:20px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;padding:12px 20px;background:#fff;border:1px solid #dc3545;border-radius:8px;box-shadow:0 4px 20px #dc354533;color:#dc3545;font-family:Montserrat,sans-serif;font-size:14px;font-weight:500;z-index:10000;animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;transform:translate(-50%) translateY(-20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.login-error-toast .error-icon{font-size:16px}.login-error-toast .error-close{background:none;border:none;color:#dc3545;font-size:20px;cursor:pointer;padding:0 0 0 10px;line-height:1;opacity:.7;transition:opacity .2s ease}.login-error-toast .error-close:hover{opacity:1}@media(max-width:480px){.brand-name{font-size:28px}.cube-logo svg{width:80px!important;height:80px!important}.form-input{padding:12px 16px;font-size:14px}.login-button{width:80%;padding:12px 20px}.logo-section.moved-up{transform:translate(-50%,calc(-50% - 100px))}}.login-button:focus-visible,.form-input:focus-visible,.login-help-link:focus-visible,.login-signup-button:focus-visible{outline:2px solid #4a4a4a;outline-offset:2px}.settings-page .settings-header{margin-bottom:1rem}.settings-page .settings-title{font-size:1.5rem;font-weight:600;margin:0;color:var(--text-primary, #1a1a1a)}.settings-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:1px solid var(--border-color, #e0e0e0)}.settings-tab{padding:.5rem 1rem;border:none;background:none;cursor:pointer;font-size:.95rem;color:var(--text-secondary, #666);border-bottom:2px solid transparent;margin-bottom:-1px}.settings-tab:hover{color:var(--text-primary, #1a1a1a)}.settings-tab.active{color:var(--primary, #2563eb);border-bottom-color:var(--primary, #2563eb);font-weight:500}.settings-content{max-width:560px}:root{--color-primary: #2e2e2e;--color-secondary: #e0e0e0;--color-accent: #3a3a3a;--color-accent-dark: #6d28d9;--color-accent-hover: #db2777;--color-background: white;--color-background-dark: #1a1a1a;--color-background-secondary: #f8f9fa;--color-background-card: white;--color-background-card-dark: #2c2c2c;--color-background-sidebar: #2e2e2e;--color-text: #2e2e2e;--color-text-dark: rgba(255, 255, 255, .87);--color-text-light: #6b7280;--color-text-muted: #aaa;--color-text-secondary: #666;--color-success: #198754;--color-success-light: #4ade80;--color-success-dark: #2d5a2d;--color-warning: #fd7e14;--color-warning-light: #fbbf24;--color-warning-dark: #5a4d2d;--color-danger: #dc3545;--color-danger-light: #f87171;--color-danger-dark: #5a2d2d;--color-info: #0d6efd;--color-border: #e9ecef;--color-border-dark: #333;--color-border-light: #e5e7eb;--color-border-medium: #444;--color-gray-100: #f3f4f6;--color-gray-200: #e5e7eb;--color-gray-300: #d1d5db;--color-gray-400: #9ca3af;--color-gray-500: #6b7280;--color-gray-600: #4b5563;--color-gray-700: #374151;--color-gray-800: #1f2937;--color-gray-900: #111827;--color-dark-100: #1a1a1a;--color-dark-200: #2c2c2c;--color-dark-300: #333;--color-dark-400: #404040;--color-dark-500: #444;--color-link: #646cff;--color-link-hover: #535bf2;--color-link-light: #747bff;--color-badge-primary: #4a5568;--color-badge-primary-text: #e2e8f0;--spacing-base: 4px;--spacing-xs: calc(var(--spacing-base) * 2);--spacing-sm: calc(var(--spacing-base) * 4);--spacing-md: calc(var(--spacing-base) * 5);--spacing-lg: calc(var(--spacing-base) * 6);--spacing-xl: calc(var(--spacing-base) * 8);--spacing-xxl: calc(var(--spacing-base) * 10);--spacing-1: 4px;--spacing-2: 8px;--spacing-3: 12px;--spacing-4: 16px;--spacing-5: 20px;--spacing-6: 24px;--spacing-8: 32px;--radius-xs: 4px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 22px;--radius-2xl: 24px;--radius-full: 50%;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .05);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .1);--shadow-md: 0 4px 12px rgba(0, 0, 0, .2);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .3);--shadow-xl: 0 12px 40px rgba(0, 0, 0, .4);--shadow-2xl: 0 20px 60px rgba(0, 0, 0, .5);--shadow-inner: inset 0 2px 4px rgba(0, 0, 0, .06);--font-family-base: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-family-mono: "SF Mono", "Monaco", "Inconsolata", monospace;--font-family-system: system-ui, Avenir, Helvetica, Arial, sans-serif;--font-size-xs: 12px;--font-size-sm: 14px;--font-size-base: 16px;--font-size-lg: 18px;--font-size-xl: 20px;--font-size-2xl: 24px;--font-size-3xl: 32px;--font-size-4xl: 48px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-light: 300;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--transition-fast: .2s ease;--transition-normal: .3s ease;--transition-slow: .5s ease;--z-base: 1;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--z-toast: 1080;--z-max: 9999;--breakpoint-xs: 0px;--breakpoint-sm: 576px;--breakpoint-md: 768px;--breakpoint-lg: 992px;--breakpoint-xl: 1200px;--breakpoint-2xl: 1400px;--animation-spin: spin 1s linear infinite;--animation-shimmer: shimmer 3s ease-in-out infinite}@keyframes shimmer{0%,to{background-position:200% 0}50%{background-position:-200% 0}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{font-family:var(--font-family-base);line-height:var(--line-height-normal);font-weight:var(--font-weight-normal);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh;background-color:var(--color-background);color:var(--color-text);line-height:var(--line-height-normal);font-family:var(--font-family-base)}h1,h2,h3,h4,h5,h6{margin:0;font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);color:var(--color-text)}h1{font-size:var(--font-size-3xl);line-height:1.1}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}p{margin:0;line-height:var(--line-height-normal)}a{font-weight:var(--font-weight-medium);color:var(--color-link);text-decoration:inherit;transition:color var(--transition-fast)}a:hover{color:var(--color-link-hover)}button{font-family:inherit;font-size:1em;font-weight:var(--font-weight-medium);border-radius:var(--radius-sm);border:1px solid transparent;padding:.6em 1.2em;background-color:var(--color-background-dark);color:var(--color-text-dark);cursor:pointer;transition:border-color var(--transition-fast),background-color var(--transition-fast)}button:hover{border-color:var(--color-link)}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}img{max-width:100%;height:auto;display:block}ul,ol{list-style:none}input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}*:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media(prefers-contrast:high){:root{--color-border: #000;--shadow-md: 0 4px 12px rgba(0, 0, 0, .5)}}.dashboard-container{display:flex;height:100vh;position:relative}.sidebar-hover-area{position:fixed;left:0;top:0;width:20px;height:100vh;z-index:1000;display:none;cursor:pointer;background:transparent}.sidebar-hover-area.active{display:block}.sidebar{width:220px;min-width:220px;max-width:220px;flex-shrink:0;background-color:var(--color-primary);color:var(--color-secondary);padding:var(--spacing-lg);display:flex;flex-direction:column;z-index:var(--z-fixed);position:relative;box-sizing:border-box;transition:transform .3s ease,opacity .3s ease,visibility .3s ease,width .3s ease,min-width .3s ease,max-width .3s ease,padding .3s ease;overflow-x:hidden}.dashboard-container.sidebar-hidden .sidebar{transform:translate(-100%);opacity:0;visibility:hidden;pointer-events:none;width:0!important;min-width:0!important;max-width:0!important;padding:0!important;margin:0!important;overflow:hidden;flex:0 0 0!important}.main-content-wrapper{flex:1;min-width:0;min-height:0;position:relative;display:flex;flex-direction:column}.dashboard-container.sidebar-hidden .main-content{margin-left:0;width:100%;flex:1}.alerts-overlay{position:absolute;inset:0;z-index:20;pointer-events:none}.alerts-overlay *{pointer-events:auto}.alerts-overlay-backdrop{position:absolute;inset:0;background:transparent;cursor:default}.alerts-overlay-glass{--alerts-panel-width: 500px;position:absolute;left:0;top:0;bottom:0;width:var(--alerts-panel-width);display:flex;flex-direction:column;min-height:0;background:#fff3;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.3);border-left:none;border-radius:0 12px 12px 0;box-shadow:4px 0 24px #00000014,inset 0 1px #fff6;overflow:hidden;animation:alertsPanelSlideIn .28s cubic-bezier(.22,1,.36,1) forwards;mask-image:linear-gradient(to right,black 0%,black 72%,transparent 100%);-webkit-mask-image:linear-gradient(to right,black 0%,black 72%,transparent 100%);mask-size:100% 100%;-webkit-mask-size:100% 100%}@keyframes alertsPanelSlideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}.alerts-overlay-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid rgba(255,255,255,.25);flex-shrink:0}.alerts-overlay-title{margin:0;font-size:1.125rem;font-weight:600;color:#111827}.alerts-overlay-close{background:#0000000f;border:none;font-size:1.5rem;line-height:1;color:#4b5563;cursor:pointer;padding:0 8px;border-radius:8px;transition:background .2s,color .2s}.alerts-overlay-close:hover{color:#111827;background:#0000001a}.alerts-overlay-content{flex:1;overflow-y:auto;padding:var(--spacing-md);font-size:13px;color:#374151;display:flex;flex-direction:column;gap:var(--spacing-sm)}.alerts-panel-toolbar{display:flex;flex-direction:column;gap:var(--spacing-xs);flex-shrink:0}.alerts-panel-filter-label{font-size:11px;opacity:.85}.alerts-panel-buttons{display:flex;flex-wrap:wrap;gap:6px}.alerts-panel-btn{padding:6px 10px;font-size:12px;border:1px solid rgba(0,0,0,.12);border-radius:8px;background:#ffffff80;color:#374151;cursor:pointer;transition:background .2s,border-color .2s}.alerts-panel-btn:hover:not(:disabled){background:#fffc;border-color:#0003}.alerts-panel-btn.active{background:var(--color-primary, #2563eb);border-color:var(--color-primary, #2563eb);color:#fff}.alerts-panel-btn:disabled{opacity:.6;cursor:not-allowed}.alerts-panel-btn-sm{padding:4px 8px;font-size:11px}.alerts-panel-error{padding:8px 10px;border-radius:8px;background:#f4433626;color:#c62828;font-size:12px;flex-shrink:0}.alerts-panel-list{display:flex;flex-direction:column;gap:8px;flex:1;min-height:0}.alerts-panel-empty{padding:var(--spacing-md);text-align:center;font-size:12px;opacity:.8}.alerts-panel-item{padding:10px;border-radius:8px;border:1px solid rgba(255,255,255,.4);background:#ffffff8c;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 1px 3px #0000000f,inset 0 1px #fff9;display:flex;flex-direction:column;gap:8px}.alerts-panel-item--critical{border-left:3px solid #dc2626}.alerts-panel-item--high{border-left:3px solid #ea580c}.alerts-panel-item--medium{border-left:3px solid #ca8a04}.alerts-panel-item--low,.alerts-panel-item--info{border-left:3px solid #0ea5e9}.alerts-panel-item-main{min-width:0}.alerts-panel-item-row{display:flex;flex-direction:column;gap:2px}.alerts-panel-item-title{font-weight:600;font-size:12px;color:#1f2937;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.alerts-panel-item-meta{font-size:10px;color:#4b5563;opacity:.95}.alerts-panel-item-desc{margin-top:4px;font-size:11px;line-height:1.35;color:#374151}.alerts-panel-item-dates{margin-top:6px;font-size:10px;color:#6b7280;display:flex;flex-wrap:wrap;gap:8px}.alerts-panel-item-actions{display:flex;flex-wrap:wrap;gap:6px;align-self:flex-start}.alerts-panel-load-more{flex-shrink:0;display:flex;justify-content:center;padding-top:4px}.global-site-selector{margin:0 auto var(--spacing-sm) auto;padding:0;background:transparent;border:none;position:relative;width:85%}.global-site-selector label{display:none}.global-site-selector select{width:100%;padding:4px 24px 4px 8px;border:1px solid rgba(224,224,224,.2);border-radius:var(--radius-sm);background:transparent;color:#e0e0e0;font-size:12px;font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' stroke='%23E0E0E0' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;background-size:12px 8px;text-align:left;letter-spacing:.2px;font-family:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-height:auto;box-sizing:border-box}.global-site-selector select:hover{border-color:#e0e0e066}.global-site-selector select:focus{outline:none}.sidebar-control-buttons{display:flex;gap:8px;margin:0 auto var(--spacing-xs) auto;align-items:center;justify-content:flex-start;width:85%}.control-btn{flex:1;min-width:0;padding:4px 8px;border:1px solid rgba(224,224,224,.2);border-radius:var(--radius-sm);background:transparent;color:#e0e0e0;font-size:12px;font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;box-sizing:border-box}.control-btn:hover{border-color:#e0e0e066;background:transparent}.control-btn:active{transform:none}.control-btn svg{width:16px;height:16px;stroke:currentColor;flex-shrink:0}.global-site-selector select option{background:var(--color-primary);color:var(--color-secondary);padding:12px 18px;font-weight:var(--font-weight-medium);font-size:15px;border:none;white-space:normal;word-wrap:break-word;overflow-wrap:break-word;max-width:100%}.global-site-selector select::-ms-expand{display:none}.global-site-selector select option:checked{background:#e0e0e033}.date-widget{display:flex;align-items:center;gap:16px;margin-bottom:30px;margin-left:auto;margin-right:auto;padding:0;background:transparent;border:none;box-shadow:none;justify-content:center;width:fit-content;font-family:Montserrat,sans-serif}.date-widget:before{display:none}.date-widget-oval{background:#e0e0e0;border-radius:38px;padding:16px 24px;min-width:100px;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 2px 8px #00000026;position:relative}.date-widget-header{display:flex;justify-content:space-between;align-items:center;width:100%;margin-bottom:8px;gap:12px}.date-day-week{font-size:12px;font-weight:var(--font-weight-semibold);background:#3a3a3a;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-transform:uppercase;letter-spacing:.5px}.date-month{font-size:12px;font-weight:var(--font-weight-semibold);color:var(--color-text);text-transform:uppercase;letter-spacing:.5px}.date-day-number{font-size:36px;font-weight:var(--font-weight-bold);color:var(--color-text);line-height:1;font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,sans-serif}.date-widget-time{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:8px;min-width:50px;height:auto;flex-shrink:0}.time-hours{font-size:32px;font-weight:var(--font-weight-bold);color:#e0e0e0;line-height:1;font-family:Montserrat,sans-serif;display:block;margin:0;padding:0;white-space:nowrap;min-height:38px}.time-minutes{font-size:32px;font-weight:var(--font-weight-bold);color:#e0e0e0;line-height:1;font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,sans-serif;display:block;margin:0;padding:0;white-space:nowrap;min-height:38px}#date-day-month,.date-widget .day,.date-widget .time{display:none}.main-content{flex:1;overflow-y:auto;padding:var(--spacing-lg);background-color:var(--color-background);position:relative}.main-content>.management-page-container,.main-content>.rota-page-container,.main-content>.page-container{position:absolute;inset:0;padding:var(--spacing-md);box-sizing:border-box}.nav-buttons .nav-btn-rectangle{width:100%;padding:15px;border:none;border-radius:var(--radius-xl);margin-bottom:10px;background-color:var(--color-secondary);color:var(--color-text);text-align:left;font-size:var(--font-size-base);cursor:pointer;position:relative;transition:var(--transition-fast)}.nav-buttons .nav-btn-rectangle:hover{background-color:var(--color-secondary);transform:translateY(-1px);box-shadow:var(--shadow-md)}.nav-buttons .nav-btn-rectangle span{position:absolute;right:15px;background-color:var(--color-secondary);color:var(--color-text-light);border-radius:var(--radius-full);padding:2px 6px;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.secondary-nav-buttons{margin:0 auto;width:85%}.nav-row{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);align-items:flex-start;justify-items:center}.secondary-nav-buttons.classic-style .nav-row{grid-template-columns:repeat(2,1fr);gap:0;justify-content:space-between}.nav-btn-wrapper{display:flex;flex-direction:column;align-items:center;gap:8px}.nav-btn-label{font-size:var(--font-size-xs);color:#e0e0e0;text-align:center;white-space:nowrap;font-weight:var(--font-weight-medium);line-height:1.2;max-width:80px;overflow:hidden;text-overflow:ellipsis;display:inline-block}.nav-btn-label.profile-name{max-width:60px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block}.nav-btn-icon-circle{background:transparent;color:var(--color-secondary);border:1px solid rgba(224,224,224,.2);border-radius:var(--radius-full);width:28px;height:28px;min-width:28px;min-height:28px;max-width:28px;max-height:28px;cursor:pointer;display:flex;align-items:center;justify-content:center;position:relative;transition:all var(--transition-fast);padding:0;margin:0;font-size:14px;line-height:1;aspect-ratio:1;box-sizing:border-box}.nav-btn-icon-circle:hover{background:#f444391a;border-color:var(--color-accent);color:var(--color-accent)}.secondary-nav-buttons.classic-style .nav-btn-icon-circle{width:50px;height:50px;min-width:50px;min-height:50px;max-width:50px;max-height:50px;background-color:var(--color-secondary);color:var(--color-text);border:none}.secondary-nav-buttons.classic-style .nav-btn-icon-circle:hover{background-color:var(--color-gray-300);transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:transparent}.nav-btn-icon{width:50px;height:50px;border:none;border-radius:30px;background-color:var(--color-primary);color:var(--color-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;position:relative;transition:var(--transition-fast);flex:1}.nav-btn-icon:hover{background-color:var(--color-primary);transform:translateY(-2px);box-shadow:var(--shadow-md)}.nav-btn-icon-circle svg,.nav-btn-icon svg{width:16px;height:16px;stroke:currentColor;stroke-width:2;fill:none}.secondary-nav-buttons.classic-style .nav-btn-icon-circle svg{width:28px;height:28px;stroke-width:2}.notification-badge{position:absolute;top:-5px;right:-5px;background-color:var(--color-accent);color:var(--color-secondary);border-radius:var(--radius-full);width:18px;height:18px;font-size:10px;font-weight:var(--font-weight-bold);display:flex;align-items:center;justify-content:center;border:2px solid var(--color-primary)}.bottom-nav-buttons{margin-top:auto;margin-left:auto;margin-right:auto;display:flex;gap:40px;padding-bottom:var(--spacing-lg);align-items:flex-start;justify-content:center;width:85%}.bottom-nav-buttons .nav-btn-wrapper{flex:1}.bottom-nav-buttons .nav-btn-icon-circle,.bottom-nav-buttons .nav-btn-icon{flex:0 0 50px}.nav-btn-icon-circle.logout,.nav-btn-icon.logout{background-color:var(--color-accent);color:var(--color-secondary)}.nav-btn-icon-circle.logout:hover,.nav-btn-icon.logout:hover{background-color:var(--color-accent-hover);transform:translateY(-2px);box-shadow:0 4px 12px #f444394d}.nav-btn-icon-circle.profile,.nav-btn-icon.profile{background-color:var(--color-secondary);color:var(--color-text);overflow:hidden}.nav-btn-icon-circle.profile:hover,.nav-btn-icon.profile:hover{background-color:var(--color-gray-300);color:var(--color-text);transform:translateY(-2px);box-shadow:var(--shadow-md)}.nav-btn-icon-circle.profile[style*=background-image]:hover{background-color:transparent;opacity:.9}.rota-go-btn{background-color:var(--color-primary);color:var(--color-secondary);border:none;padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);cursor:pointer;transition:var(--transition-fast)}.rota-go-btn:hover{background-color:var(--color-accent);transform:translateY(-1px)}.card{border:2px solid var(--color-primary);border-radius:var(--radius-xl);background:var(--color-background);box-shadow:var(--shadow-sm);overflow:hidden;display:flex;flex-direction:column;gap:0;height:100%;transition:box-shadow var(--transition-fast)}.card:hover{box-shadow:var(--shadow-md)}.card-header{display:flex;justify-content:space-between;align-items:center}.card-header h2,.card-header h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-secondary);margin:0;font-family:Montserrat,sans-serif}.card-content{padding:var(--spacing-md);flex:1;overflow-y:auto}.card-footer{padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-background-secondary);border-top:1px solid var(--color-border-light);border-radius:0 0 var(--radius-xl) var(--radius-xl)}.header-actions{display:flex;align-items:center;gap:var(--spacing-xs)}#rota-header-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-secondary);margin:0;white-space:nowrap}.card-header-task-label-switcher{position:relative}.task-label-switcher-trigger{display:inline-flex;align-items:center;background:none;border:none;padding:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-secondary);font-family:Montserrat,sans-serif;cursor:pointer;margin:0}.task-label-switcher-trigger:hover{opacity:.9}.task-label-switcher-label{white-space:nowrap}.task-label-switcher-dropdown{position:absolute;top:100%;left:0;margin-top:6px;min-width:180px;max-height:320px;overflow-y:auto;background:#fff;border:1px solid #e5e7eb;border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:50;padding:6px 0}.task-label-switcher-option{display:block;width:100%;text-align:left;padding:8px 14px;border:none;background:none;font-size:var(--font-size-sm);color:#111827;cursor:pointer;white-space:nowrap}.task-label-switcher-option:hover{background:#f3f4f6}.task-label-switcher-option.active{font-weight:var(--font-weight-semibold);background:#eff6ff;color:#1e40af}.modal{position:fixed;inset:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal)}.modal-content{width:90%;max-width:520px;background:var(--color-background);color:var(--color-text);border-radius:var(--radius-lg);box-shadow:var(--shadow-2xl);overflow:hidden;display:flex;flex-direction:column}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary);color:var(--color-secondary);border-bottom:1px solid var(--color-border-dark)}.modal-body{padding:var(--spacing-md);overflow-y:auto}.modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md) var(--spacing-md) var(--spacing-md);border-top:1px solid var(--color-border-light)}.close-btn{background:transparent;color:var(--color-secondary);border:none;font-size:22px;line-height:1;cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-sm);transition:all var(--transition-fast)}.close-btn:hover{background:var(--color-dark-300);color:var(--color-background)}.site-details-modal,.staff-details-modal,.resident-details-modal{position:fixed;inset:0;width:100vw;height:100vh;background:#000c;display:flex;align-items:center;justify-content:center;z-index:var(--z-max);padding:var(--spacing-md);box-sizing:border-box}.site-details-content,.staff-details-content,.resident-details-content{width:100%;max-width:1200px;max-height:90vh;background:var(--color-dark-100);border-radius:var(--radius-lg);box-shadow:var(--shadow-2xl);overflow:hidden;display:flex;flex-direction:column}.site-details-header,.staff-details-header,.resident-details-header{background:var(--color-dark-200);padding:var(--spacing-lg) var(--spacing-xl);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--color-border-dark)}.site-header-info,.staff-header-info,.resident-header-info{display:flex;align-items:center;gap:var(--spacing-md)}.site-icon-large,.staff-avatar-large,.resident-avatar-large{width:80px;height:80px;min-width:80px;min-height:80px;display:flex;align-items:center;justify-content:center;background:var(--color-dark-300);border-radius:var(--radius-full);font-size:var(--font-size-4xl);overflow:hidden;flex-shrink:0}.avatar-emoji-large{font-size:var(--font-size-3xl)}.site-title-section h1,.staff-title-section h1,.resident-title-section h1{margin:0;font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-background)}.site-subtitle,.staff-subtitle,.resident-subtitle{margin:var(--spacing-xs) 0 0 0;color:var(--color-text-muted);font-size:var(--font-size-base)}.close-btn-large{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-sm);transition:all var(--transition-fast)}.close-btn-large:hover{background:var(--color-dark-300);color:var(--color-background)}.site-details-body,.staff-details-body,.resident-details-body{flex:1;padding:var(--spacing-xl);overflow-y:auto}.site-details-grid,.staff-details-grid,.resident-details-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);height:100%}.site-info-card,.site-staff-card,.site-residents-card,.staff-info-card,.staff-sites-card,.staff-additional-card,.staff-actions-card,.resident-info-card,.resident-care-card,.resident-contact-card,.resident-actions-card{background:var(--color-dark-200);border-radius:var(--radius-md);padding:var(--spacing-lg);border:1px solid var(--color-border-dark)}.site-info-card h3,.site-staff-card h3,.site-residents-card h3,.staff-info-card h3,.staff-sites-card h3,.staff-additional-card h3,.staff-actions-card h3,.resident-info-card h3,.resident-care-card h3,.resident-contact-card h3,.resident-actions-card h3{margin:0 0 var(--spacing-md) 0;color:var(--color-background);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold)}.info-grid{display:grid;gap:var(--spacing-md)}.info-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) 0;border-bottom:1px solid var(--color-border-dark)}.info-item:last-child{border-bottom:none}.info-item label{color:var(--color-text-muted);font-weight:var(--font-weight-medium)}.info-item span{color:var(--color-background);font-weight:var(--font-weight-semibold)}.staff-list,.residents-list,.sites-list{display:flex;flex-direction:column;gap:var(--spacing-sm);max-height:300px;overflow-y:auto}.staff-member,.resident-item,.site-assignment{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);background:var(--color-dark-300);border-radius:var(--radius-sm);transition:background var(--transition-fast)}.staff-member:hover,.resident-item:hover{background:var(--color-dark-400)}.member-avatar,.resident-avatar{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--color-dark-500);border-radius:var(--radius-full)}.avatar-emoji{font-size:var(--font-size-xl)}.member-info,.resident-info,.site-info{display:flex;flex-direction:column;gap:2px}.member-name,.resident-name,.site-name{color:var(--color-background);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm)}.member-role,.resident-room,.site-id{color:var(--color-text-muted);font-size:var(--font-size-xs)}.site-icon-small{font-size:var(--font-size-xl)}.occupancy-badge,.status-badge,.role-badge,.care-level-badge{padding:4px var(--spacing-sm);border-radius:20px;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.occupancy-badge.low,.status-badge{background:var(--color-success-dark);color:var(--color-success-light)}.occupancy-badge.medium{background:var(--color-warning-dark);color:var(--color-warning-light)}.occupancy-badge.high{background:var(--color-danger-dark);color:var(--color-danger-light)}.role-badge{background:var(--color-badge-primary);color:var(--color-badge-primary-text)}.care-level-badge.high-care{background:var(--color-danger-dark);color:var(--color-danger-light)}.care-level-badge.medium-care{background:var(--color-warning-dark);color:var(--color-warning-light)}.care-level-badge.low-care{background:var(--color-success-dark);color:var(--color-success-light)}.care-level-badge.standard-care{background:var(--color-badge-primary);color:var(--color-badge-primary-text)}.action-buttons{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-sm)}.action-btn{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-fast)}.action-btn.primary{background:var(--color-accent-dark);color:#fff}.action-btn.primary:hover{background:var(--color-accent-hover)}.action-btn.secondary{background:var(--color-dark-300);color:var(--color-text-muted);border:1px solid var(--color-border-medium)}.action-btn.secondary:hover{background:var(--color-dark-400);color:var(--color-background)}.empty-state{color:var(--color-text-secondary);text-align:center;padding:var(--spacing-xxl) var(--spacing-md);font-style:italic}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:calc(var(--spacing-xxl) * 1.5) var(--spacing-md);color:var(--color-text-muted)}.loading-spinner{width:40px;height:40px;border:3px solid var(--color-dark-300);border-top:3px solid var(--color-background);border-radius:var(--radius-full);animation:var(--animation-spin);margin-bottom:var(--spacing-md)}.modal .form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--spacing-sm)}.modal .form-group input,.modal .form-group select,.modal .form-group textarea{padding:10px var(--spacing-sm);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);font-size:var(--font-size-sm)}.btn-primary{background:var(--color-accent);color:var(--color-background);border:1px solid var(--color-accent);padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast)}.btn-primary:hover{background:var(--color-accent-dark);border-color:var(--color-accent-dark)}.btn-secondary{background:var(--color-gray-100);color:var(--color-gray-900);border:1px solid var(--color-border-light);padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast)}.btn-secondary:hover{background:var(--color-gray-200);border-color:var(--color-gray-300)}.site-profile-modal{position:fixed;inset:0 0 0 220px;width:calc(100vw - 220px);height:100vh;background:#00000080;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg);box-sizing:border-box}.site-profile-container{width:100%;max-width:100%;max-height:95vh;height:95vh;background:var(--color-background);border:2px solid var(--color-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-2xl);display:flex;flex-direction:column;overflow:hidden}.site-profile-main{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--color-background);min-height:0}.site-profile-header{background:#000;padding:12px 16px;min-height:48px;height:48px;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);border-bottom:1px solid rgba(224,224,224,.1)}.site-profile-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-background);margin:0;flex:1}.site-profile-management-buttons{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.site-profile-emar-controls{display:flex;align-items:center;gap:var(--spacing-md);flex:1;justify-content:center}.management-btn{padding:8px 16px;background:transparent;color:var(--color-background);border:1px solid rgba(255,255,255,.2);border-radius:20px;font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.management-btn:hover{background:#ffffff1a;border-color:#ffffff4d}.site-profile-header-actions{display:flex;align-items:center;gap:var(--spacing-xs)}.site-profile-edit{background:none;border:none;color:var(--color-background);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-sm);transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.site-profile-edit:hover{background:#ffffff1a}.site-profile-close{background:none;border:none;color:var(--color-background);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-sm);transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.site-profile-close:hover{background:#ffffff1a}.site-profile-content{flex:1;padding:var(--spacing-lg);overflow-y:auto;background:var(--color-background)}.site-profile-content.emar-view-container{overflow:hidden;padding:0;height:100%;display:flex;flex-direction:column}.site-profile-box{background:var(--color-background);border:1px solid var(--color-primary);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.site-profile-box-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text);margin:0 0 var(--spacing-md) 0}.site-profile-box-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.edit-mode-actions{display:flex;gap:var(--spacing-sm);align-items:center}.view-button{padding:6px 16px;background:var(--color-accent);color:var(--color-background);border:none;border-radius:var(--radius-sm);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast)}.view-button:hover{background:var(--color-accent-dark);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.site-info-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.site-info-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.site-info-field{display:flex;flex-direction:column;gap:var(--spacing-xs)}.site-info-field label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text)}.site-info-input{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-sm);background:var(--color-background);color:var(--color-text);cursor:not-allowed}.site-info-input.editable{cursor:text;background:#fff;border-color:var(--color-accent)}.site-info-input.editable:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px #f444391a}.site-info-color.editable{cursor:pointer}.color-input-wrapper{display:flex;align-items:center;gap:var(--spacing-sm)}.site-info-color{width:50px;height:40px;border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:not-allowed;padding:0}.color-value{font-size:var(--font-size-sm);color:var(--color-text);font-family:var(--font-family-mono)}.users-list{margin-top:var(--spacing-md)}.users-avatars{display:flex;gap:var(--spacing-md);flex-wrap:wrap;overflow-x:auto;padding:var(--spacing-sm) 0}.user-avatar-item{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);min-width:60px}.user-avatar{width:60px;height:60px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;background-size:cover;background-position:center;border:2px solid var(--color-border)}.avatar-initial{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text)}.user-name{font-size:var(--font-size-xs);color:var(--color-text);text-align:center;max-width:60px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tasks-list{margin-top:var(--spacing-md)}.tasks-container{display:flex;flex-direction:column;gap:var(--spacing-xs);max-height:300px;overflow-y:auto}.task-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-sm);transition:all var(--transition-fast)}.task-item:hover{background:var(--color-gray-50);border-color:var(--color-accent)}.task-item.completed{opacity:.6}.task-content{display:flex;flex-direction:column;gap:2px;flex:1}.task-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text)}.task-due{font-size:var(--font-size-xs);color:var(--color-text-muted)}.task-status{font-size:var(--font-size-lg);color:var(--color-text-muted);margin-left:var(--spacing-sm)}.task-item.completed .task-status{color:var(--color-success)}.tasks-more{font-size:var(--font-size-xs);color:var(--color-text-muted);text-align:center;padding:var(--spacing-xs);font-style:italic}.compliance-list{margin-top:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm)}.compliance-section{border-bottom:1px solid var(--color-border);padding-bottom:var(--spacing-sm)}.compliance-header{display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:var(--spacing-xs) var(--spacing-sm);margin:0 calc(-1 * var(--spacing-sm));transition:background-color .2s ease;border-radius:4px;font-family:inherit;font-size:inherit;color:inherit}.compliance-header:focus{outline:2px solid var(--color-primary, #007bff);outline-offset:2px}.compliance-header:hover{background-color:#00000005}.compliance-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text)}.compliance-arrow{font-size:var(--font-size-xs);color:var(--color-text-muted);transition:transform .2s ease,color .2s ease;display:inline-block}.compliance-header:hover .compliance-arrow{color:var(--color-text)}.site-profile-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg)}.site-profile-box-half{margin-bottom:0}@media(max-width:768px){.site-details-grid,.staff-details-grid,.resident-details-grid{grid-template-columns:1fr}.site-details-header,.staff-details-header,.resident-details-header,.site-details-body,.staff-details-body,.resident-details-body{padding:var(--spacing-md)}.site-title-section h1,.staff-title-section h1,.resident-title-section h1{font-size:var(--font-size-2xl)}.site-icon-large,.staff-avatar-large,.resident-avatar-large{width:60px;height:60px;font-size:36px}.action-buttons{grid-template-columns:1fr}.site-profile-modal{left:0;width:100vw;padding:var(--spacing-md)}.site-profile-container{max-width:100%;max-height:98vh;height:100vh}.site-profile-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md)}.site-profile-management-buttons{width:100%;justify-content:flex-start}.management-btn{font-size:var(--font-size-xs);padding:6px 12px}.site-info-row,.site-profile-row{grid-template-columns:1fr}.site-profile-content{padding:var(--spacing-md)}}.confirm-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal, 10000)}.confirm-modal{background:var(--color-background, #ffffff);color:var(--color-text, #2e2e2e);border-radius:var(--radius-lg, 12px);max-width:420px;width:90%;box-shadow:0 10px 25px #0003;overflow:hidden}.confirm-modal-header{padding:18px 20px 0}.confirm-modal-title{margin:0;font-size:1.125rem;font-weight:600;line-height:1.3}.confirm-modal-body{padding:14px 20px 20px}.confirm-modal-message{margin:0;font-size:.9375rem;line-height:1.5;color:var(--color-text-secondary, #555)}.confirm-modal-actions{display:flex;gap:12px;justify-content:flex-end;padding:0 20px 20px}.confirm-modal-btn{padding:10px 24px;border-radius:9999px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;min-width:90px}.confirm-modal-cancel{border:1px solid #2e2e2e;background:transparent;color:#2e2e2e}.confirm-modal-cancel:hover{background:#2e2e2e0f}.confirm-modal-confirm{border:none;color:#fff}.confirm-modal-confirm--primary{background:var(--color-primary, #2563eb)}.confirm-modal-confirm--primary:hover:not(:disabled){filter:brightness(1.08)}.confirm-modal-confirm--danger{background:#dc2626}.confirm-modal-confirm--danger:hover:not(:disabled){background:#b91c1c}.confirm-modal-confirm--black{background:#1f2937;color:#fff}.confirm-modal-confirm--black:hover:not(:disabled){background:#111827}.confirm-modal-btn:disabled{opacity:.7;cursor:not-allowed}.page-container{padding:var(--spacing-md);height:100%;width:100%;display:flex;flex-direction:column;background:var(--color-background);box-sizing:border-box;overflow:hidden;position:relative}.page-main-container{background:var(--color-background);border:2px solid var(--color-primary);border-radius:var(--radius-xl);padding:0;height:100%;width:100%;flex:1;display:flex;flex-direction:column;box-shadow:var(--shadow-sm);overflow:hidden;box-sizing:border-box}.page-close-btn{position:fixed;top:20px;right:20px;width:60px;height:60px;min-width:60px;min-height:60px;max-width:60px;max-height:60px;background-color:var(--color-accent);color:var(--color-secondary);border:none;border-radius:50%;padding:0;margin:0;box-sizing:border-box;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:var(--font-weight-semibold);line-height:1;text-align:center;box-shadow:var(--shadow-md);cursor:pointer;z-index:var(--z-fixed);transition:transform var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast);-webkit-tap-highlight-color:transparent;overflow:hidden}.page-close-btn:hover{transform:scale(1.05);box-shadow:var(--shadow-lg)}.page-close-btn:active{transform:scale(.95)}@media(max-width:768px){.page-container{padding:var(--spacing-sm)}.page-close-btn{width:50px;height:50px;min-width:50px;min-height:50px;max-width:50px;max-height:50px;font-size:20px;top:10px;right:10px}}.rota-table th.summary-column{width:70px;min-width:70px;max-width:70px;background:linear-gradient(135deg,var(--color-background-secondary) 0%,var(--color-gray-200) 100%);position:sticky;left:90px;z-index:25;border-right:2px solid var(--color-gray-300);box-shadow:2px 0 4px #0000001a;top:0}.rota-table th.day-column{width:48px;min-width:48px;max-width:48px;text-align:center;background:linear-gradient(135deg,var(--color-background-secondary) 0%,var(--color-gray-200) 100%)}.rota-table th.day-column.current-day{background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-dark) 100%);color:var(--color-background);box-shadow:0 2px 8px #f444394d}.rota-table td{padding:14px var(--spacing-sm);border:none;border-bottom:1px solid var(--color-gray-200);border-right:1px solid var(--color-gray-200);vertical-align:top;min-height:50px;margin:0;background:var(--color-background);transition:background-color var(--transition-fast)}.rota-table td.staff-cell{width:90px;min-width:90px;max-width:90px;background:linear-gradient(135deg,var(--color-background-secondary) 0%,var(--color-gray-200) 100%);font-weight:var(--font-weight-semibold);position:sticky;left:0;z-index:20;border-right:2px solid var(--color-gray-300);box-shadow:2px 0 4px #0000001a;color:var(--color-gray-700);padding:var(--spacing-xs) 6px}.rota-table td.summary-cell{width:70px;min-width:70px;max-width:70px;background:linear-gradient(135deg,var(--color-background-secondary) 0%,var(--color-gray-200) 100%);font-size:10px;color:var(--color-gray-600);position:sticky;left:90px;z-index:15;border-right:2px solid var(--color-gray-300);box-shadow:2px 0 4px #0000001a;font-weight:var(--font-weight-medium)}.conflict{background:var(--color-secondary);border-color:var(--color-accent)}.rota-table td.shift-cell{width:48px;min-width:48px;max-width:48px;background-color:var(--color-background);cursor:pointer;transition:var(--transition-fast);min-height:50px;position:relative;text-align:center}.rota-table td.shift-cell:hover{background-color:var(--color-background-secondary);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.rota-table td.shift-cell:hover:after{content:"+";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-background);background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-dark) 100%);border-radius:var(--radius-full);width:24px;height:24px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #f444394d;z-index:10}.rota-table td.shift-cell.has-shift{background-color:var(--color-background-secondary);border:1px solid var(--color-gray-300)}.shift-label{background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-dark) 100%);color:var(--color-background);border-radius:var(--radius-sm);padding:4px var(--spacing-xs);font-size:11px;font-weight:var(--font-weight-medium);display:inline-block;box-shadow:0 2px 4px #f4443933;border:none}.shift-label[draggable=true]{cursor:grab}.shift-label.dragging{opacity:.6}.shift-cell.drop-target{outline:2px dashed var(--color-accent)}.rota-table td.shift-cell.has-shift:hover{background-color:var(--color-secondary)}.staff-category{font-weight:var(--font-weight-semibold);color:var(--color-gray-700);background:linear-gradient(135deg,var(--color-gray-200) 0%,var(--color-gray-300) 100%);cursor:pointer;-webkit-user-select:none;user-select:none;border-bottom:2px solid var(--color-gray-400)}.staff-category:hover{background:linear-gradient(135deg,var(--color-gray-300) 0%,var(--color-gray-400) 100%)}.staff-category td.staff-cell{position:sticky;left:0;z-index:35;border-right:2px solid var(--color-gray-300);background:linear-gradient(135deg,var(--color-gray-200) 0%,var(--color-gray-300) 100%);box-shadow:2px 0 4px #0000001a;width:90px;min-width:90px;max-width:90px}.staff-category td.summary-cell{position:sticky;left:90px;z-index:30;border-right:2px solid var(--color-gray-300);background:linear-gradient(135deg,var(--color-gray-200) 0%,var(--color-gray-300) 100%);box-shadow:2px 0 4px #0000001a;width:70px;min-width:70px;max-width:70px}.staff-category td.category-cell{background:linear-gradient(135deg,var(--color-gray-200) 0%,var(--color-gray-300) 100%);border:none;cursor:default;pointer-events:none}.staff-category .category-toggle{margin-right:var(--spacing-xs);transition:transform var(--transition-fast)}.staff-category.expanded .category-toggle{transform:rotate(90deg)}.staff-member{padding-left:var(--spacing-md);color:var(--color-text);font-weight:var(--font-weight-normal)}.staff-member-row{display:none}.staff-member-row.expanded{display:table-row}.shift-input{width:100%;border:none;background:transparent;font-size:11px;padding:2px 4px;outline:none;resize:none;min-height:20px}.shift-input:focus{background-color:var(--color-secondary);border:1px solid var(--color-accent);border-radius:var(--radius-xs)}.rota-header-left{display:flex;align-items:center}.rota-header-left select{background-color:var(--color-primary);color:var(--color-secondary);border:1px solid var(--color-primary);border-radius:var(--radius-sm);padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm);cursor:pointer}.rota-header-center{display:flex;align-items:center;gap:15px;flex:1;justify-content:center}#rota-date-range{color:var(--color-secondary);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);min-width:120px;text-align:center}@media(max-width:768px){.rota-table th.staff-column,.rota-table td.staff-cell{width:70px;min-width:70px;max-width:70px}.rota-table th.summary-column,.rota-table td.summary-cell{width:50px;min-width:50px;max-width:50px}.staff-category td.staff-cell,.staff-category td.summary-cell{width:70px;min-width:70px;max-width:70px}}.resident-dropdown{margin-bottom:var(--spacing-sm);border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);overflow:hidden}.resident-header{background-color:var(--color-secondary);padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--color-secondary);transition:background-color var(--transition-fast)}.resident-header:hover{background-color:var(--color-secondary)}.resident-header h3{margin:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text)}.task-count{font-size:var(--font-size-xs);color:var(--color-text);background-color:var(--color-secondary);padding:2px var(--spacing-xs);border-radius:12px}.dropdown-arrow{font-size:var(--font-size-xs);color:var(--color-text);transition:transform var(--transition-fast)}.resident-tasks{max-height:500px;overflow-y:auto;transition:max-height var(--transition-normal)}.resident-tasks.collapsed{max-height:0;overflow:hidden}.task-item{display:flex;align-items:center;padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-secondary);background:var(--color-secondary);border-radius:var(--radius-sm);margin-bottom:var(--spacing-xs);box-shadow:var(--shadow-xs);transition:var(--transition-fast)}.task-item:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.task-item .checkbox{width:20px;height:20px;border:2px solid var(--color-gray-300);border-radius:var(--radius-full);margin-right:var(--spacing-md);cursor:pointer;transition:var(--transition-fast);flex-shrink:0}.task-item .checkbox.completed{background-color:var(--color-accent);border-color:var(--color-accent)}.task-item .checkbox:hover{border-color:var(--color-accent)}.task-item .task-content{flex:1;display:flex;flex-direction:column;gap:4px;cursor:pointer;transition:var(--transition-fast);padding:4px;border-radius:var(--radius-xs)}.task-item .task-content:hover{background-color:var(--color-secondary);transform:translate(2px)}.task-item .task-description{font-size:var(--font-size-sm);color:var(--color-text);font-weight:var(--font-weight-medium);line-height:1.4}.task-item .task-meta{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-xs);color:var(--color-text)}.task-item .priority-flag{width:18px;height:18px;border-radius:var(--radius-xs);display:inline-block;margin-right:6px;position:relative;box-shadow:var(--shadow-xs)}.task-item .priority-flag:after{content:"";position:absolute;inset:0;background:linear-gradient(45deg,transparent 30%,rgba(255,255,255,.3) 50%,transparent 70%);border-radius:var(--radius-xs)}.task-item .priority-flag.high{background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-dark) 100%)}.task-item .priority-flag.medium{background:linear-gradient(135deg,var(--color-warning) 0%,var(--color-warning-dark) 100%)}.task-item .priority-flag.low{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-gray-800) 100%)}.task-item .priority-flag.none{background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-gray-200) 100%)}.task-item .staff-avatar{width:36px;height:36px;border-radius:var(--radius-full);object-fit:cover;border:3px solid var(--color-gray-200);box-shadow:0 3px 8px #00000026;flex-shrink:0;margin-left:var(--spacing-sm);transition:var(--transition-fast)}.task-item .staff-avatar:hover{transform:scale(1.1);box-shadow:0 5px 15px #0003}.task-item .delete-btn{background:none;border:none;color:var(--color-accent);cursor:pointer;padding:10px;border-radius:var(--radius-xs);transition:var(--transition-fast);flex-shrink:0;margin-left:var(--spacing-xs);display:flex;align-items:center;justify-content:center}.task-item .delete-btn:hover{background-color:var(--color-secondary);color:var(--color-accent);transform:scale(1.05)}.task-item .delete-btn:active{transform:scale(.95)}.task-item .delete-btn svg{width:18px;height:18px}#tasks-filter-menu{z-index:var(--z-dropdown);min-width:140px;position:absolute;top:100%;left:50%;transform:translate(-50%);background:var(--color-secondary);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);padding:var(--spacing-xs)}#tasks-filter-menu .dropdown-item{padding:var(--spacing-xs) var(--spacing-sm);cursor:pointer;border-radius:var(--radius-xs);transition:background-color var(--transition-fast)}#tasks-filter-menu .dropdown-item:hover{background-color:var(--color-background)}#tasks-header{display:flex;align-items:center;justify-content:space-between;cursor:pointer;-webkit-user-select:none;user-select:none}#tasks-header:after{content:"▼";font-size:var(--font-size-xs);color:var(--color-text);margin-left:var(--spacing-xs);transition:transform var(--transition-fast)}#tasks-header:hover:after{color:var(--color-text)}.collapse-header{display:flex;align-items:center;padding:14px var(--spacing-lg);background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-gray-100) 100%);border-radius:var(--radius-sm);margin-bottom:var(--spacing-sm);cursor:pointer;transition:var(--transition-fast);font-weight:var(--font-weight-semibold);color:var(--color-text);border:1px solid var(--color-gray-200);box-shadow:var(--shadow-xs)}.collapse-header:hover{background:linear-gradient(135deg,var(--color-gray-100) 0%,var(--color-gray-200) 100%);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.collapse-header .chevron{width:0;height:0;border-left:6px solid var(--color-primary);border-top:4px solid transparent;border-bottom:4px solid transparent;margin-right:var(--spacing-sm);transition:transform var(--transition-fast)}.collapse-header.expanded .chevron{transform:rotate(90deg)}.collapse-body{padding-left:var(--spacing-lg);margin-bottom:var(--spacing-md);border-left:2px solid var(--color-gray-200);margin-left:var(--spacing-sm)}.alerts-container{padding:10px 10px 0;max-height:1200px;overflow-y:auto}.alert-group{margin-bottom:var(--spacing-md)}.alert-group:last-child{margin-bottom:0}.alert-group-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);margin:0 0 var(--spacing-sm) 0;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);display:flex;align-items:center;gap:var(--spacing-xs)}.alert-group.urgent .alert-group-title{background:var(--color-secondary);color:var(--color-accent);border-left:4px solid var(--color-accent)}.alert-group.compliance .alert-group-title,.alert-group.payroll .alert-group-title{background:var(--color-secondary);color:var(--color-text);border-left:4px solid var(--color-primary)}.alert-list{display:flex;flex-direction:column;gap:var(--spacing-xs)}.alert-item{display:flex;justify-content:space-between;align-items:flex-start;padding:var(--spacing-sm);border-radius:var(--radius-sm);border:1px solid var(--color-gray-200);transition:var(--transition-fast);cursor:pointer}.alert-item:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.alert-item.urgent{background:var(--color-secondary);border-left:4px solid var(--color-accent)}.alert-item.compliance,.alert-item.payroll{background:var(--color-secondary);border-left:4px solid var(--color-primary)}.alert-content{display:flex;flex-direction:column;gap:4px;flex:1}.alert-title{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);color:var(--color-text)}.alert-description{font-size:var(--font-size-xs);color:var(--color-text);line-height:1.4}.alert-time{font-size:11px;color:var(--color-text);white-space:nowrap;margin-left:var(--spacing-sm)}.message-item{display:flex;align-items:center;padding:10px var(--spacing-xs);cursor:default;border-bottom:1px solid var(--color-secondary);border-radius:0;transition:background var(--transition-fast);position:relative}.message-item:hover{background-color:var(--color-gray-100)}.message-item .avatar{width:44px;height:44px;border-radius:var(--radius-full);background-color:var(--color-secondary);background-size:cover;background-position:center;margin-right:var(--spacing-sm);box-shadow:var(--shadow-xs);flex-shrink:0;position:relative;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border .2s;cursor:pointer}.message-item .avatar:hover{transform:scale(1.05);box-shadow:var(--shadow-sm)}.message-item .avatar img{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-full)}.message-item .avatar span{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.message-summary{min-width:0;flex:1;overflow:hidden;transition:background var(--transition-fast);border-radius:var(--radius-sm);padding:2px 4px;margin:-2px -4px}.message-item:not(.multi-select-active) .message-summary:hover{background-color:var(--color-gray-50)}.message-summary .name{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);color:var(--color-text)}.message-summary .preview{font-size:var(--font-size-xs);color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-item .right-side{display:flex;align-items:center;gap:var(--spacing-xs);flex-shrink:0}.message-item .group-badge{background:var(--color-secondary);color:var(--color-text);font-size:10px;padding:2px 6px;border-radius:10px;white-space:nowrap}.message-item .notification-badge{background:var(--color-accent);color:var(--color-background);font-size:11px;font-weight:var(--font-weight-bold);padding:2px 6px;border-radius:10px;min-width:18px;text-align:center;white-space:nowrap;animation:pulse 2s infinite}.message-item.archived{opacity:.7}.message-item.multi-select-active{cursor:default}.message-item.multi-select-active:hover{background-color:var(--color-gray-50);transform:none}.message-item.chat-selected{background-color:#e0e0e080}.message-item.has-unread{background:linear-gradient(135deg,#e85d9e14,#7b61ff14)}.message-item.has-unread .message-summary .name{font-weight:var(--font-weight-bold)}.message-item.has-unread .message-summary .preview{color:#111827}.message-item.has-unread .right-side .message-time{color:#2e2e2e;font-weight:var(--font-weight-medium)}.pin-button{background:transparent;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;color:var(--color-text);opacity:.6;transition:opacity var(--transition-fast),transform var(--transition-fast);border-radius:var(--radius-sm);margin-left:var(--spacing-xs)}.pin-button:hover{opacity:1;transform:scale(1.1);background-color:var(--color-gray-100)}.pin-button:active{transform:scale(.95)}.pin-button svg{width:16px;height:16px}.pinned-indicator{display:flex;align-items:center;justify-content:center;color:#2e2e2e;margin-left:var(--spacing-xs);opacity:.8}.chat-unread-badge{background:#e85d9e;background:#3a3a3a;color:#fff;font-size:11px;font-weight:var(--font-weight-bold);padding:2px 6px;border-radius:999px;min-width:18px;text-align:center;box-shadow:0 1px 3px #0003}.archived-section-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;font-size:14px;font-weight:500;color:#008069;cursor:pointer;border-bottom:1px solid #e4e6eb;background:#f0f2f5}.archived-section-header:hover{background:#e4e6eb}.archived-section-header svg{transition:transform .2s}.archives-view-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--color-border);background:var(--color-background);flex-shrink:0}.archives-back-btn{background:none;border:none;font-size:var(--font-size-sm);color:var(--color-accent);cursor:pointer;padding:4px 8px;display:flex;align-items:center;gap:4px;transition:background var(--transition-fast),color var(--transition-fast);border-radius:var(--radius-sm)}.archives-back-btn:hover{background:var(--color-gray-100);color:var(--color-accent-dark)}.archives-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text);margin:0;text-align:center;flex:1}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.chat-view-container{display:flex;flex-direction:column;flex:1;height:100%;box-sizing:border-box;min-height:0}.message-history-wrapper{flex:1;overflow:hidden;position:relative;display:flex;flex-direction:column;min-height:0}.scroll-to-bottom-btn{position:absolute;bottom:20px;left:50%;transform:translate(-50%);width:40px;height:40px;border-radius:50%;background:#fffffff2;color:var(--color-text);border:1px solid rgba(0,0,0,.1);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 3px #0000001a;z-index:100;transition:all var(--transition-fast);opacity:1;animation:fadeInSlideUp .3s ease-out forwards;overflow:visible;padding:0;margin:0}.scroll-to-bottom-btn svg{display:block;flex-shrink:0}.scroll-to-bottom-btn:hover{background:#fff;transform:translate(-50%) scale(1.1);box-shadow:0 2px 6px #00000026}.scroll-to-bottom-btn:active{transform:translate(-50%) scale(.95)}@keyframes fadeInSlideUp{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.message-history{flex:1;overflow-y:auto;overflow-x:hidden;padding:10px 12px;display:flex;flex-direction:column;align-items:stretch;gap:8px;width:100%;box-sizing:border-box;min-height:0;-webkit-overflow-scrolling:touch;transform:translateZ(0);will-change:scroll-position}.message-history{scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.2) transparent}.message-history::-webkit-scrollbar{width:8px}.message-history::-webkit-scrollbar-track{background:transparent}.message-history::-webkit-scrollbar-thumb{background-color:#0003;border-radius:4px;border:2px solid transparent;background-clip:padding-box}.message-history::-webkit-scrollbar-thumb:hover{background-color:#0000004d}.message-input-form{display:flex;padding-top:10px;border-top:1px solid var(--color-gray-200)}.message-input-form input{flex-grow:1;border:1px solid var(--color-gray-200);border-radius:18px;padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm)}.message-input-form button{margin-left:var(--spacing-xs);border-radius:var(--radius-sm);border:1px solid var(--color-gray-200);background-color:var(--color-secondary);cursor:pointer}.message-bubble-wrapper{display:flex;flex-direction:column;margin-bottom:6px;max-width:65%;animation:messageSlideIn var(--transition-normal) ease-out}.message-bubble-wrapper.received{max-width:65%}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-bubble-wrapper.sent{align-self:flex-end!important;margin-right:6px!important;margin-left:auto!important;max-width:calc(100% - 12px)!important;padding-right:0!important;width:fit-content;min-width:0}.message-bubble-wrapper.received{align-self:flex-start!important;margin-left:0!important;margin-right:auto!important;max-width:65%;width:fit-content}.system-message-wrapper{display:flex;justify-content:center;align-items:center;margin:12px 0;padding:0 12px}.system-message{display:inline-flex;align-items:center;padding:4px 10px;background:#e0e0e0;border-radius:999px;border:none;max-width:80%;text-align:center}.system-message-text{font-size:10px;color:#2e2e2e;font-style:normal}.system-message-time{font-size:8px;color:#2e2e2e;white-space:nowrap}.message-sender-info{display:flex;align-items:center;gap:var(--spacing-xs);margin-bottom:4px;margin-left:8px}.sender-avatar{width:24px;height:24px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-dark) 100%);color:var(--color-background);display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:var(--font-weight-semibold);flex-shrink:0;box-shadow:var(--shadow-xs)}.sender-name{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text);opacity:.8}.message-bubble{padding:8px 12px;border-radius:18px;word-wrap:break-word;position:relative;box-shadow:0 1px 2px #0000001a;transition:var(--transition-fast);line-height:1.4;font-size:var(--font-size-sm)}.message-bubble-container{position:relative;display:inline-block;width:fit-content}.message-bubble-wrapper.sent .message-bubble-container{margin-left:auto}.message-bubble-wrapper.received .message-bubble-container{margin-right:auto}.message-bubble-wrapper.sent .message-bubble{background:#bdbaba;background-color:#bdbaba;color:#2e2e2e;border-bottom-right-radius:4px}.message-bubble-wrapper.received .message-bubble{background-color:#e0e0e0;color:#2e2e2e;border-bottom-left-radius:4px}.message-bubble:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.message-reactions{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px;margin-bottom:4px}.reaction-badge{display:flex;align-items:center;gap:4px;padding:0;background:transparent;border:none;border-radius:0;cursor:pointer;font-size:12px;transition:all .2s;box-shadow:none}.reaction-badge.single-reaction{padding:0;background:transparent;border:none}.reaction-badge.single-reaction .reaction-emoji{font-size:18px}.reaction-badge:not(.single-reaction){padding:4px 10px;background:#ffffffe6;border:1px solid rgba(0,0,0,.1);border-radius:16px;box-shadow:0 1px 2px #0000000d}.reaction-badge:hover{transform:scale(1.05)}.reaction-badge:not(.single-reaction).user-reacted{background:#d9fdd3;border-color:#008069}.reaction-emoji{font-size:14px}.reaction-count{font-weight:500;color:#54656f;font-size:12px}.reaction-badge:not(.single-reaction).user-reacted .reaction-count{color:#008069}.message-reaction-button-container{position:absolute;bottom:-8px;left:-12px;z-index:10}.message-bubble-wrapper.sent .message-reaction-button-container{right:-12px;left:auto}.message-reaction-button{display:none;align-items:center;justify-content:center;width:24px;height:24px;background:#fff;border:1px solid #e4e6eb;border-radius:50%;cursor:pointer;padding:0;transition:all .2s;box-shadow:0 1px 2px #0000001a}.message-bubble-wrapper:hover .message-reaction-button-container .message-reaction-button{display:flex}.message-reaction-button:hover{background:#f0f2f5;transform:scale(1.1)}.message-reaction-button svg{width:14px;height:14px;stroke:#54656f}.reaction-picker{position:absolute;bottom:calc(100% + 8px);left:0;display:flex;gap:4px;background:#fff;border:1px solid #e4e6eb;border-radius:24px;padding:4px;box-shadow:0 4px 12px #00000026;z-index:100}.message-bubble-wrapper.sent .reaction-picker{right:0;left:auto}.reaction-picker-item{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:none;border:none;border-radius:50%;cursor:pointer;font-size:20px;transition:all .2s;padding:0}.reaction-picker-item:hover{background:#f0f2f5;transform:scale(1.2)}.timestamp{font-size:11px;color:var(--color-text-secondary);margin-top:6px;padding:0 var(--spacing-xs);font-weight:var(--font-weight-medium);opacity:.8}.message-bubble-wrapper.sent .timestamp{text-align:right}.message-bubble-wrapper.received .timestamp{text-align:left}.message-content{margin-bottom:4px;line-height:1.4}.message-meta{display:flex;align-items:center;justify-content:flex-end;gap:4px;margin-top:4px}.message-bubble-wrapper.received .message-meta{justify-content:flex-start}.message-time{font-size:11px;color:#2e2e2e;white-space:nowrap;opacity:.7}.message-bubble-wrapper.sent .message-time,.message-bubble-wrapper.received .message-time{color:#2e2e2e;opacity:.7}.message-status{font-size:var(--font-size-xs);color:#fffc}.message-status.delivered,.message-status.read{color:#4fc3f7}.typing-indicator{display:flex;align-items:center;gap:var(--spacing-xs);margin-bottom:var(--spacing-sm);margin-left:8px;opacity:0;transform:translateY(10px);transition:all var(--transition-normal)}.typing-indicator.active{opacity:1;transform:translateY(0)}.typing-avatar{width:24px;height:24px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-gray-800) 100%);color:var(--color-background);display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:var(--font-weight-semibold);flex-shrink:0}.typing-bubble{background:var(--color-gray-200);border-radius:18px 18px 18px 4px;padding:var(--spacing-sm) var(--spacing-md);display:flex;align-items:center;gap:4px;box-shadow:var(--shadow-xs)}.typing-dot{width:6px;height:6px;border-radius:var(--radius-full);background:var(--color-primary);animation:typingDot 1.4s infinite ease-in-out}.typing-dot:nth-child(1){animation-delay:-.32s}.typing-dot:nth-child(2){animation-delay:-.16s}@keyframes typingDot{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1);opacity:1}}.date-header{text-align:center;margin:var(--spacing-md) 0;position:sticky;top:0;z-index:5;background:transparent;transition:none;contain:layout style paint}.date-header:before{display:none}.date-header span{background:#fffffff2;padding:6px 12px;border-radius:12px;font-size:var(--font-size-xs);color:var(--color-text);position:relative;z-index:2;border:1px solid rgba(0,0,0,.1);display:inline-block;font-weight:var(--font-weight-medium);box-shadow:0 1px 3px #0000001a}.date-header.sticky{z-index:10;margin:0;padding:var(--spacing-xs) 0;border-bottom:none;box-shadow:none;background:transparent;transform:translateZ(0);backface-visibility:hidden;-webkit-font-smoothing:antialiased}.date-header.sticky:before{display:none}.date-header.sticky span{background:#fffffff2;border:1px solid rgba(0,0,0,.1);box-shadow:0 1px 3px #0000001a}.date-group{position:relative}.messages-drawer,.mail-drawer{position:fixed;top:0;right:-400px;width:400px;height:100vh;background:var(--color-primary);box-shadow:-4px 0 20px #0000004d;z-index:var(--z-fixed);transition:right var(--transition-normal);display:flex;flex-direction:column}.mail-drawer{width:600px;right:-600px}.messages-drawer.active,.mail-drawer.active{right:0}.messages-drawer-header,.mail-drawer-header{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary);color:var(--color-secondary);display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--color-border-dark);min-height:60px}.header-left h2{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);color:var(--color-secondary)}.header-right{display:flex;align-items:center;gap:var(--spacing-xs)}.header-action-btn{background:transparent;border:1px solid rgba(255,255,255,.3);color:#e0e0e0;cursor:pointer;padding:0;border-radius:50%;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;width:32px;height:32px;min-width:32px;min-height:32px}.header-action-btn svg{width:18px;height:18px;stroke:currentColor;fill:none}.header-action-btn:hover{background:#ffffff1a;border-color:#ffffff80;color:#fff}.close-drawer-btn{background:none;border:none;color:var(--color-secondary);font-size:var(--font-size-xl);cursor:pointer;padding:var(--spacing-xs);width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);transition:all var(--transition-fast)}.close-drawer-btn:hover{background-color:var(--color-dark-300);color:var(--color-background)}.messages-drawer-content,.mail-drawer-content{flex:1;display:flex;flex-direction:column;overflow:hidden}.mail-drawer-content iframe{width:100%;height:100%;border:none;background:#fff}.back-btn{background:none;border:none;font-size:var(--font-size-base);cursor:pointer;color:var(--color-text);padding:4px 8px;border-radius:var(--radius-sm);transition:background var(--transition-fast);display:flex;align-items:center;height:100%;flex-shrink:0;font-weight:var(--font-weight-semibold)}.back-btn:hover{background:#0000000d}.messages-container{display:flex;flex-direction:column;height:100%;background:var(--color-background);overflow:hidden}.messages-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--color-primary);color:var(--color-secondary);border-bottom:1px solid var(--color-border-dark);height:48px;flex-shrink:0;box-sizing:border-box}.messages-header h2{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-secondary)}.messages-header-actions{display:flex;gap:var(--spacing-xs);align-items:center}.messages-content{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0;position:relative;height:100%}.messages-content-inner{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden;width:100%;height:100%}.conversations-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.2) transparent}.conversations-list::-webkit-scrollbar{width:8px}.conversations-list::-webkit-scrollbar-track{background:transparent}.conversations-list::-webkit-scrollbar-thumb{background-color:#0003;border-radius:4px;border:2px solid transparent;background-clip:padding-box}.conversations-list::-webkit-scrollbar-thumb:hover{background-color:#0000004d}.conversations-list .message-item{border-bottom:1px solid var(--color-border);padding:10px 12px;cursor:default;transition:background var(--transition-fast);display:flex;align-items:center;gap:12px}.conversations-list .message-item:hover{background:var(--color-gray-50)}.conversations-list .message-item .avatar{width:44px;height:44px;border-radius:var(--radius-full);background:var(--color-gray-200);display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-semibold);color:var(--color-text);font-size:var(--font-size-sm);flex-shrink:0;overflow:hidden;box-shadow:0 1px 3px #0000001a}.conversations-list .message-item .avatar img{width:100%;height:100%;object-fit:cover}.conversations-list .message-item .message-summary{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.conversations-list .message-item .message-summary .name{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);color:var(--color-text);display:flex;align-items:center;gap:6px;line-height:1.3}.conversations-list .message-item .message-summary .preview{font-size:var(--font-size-xs);color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.conversations-list .message-item .right-side{display:flex;flex-direction:row;align-items:center;gap:6px;flex-shrink:0}.conversations-list .message-item .right-side .message-time{font-size:11px;color:var(--color-text-muted);white-space:nowrap}.new-message-panel{height:100%;width:100%;display:flex;flex-direction:column;overflow:hidden;background:var(--color-background)}.new-message-panel__form{flex-shrink:0;padding:10px 12px;border-bottom:1px solid var(--color-border);box-sizing:border-box}.new-message-panel__input{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-base);margin-bottom:var(--spacing-sm);box-sizing:border-box}.new-message-panel__selected-count{font-size:var(--font-size-sm);color:var(--color-text-muted)}.new-message-panel__scroll{flex:1 1 0;min-height:0;overflow-y:auto;overflow-x:hidden}.new-message-panel__list{display:flex;flex-direction:column;padding:0;width:100%;box-sizing:border-box}.new-message-panel__item{display:flex;align-items:center;padding:6px 12px;cursor:pointer;border-radius:var(--radius-sm);transition:background var(--transition-fast);gap:8px;flex-shrink:0;border:none;width:100%;box-sizing:border-box;background:transparent;color:inherit;font:inherit;text-align:left}.new-message-panel__item:hover{background:var(--color-gray-50)}.new-message-panel__item--selected{background:#f444391a}.new-message-panel__item--create-group{border-bottom:1px solid var(--color-border);margin-bottom:4px}.new-message-panel__avatar{width:28px;height:28px;min-width:28px;min-height:28px;border-radius:50%;background:var(--color-gray-200);display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-medium);color:var(--color-text);font-size:12px;flex-shrink:0;overflow:hidden;box-shadow:0 1px 2px #00000014}.new-message-panel__avatar img{width:100%;height:100%;object-fit:cover}.new-message-panel__avatar--accent{background:var(--color-accent);color:#fff}.new-message-panel__name{flex:1;font-size:var(--font-size-sm);font-weight:var(--font-weight-regular);color:var(--color-text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.new-message-panel__item--create-group .new-message-panel__name{font-weight:var(--font-weight-semibold)}.new-message-panel__check{width:24px;flex-shrink:0;text-align:center;color:var(--color-accent);font-weight:var(--font-weight-bold)}.new-message-panel__loading,.new-message-panel__empty{padding:20px 12px;text-align:center;font-size:var(--font-size-sm);color:var(--color-text-muted)}.new-message-panel__actions{flex-shrink:0;padding:10px 12px;border-top:1px solid var(--color-border)}.new-message-panel__btn-primary{width:100%;padding:var(--spacing-md);background:var(--color-accent);color:#fff;border:none;border-radius:var(--radius-sm);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background var(--transition-fast)}.new-message-panel__btn-primary:hover{background:var(--color-accent-dark)}.staff-list-header{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-bottom:1px solid var(--color-border);flex-shrink:0}.staff-list-header-left{display:flex;align-items:center;gap:12px}.back-btn-icon{background:none;border:none;cursor:pointer;color:var(--color-text);padding:4px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:background var(--transition-fast);flex-shrink:0}.back-btn-icon:hover{background:#0000000d}.staff-list-title{margin:0;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text)}.create-group-btn{padding:var(--spacing-xs) var(--spacing-md);background:var(--color-accent);color:#fff;border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background var(--transition-fast);display:flex;align-items:center;justify-content:center}.create-group-btn:hover{background:var(--color-accent-dark)}.group-creation-form{padding:10px 12px;border-bottom:1px solid var(--color-border);flex-shrink:0;box-sizing:border-box}.group-creation-form .form-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-base);margin-bottom:var(--spacing-sm)}.selected-staff-count{font-size:var(--font-size-sm);color:var(--color-text-muted)}.staff-list{flex:1 1 0;min-height:0;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;padding:0;width:100%;box-sizing:border-box;background:var(--color-background)}.staff-item{display:flex;align-items:center;padding:6px 12px;cursor:pointer;border-radius:var(--radius-sm);transition:background var(--transition-fast);gap:8px;flex-shrink:0}.staff-item:hover{background:var(--color-gray-50)}.staff-item.selected{background:#f444391a}.staff-list .staff-avatar,.staff-selection-list .staff-avatar,.staff-avatar.staff-avatar-messages{width:45px!important;height:45px!important;min-width:45px!important;min-height:45px!important;border-radius:var(--radius-full);background:var(--color-gray-200);display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-medium);color:var(--color-text);font-size:12px;flex-shrink:0;overflow:hidden;box-shadow:0 1px 2px #00000014}.staff-list .staff-avatar img,.staff-selection-list .staff-avatar img,.staff-avatar.staff-avatar-messages img{width:100%;height:100%;object-fit:cover}.staff-name{flex:1;font-size:var(--font-size-sm);font-weight:var(--font-weight-regular);color:var(--color-text)}.staff-checkbox{width:24px;height:24px;border:2px solid var(--color-accent);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:var(--color-accent);font-weight:var(--font-weight-bold)}.staff-item.create-group-item{border-bottom:1px solid var(--color-border);margin-bottom:4px}.staff-item.create-group-item:hover{background:var(--color-gray-50)}.group-creation-actions{padding:10px 12px;border-top:1px solid var(--color-border);flex-shrink:0}.group-creation-actions .btn-primary{width:100%;padding:var(--spacing-md);background:var(--color-accent);color:#fff;border:none;border-radius:var(--radius-sm);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background var(--transition-fast)}.group-creation-actions .btn-primary:hover{background:var(--color-accent-dark)}.chat-view{display:flex;flex-direction:column;height:100%;overflow:hidden;width:100%;position:relative}.chat-header{display:flex;align-items:center;padding:8px 12px;background:#e0e0e0;color:var(--color-text);border-bottom:1px solid var(--color-border-dark);gap:10px;flex-shrink:0;height:40px;box-sizing:border-box}.chat-header-info{display:flex;align-items:center;gap:10px;flex:1}.chat-header-actions{display:flex;align-items:center;gap:8px}.chat-menu-container{position:relative}.chat-menu-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:#fff;border:1px solid #e4e6eb;border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:1000;min-width:180px;overflow:hidden}.header-actions .chat-menu-dropdown{top:calc(100% + 4px);right:0}.chat-menu-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;background:none;border:none;text-align:left;cursor:pointer;font-size:14px;color:#111b21;transition:background .2s}.chat-menu-item:hover{background:#f0f2f5}.chat-menu-item.danger{color:#e53e3e}.chat-menu-item.danger:hover{background:#fee}.chat-menu-item svg{flex-shrink:0;stroke:currentColor}.chat-avatar{width:32px;height:32px;border-radius:var(--radius-full);background:var(--color-gray-200);display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-semibold);color:var(--color-text);font-size:11px;flex-shrink:0;overflow:hidden;box-shadow:0 1px 3px #0000001a}.chat-avatar img{width:100%;height:100%;object-fit:cover}.chat-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text)}.chat-header-title-content{display:flex;align-items:center;gap:12px;cursor:pointer;transition:opacity .2s}.chat-header-title-content:hover{opacity:.8}.header-chat-avatar{width:32px;height:32px;border-radius:var(--radius-full);background:var(--color-gray-200);display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-semibold);color:var(--color-text);font-size:11px;flex-shrink:0;overflow:hidden;box-shadow:0 1px 3px #0000001a}.header-chat-avatar img{width:100%;height:100%;object-fit:cover}.header-chat-name{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.message-input-form{display:flex;align-items:center;gap:4px;padding:10px 8px 10px 6px;border-top:1px solid var(--color-border);background:var(--color-background);flex-shrink:0;position:relative}.message-input-actions{display:flex;align-items:center;gap:0;flex-shrink:0}.attach-menu-container,.emoji-menu-container{position:relative;flex-shrink:0}.attach-menu-dropdown{position:absolute;bottom:calc(100% + 8px);left:0;background:#fff;border:1px solid var(--color-border);border-radius:8px;box-shadow:0 2px 8px #0000001f;z-index:1000;min-width:160px;overflow:hidden;display:flex;flex-direction:column;padding:4px}.attach-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;background:none;border:none;text-align:left;cursor:pointer;font-size:var(--font-size-sm);color:var(--color-text);transition:background var(--transition-fast);border-radius:6px}.attach-menu-item:hover{background:var(--color-gray-100)}.attach-menu-item svg{flex-shrink:0;stroke:currentColor}.attach-menu-item span{flex:1}.message-action-btn{width:36px;height:36px;min-width:36px;min-height:36px;max-width:36px;max-height:36px;padding:0;margin:0 2px;background:transparent!important;background-color:transparent!important;color:var(--color-text-muted);border:none!important;border-radius:0!important;cursor:pointer;transition:color var(--transition-fast),transform var(--transition-fast);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:none!important;outline:none!important}.message-action-btn:hover:not(:disabled){background:transparent!important;background-color:transparent!important;color:var(--color-accent);transform:scale(1.1);box-shadow:none!important;border:none!important;outline:none!important}.message-action-btn:active:not(:disabled){transform:scale(.95);background:transparent!important;border:none!important;outline:none!important}.message-action-btn:focus{border:none!important;outline:none!important;box-shadow:none!important}.message-action-btn:disabled{opacity:.4;cursor:not-allowed;border:none!important}.message-action-btn svg{width:20px;height:20px;stroke:currentColor}.message-input{flex:1;min-width:0;padding:12px 18px;border:1px solid var(--color-border);border-radius:24px;font-size:var(--font-size-sm);outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);background:var(--color-background);font-family:inherit;line-height:1.4;height:44px;box-sizing:border-box}.message-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px #7b61ff1a}.message-input:disabled{opacity:.6;cursor:not-allowed;background:var(--color-gray-100)}.attached-image-preview{position:relative;display:inline-block;margin-left:8px;flex-shrink:0}.attached-image-preview img{width:60px;height:60px;object-fit:cover;border-radius:8px;border:1px solid var(--color-border)}.attached-file-preview{position:relative;display:inline-flex;align-items:center;gap:8px;margin-left:8px;padding:6px 12px;background:var(--color-gray-100);border:1px solid var(--color-border);border-radius:8px;flex-shrink:0}.attached-file-preview svg{color:var(--color-text-muted);flex-shrink:0}.attached-file-name{font-size:var(--font-size-xs);color:var(--color-text);max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attached-file-preview .remove-attachment-btn{position:static;margin-left:4px;width:20px;height:20px;font-size:14px}.remove-attachment-btn{position:absolute;top:-8px;right:-8px;width:24px;height:24px;border-radius:50%;background:var(--color-accent);color:#fff;border:2px solid white;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;line-height:1;transition:transform var(--transition-fast)}.remove-attachment-btn:hover{transform:scale(1.1)}.send-btn{width:40px;height:40px;min-width:40px;min-height:40px;max-width:40px;max-height:40px;padding:0;margin:0 0 0 -4px;background:#9ca3af;color:#fff;border:none;border-radius:50%!important;cursor:not-allowed;transition:background var(--transition-fast),transform var(--transition-fast);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:none;box-sizing:border-box}.send-btn:not(:disabled){background:#6b51f5;cursor:pointer;box-shadow:0 2px 6px #6b51f54d}.send-btn:hover:not(:disabled){background:#5a42e0;transform:scale(1.08);box-shadow:0 3px 8px #6b51f566;border-radius:50%!important}.send-btn:active:not(:disabled){transform:scale(.96);border-radius:50%!important}.send-btn:disabled{opacity:1;cursor:not-allowed;transform:none;box-shadow:none;border-radius:50%!important;background:#9ca3af}.send-btn:focus{border-radius:50%!important;outline:none}.send-btn svg{width:18px;height:18px;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.send-btn svg.spinner{animation:spin 1s linear infinite}.emoji-picker{position:absolute;bottom:calc(100% + 8px);left:0;background:#fff;border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 12px #00000026;z-index:1000;width:auto;max-width:320px;overflow:hidden;display:flex;flex-direction:column}.emoji-picker-header{display:flex;align-items:center;justify-content:flex-end;padding:8px 12px;border-bottom:1px solid var(--color-border);background:var(--color-gray-50)}.emoji-picker-header span{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text)}.emoji-picker-close{background:none;border:none;font-size:18px;color:var(--color-text-muted);cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background var(--transition-fast)}.emoji-picker-close:hover{background:var(--color-gray-200)}.emoji-picker-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:2px;padding:8px;overflow-y:auto;max-height:200px;background:#fff}.emoji-item,button.emoji-item{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent!important;background-color:transparent!important;border:none!important;border-radius:0!important;cursor:pointer;font-size:20px;transition:transform var(--transition-fast);padding:0!important;margin:0!important;box-shadow:none!important}.emoji-item:hover,button.emoji-item:hover{background:transparent!important;background-color:transparent!important;transform:scale(1.15);box-shadow:none!important}.emoji-item:active,button.emoji-item:active{transform:scale(1);background:transparent!important;background-color:transparent!important;box-shadow:none!important}.emoji-item:focus,button.emoji-item:focus{background:transparent!important;background-color:transparent!important;box-shadow:none!important;outline:none!important}.emoji-item:focus-visible,button.emoji-item:focus-visible{outline:none!important;box-shadow:none!important}.poll-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .2s ease-out}.poll-modal{background:#fff;border-radius:12px;width:90%;max-width:500px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 24px #0003;animation:slideUp .2s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.poll-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--color-border)}.poll-modal-header h3{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text)}.poll-modal-close{background:none;border:none;font-size:24px;color:var(--color-text-muted);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background var(--transition-fast)}.poll-modal-close:hover{background:var(--color-gray-100)}.poll-modal-content{padding:20px;flex:1;overflow-y:auto}.poll-modal-content label{display:block;margin-bottom:16px;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text)}.poll-input{width:100%;padding:12px 16px;border:1px solid var(--color-border);border-radius:8px;font-size:var(--font-size-sm);margin-top:8px;font-family:inherit;box-sizing:border-box}.poll-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px #7b61ff1a}.add-poll-option-btn{margin-top:8px;padding:8px 16px;background:var(--color-gray-100);border:1px dashed var(--color-border);border-radius:8px;font-size:var(--font-size-sm);color:var(--color-text);cursor:pointer;transition:all var(--transition-fast)}.add-poll-option-btn:hover{background:var(--color-gray-200);border-color:var(--color-accent)}.poll-modal-actions{display:flex;gap:12px;padding:16px 20px;border-top:1px solid var(--color-border);justify-content:flex-end}.poll-cancel-btn,.poll-create-btn{padding:10px 20px;border-radius:8px;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-fast);border:none}.poll-cancel-btn{background:var(--color-gray-100);color:var(--color-text)}.poll-cancel-btn:hover{background:var(--color-gray-200)}.poll-create-btn{background:var(--color-accent);color:#fff}.poll-create-btn:hover:not(:disabled){background:var(--color-accent-dark);transform:translateY(-1px);box-shadow:0 4px 8px #7b61ff4d}.poll-create-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.message-image{margin-bottom:8px;border-radius:8px;overflow:hidden;max-width:100%;cursor:pointer;position:relative}.message-image img{width:100%;max-width:200px;height:auto;display:block;border-radius:8px;transition:transform .2s ease}.message-image:hover img{transform:scale(1.02)}.image-fullscreen-overlay-message{position:absolute;inset:0;width:100%;height:100%;background:#000000f2;z-index:1000;display:flex;align-items:center;justify-content:center;cursor:pointer}.image-fullscreen-content-message{max-width:95%;max-height:95%;position:relative;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px}.image-fullscreen-content-message img{max-width:100%;max-height:calc(100% - 120px);width:auto;height:auto;border-radius:8px;object-fit:contain}.image-fullscreen-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;padding:0 20px}.image-action-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.3);color:#e0e0e0;padding:10px 20px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:all var(--transition-fast);white-space:nowrap}.image-action-btn:hover{background:#fff3;border-color:#ffffff80;color:#fff;transform:translateY(-1px)}.image-fullscreen-close{position:absolute;top:20px;right:20px;background:transparent;border:1px solid rgba(255,255,255,.3);color:#e0e0e0;font-size:18px;width:32px;height:32px;min-width:32px;min-height:32px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);z-index:1001;padding:0;line-height:1}.image-fullscreen-close:hover{background:#ffffff1a;border-color:#ffffff80;color:#fff}.reaction-details-overlay{position:fixed;inset:0;background:#00000080;z-index:10000;display:flex;align-items:center;justify-content:center;cursor:pointer}.reaction-details-popup{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0003;max-width:320px;width:90%;max-height:400px;overflow:hidden;display:flex;flex-direction:column;cursor:default}.reaction-details-header{display:flex;align-items:center;gap:12px;padding:16px;border-bottom:1px solid #e4e6eb}.reaction-details-emoji{font-size:24px}.reaction-details-header h3{margin:0;flex:1;font-size:16px;font-weight:600;color:#2e2e2e}.reaction-details-close{background:none;border:none;font-size:24px;color:#666;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s ease}.reaction-details-close:hover{background:#f0f2f5}.reaction-details-list{max-height:300px;overflow-y:auto;padding:8px 0}.reaction-details-item{padding:12px 16px;cursor:pointer;transition:background .2s ease}.reaction-details-item:hover{background:#f0f2f5}.reaction-details-item.my-reaction{background:#f0f8ff}.reaction-details-item.my-reaction:hover{background:#e0f0ff}.reaction-details-user{display:flex;flex-direction:column;gap:4px}.reaction-details-name{font-size:14px;font-weight:500;color:#2e2e2e}.reaction-details-hint{font-size:12px;color:#666;font-style:italic}.message-poll{margin-top:8px}.poll-question{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);color:var(--color-text);margin-bottom:12px}.poll-options{display:flex;flex-direction:column;gap:12px}.poll-option-wrapper{display:flex;flex-direction:column;gap:6px}.poll-option{position:relative;width:100%;padding:0;background:transparent;border:none;cursor:pointer;transition:all var(--transition-fast);text-align:left;display:flex;align-items:flex-start;gap:10px;outline:none}.poll-option:hover:not(:disabled){opacity:.8}.poll-option:focus{outline:none;box-shadow:none}.poll-option:disabled{cursor:not-allowed;opacity:.7}.poll-option-checkbox{flex-shrink:0;margin-top:2px}.poll-checkbox{width:18px;height:18px;border-radius:50%;border:2px solid #666;background:transparent;transition:all var(--transition-fast);position:relative}.poll-checkbox.checked{border-color:var(--color-accent);background:var(--color-accent)}.poll-checkbox.checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:6px;height:6px;border-radius:50%;background:#fff}.poll-option-content{display:flex;justify-content:space-between;align-items:center;flex:1;width:100%}.poll-option-text{flex:1;font-size:var(--font-size-sm);color:var(--color-text)}.poll-option-count{font-size:var(--font-size-xs);color:#000;font-weight:var(--font-weight-medium)}.poll-option-bar{width:calc(100% - 28px);height:4px;background:var(--color-gray-200);border-radius:2px;overflow:hidden;position:relative;margin-left:28px}.poll-option-fill{height:100%;background:var(--color-accent);border-radius:2px;transition:width var(--transition-normal)}.poll-total-votes{margin-top:8px;font-size:var(--font-size-xs);color:#000;text-align:right}.messages-loading-state{display:flex;align-items:center;justify-content:center;padding:40px;flex:1}.messages-loading-state .spinner{width:40px;height:40px;border:3px solid var(--color-gray-200);border-top:3px solid var(--color-primary);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}.messages-loading-state p{color:var(--color-gray-600);font-size:14px;margin:0}.empty-state,.loading-state{display:flex;align-items:center;justify-content:center;padding:var(--spacing-xxl);color:var(--color-text-muted);font-style:italic;text-align:center}.loading-state{font-style:normal}.group-info-panel{position:absolute;top:0;right:0;width:350px;height:100%;background:#f0f2f5;border-left:1px solid #e4e6eb;box-shadow:-4px 0 12px #0000001a;z-index:10;display:flex;flex-direction:column;overflow:hidden}.group-info-back{padding:12px 16px;background:#fff;border-bottom:1px solid #e4e6eb}.group-info-back .back-btn{background:none;border:none;font-size:14px;color:var(--color-accent);cursor:pointer;padding:4px 8px;display:flex;align-items:center;gap:4px;transition:background var(--transition-fast),color var(--transition-fast)}.group-info-back .back-btn:hover{background:var(--color-gray-100);border-radius:4px;color:var(--color-accent-dark)}.group-info-header-section{background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-dark) 100%);padding:30px 20px 20px;text-align:center;color:#fff}.group-avatar-large{width:80px;height:80px;border-radius:50%;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;margin:0 auto 12px;font-size:32px;font-weight:600;color:#fff;overflow:hidden;box-shadow:0 4px 12px #0003;border:3px solid rgba(255,255,255,.3)}.group-avatar-large img{width:100%;height:100%;object-fit:cover}.group-name-large{margin:0 0 6px;font-size:18px;font-weight:400;color:#fff}.group-meta{margin:0;font-size:13px;color:#ffffffe6}.group-info-actions{background:#fff;border-bottom:1px solid #e4e6eb}.group-action-btn{width:100%;display:flex;align-items:center;gap:16px;padding:16px 20px;background:none;border:none;border-bottom:1px solid #e4e6eb;cursor:pointer;text-align:left;font-size:16px;color:#111b21;transition:background .2s}.group-action-btn:last-child{border-bottom:none}.group-action-btn:hover{background:#f5f6f6}.group-action-btn.danger{color:#e53e3e}.group-action-btn svg:first-child{flex-shrink:0}.group-action-btn span{flex:1}.group-action-btn svg:last-child{flex-shrink:0;opacity:.5}.group-members-section{flex:1;overflow-y:auto;background:#fff}.group-members-section .section-header{padding:16px 20px 8px;background:#fff;position:sticky;top:0;z-index:1}.group-members-section .section-header h3{margin:0;font-size:14px;font-weight:500;color:#008069;text-transform:uppercase;letter-spacing:.5px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.section-header h4{margin:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text)}.btn-small{padding:4px 12px;font-size:var(--font-size-xs);border-radius:var(--radius-sm);border:none;cursor:pointer;transition:all var(--transition-fast)}.btn-small.btn-primary{background:var(--color-accent);color:#fff}.btn-small.btn-primary:hover{background:var(--color-accent-dark)}.members-list{display:flex;flex-direction:column;gap:8px}.member-item{display:flex;align-items:center;gap:12px;padding:12px 20px;border-bottom:1px solid #e4e6eb;transition:background .2s;cursor:pointer}.member-item:last-child{border-bottom:none}.member-item:hover{background:#f5f6f6}.member-avatar{width:48px;height:48px;border-radius:50%;background:#d9fdd3;display:flex;align-items:center;justify-content:center;font-weight:500;color:#008069;font-size:16px;flex-shrink:0;overflow:hidden}.member-avatar img{width:100%;height:100%;object-fit:cover}.member-info{flex:1;min-width:0}.member-name{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:400;color:#111b21;margin-bottom:4px}.member-you{font-size:12px;color:#667781;font-weight:400}.member-role{font-size:13px;color:#667781}.badge{font-size:10px;padding:2px 6px;border-radius:10px;background:var(--color-accent);color:#fff;font-weight:var(--font-weight-semibold)}.member-actions{display:flex;gap:4px}.member-admin-toggle{background:none;border:none;cursor:pointer;padding:8px;border-radius:50%;transition:background .2s;color:#667781;display:flex;align-items:center;justify-content:center}.member-admin-toggle:hover{background:#e4e6eb}.member-admin-toggle svg{width:20px;height:20px}.profile-info-panel-overlay{position:absolute;inset:0;background:var(--color-background);z-index:100;display:flex;align-items:stretch;justify-content:stretch;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.profile-info-panel{width:100%;height:100%;background:var(--color-background);z-index:101;display:flex;flex-direction:column;overflow:hidden;animation:fadeIn .2s ease-out}.profile-info-back{padding:12px 16px;background:var(--color-background);border-bottom:1px solid var(--color-border)}.profile-info-back .back-btn{background:none;border:none;font-size:14px;color:var(--color-accent);cursor:pointer;padding:4px 8px;display:flex;align-items:center;gap:4px;transition:background var(--transition-fast),color var(--transition-fast)}.profile-info-back .back-btn:hover{background:var(--color-gray-100);border-radius:4px;color:var(--color-accent-dark)}.profile-info-header-section{background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-dark) 100%);padding:30px 20px 20px;text-align:center;color:#fff}.profile-avatar-large{width:80px;height:80px;border-radius:50%;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;margin:0 auto 12px;font-size:32px;font-weight:600;color:#fff;overflow:hidden;box-shadow:0 4px 12px #0003;border:3px solid rgba(255,255,255,.3)}.profile-avatar-large img{width:100%;height:100%;object-fit:cover}.profile-name-large{margin:0;font-size:18px;font-weight:400;color:#fff}.profile-status-text{margin:8px 0 0;font-size:14px;font-weight:300;color:#ffffffe6;opacity:.9}.profile-details-section{flex:1;overflow-y:auto;background:var(--color-background);padding:16px 0}.profile-detail-item{padding:16px 20px;border-bottom:1px solid var(--color-border)}.profile-detail-item:last-child{border-bottom:none}.profile-detail-label{font-size:12px;color:#667781;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;font-weight:500}.profile-detail-value{font-size:16px;color:#111b21;font-weight:400}.my-profile-panel{width:100%;height:100%;display:flex;flex-direction:column}.my-profile-info-layout{display:flex;flex-direction:column;padding:20px;border-bottom:1px solid var(--color-border);background:var(--color-background);flex-shrink:0}.my-profile-photo-section{display:flex;flex-direction:column;align-items:center;margin-bottom:12px;position:relative}.my-profile-avatar-large{width:120px;height:120px;border-radius:50%;background:var(--color-gray-200);display:flex;align-items:center;justify-content:center;font-size:42px;font-weight:600;color:var(--color-text);overflow:hidden;box-shadow:0 2px 8px #0000001a;border:2px solid var(--color-border);margin-bottom:8px}.my-profile-avatar-large img{width:100%;height:100%;object-fit:cover}.group-photo-edit-btn{position:absolute;bottom:4px;right:4px;width:32px;height:32px;border-radius:50%;background:#ffffffe6;color:var(--color-text);border:1px solid rgba(0,0,0,.1);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);box-shadow:0 2px 8px #00000026;z-index:10;padding:0}.group-photo-edit-btn:hover{background:#fff;border-color:#0003;box-shadow:0 4px 12px #0003}.group-photo-edit-btn svg{width:14px;height:14px;stroke:currentColor;stroke-width:2}.group-photo-menu{position:absolute;top:calc(100% + 8px);right:calc(50% - 90px);background:#fff;border:1px solid #e4e6eb;border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:1000;min-width:180px;overflow:hidden;display:flex;flex-direction:column}.group-photo-menu-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;background:none;border:none;text-align:left;cursor:pointer;font-size:14px;color:#111b21;transition:background .2s;margin:0}.group-photo-menu-item:hover{background:#f0f2f5}.group-photo-menu-item svg{flex-shrink:0;stroke:currentColor;stroke-width:2}.group-photo-menu button{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;background:none;border:none;text-align:left;cursor:pointer;font-size:14px;color:#111b21;transition:background .2s;margin:0}.group-photo-menu button:hover{background:#f0f2f5}.group-photo-menu button.danger{color:#e53e3e}.group-photo-menu button.danger:hover{background:#fee}.group-photo-menu button svg{flex-shrink:0;stroke:currentColor;stroke-width:2}.my-profile-info-lines{display:flex;flex-direction:column;gap:16px}.my-profile-info-line{display:flex;gap:24px;align-items:flex-start}.my-profile-info-pair{flex:1;display:flex;flex-direction:column;gap:4px}.my-profile-info-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);color:#9ca3af;line-height:1.4}.my-profile-info-value{font-size:var(--font-size-base);font-weight:var(--font-weight-bold);color:#111827;line-height:1.4}.my-profile-status-button{display:flex;align-items:center;gap:6px;background:none;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:6px 12px;font-size:var(--font-size-base);font-weight:var(--font-weight-bold);color:#111827;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast);text-align:left;width:100%;justify-content:space-between}.my-profile-status-button:hover{background:var(--color-gray-50);border-color:var(--color-accent)}.my-profile-status-button svg{width:14px;height:14px;stroke:currentColor;stroke-width:2;flex-shrink:0}.my-profile-settings{flex:1;overflow-y:auto;background:#fff;padding:20px}.my-profile-status-dropdown{position:absolute;top:calc(100% + 8px);left:0;right:0;z-index:1000;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-background);overflow:hidden;box-shadow:0 4px 12px #00000026;min-width:200px}.my-profile-status-options{display:flex;flex-direction:column;max-height:200px;overflow-y:auto}.my-profile-status-option{padding:12px 16px;background:none;border:none;text-align:left;font-size:var(--font-size-sm);color:#111827;cursor:pointer;transition:background var(--transition-fast);border-bottom:1px solid var(--color-border)}.my-profile-status-option:last-child{border-bottom:none}.my-profile-status-option:hover{background:var(--color-gray-50)}.my-profile-status-option.active{background:#f444391a;color:var(--color-accent);font-weight:var(--font-weight-semibold)}.my-profile-custom-status-input{padding:12px 16px;border-top:1px solid var(--color-border);background:var(--color-gray-50);display:flex;flex-direction:column;gap:8px}.my-profile-custom-status-input .my-profile-input{width:100%;margin:0}.my-profile-custom-status-save{padding:8px 16px;background:var(--color-accent);color:#fff;border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background var(--transition-fast);align-self:flex-end}.my-profile-custom-status-save:hover{background:var(--color-accent-dark)}.my-profile-section{margin-bottom:24px}.my-profile-section:last-of-type{margin-bottom:0}.my-profile-section-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:#374151;margin:0 0 12px;text-transform:uppercase;letter-spacing:.5px}.my-profile-setting-row{margin-bottom:16px}.my-profile-setting-row:last-child{margin-bottom:0}.my-profile-checkbox-label{display:flex;align-items:center;gap:12px;cursor:pointer;font-size:var(--font-size-sm);color:#111827;padding:12px;border-radius:var(--radius-sm);transition:background var(--transition-fast)}.my-profile-checkbox-label:hover{background:var(--color-gray-50)}.my-profile-checkbox{width:20px;height:20px;cursor:pointer;accent-color:var(--color-accent);flex-shrink:0}.my-profile-checkbox-label span{flex:1;line-height:1.5;color:#111827}.my-profile-select-label,.my-profile-input-label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:#111827;margin-bottom:8px}.my-profile-select,.my-profile-input{width:100%;padding:12px 16px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:#111827;background:#fff;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);font-family:var(--font-family-base)}.my-profile-select:focus,.my-profile-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #f444391a}.my-profile-input::placeholder{color:var(--color-text-muted);opacity:.6}.my-profile-actions{padding-top:20px;border-top:1px solid var(--color-border);margin-top:8px}.my-profile-save-btn{width:100%;padding:14px 20px;background:var(--color-accent);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background var(--transition-fast),transform var(--transition-fast);display:flex;align-items:center;justify-content:center;gap:8px}.my-profile-save-btn:hover:not(:disabled){background:var(--color-accent-dark);transform:translateY(-1px);box-shadow:0 4px 12px #f444394d}.my-profile-save-btn:active:not(:disabled){transform:translateY(0)}.my-profile-save-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.my-profile-save-btn .spinner{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.multi-select-toolbar{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fff;border-bottom:1px solid #e4e6eb}.multi-select-count{flex:1;font-size:14px;color:#54656f;font-weight:500}.multi-select-btn{padding:8px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;background:#f0f2f5;color:#111b21}.multi-select-btn:hover:not(:disabled){background:#e4e6eb}.multi-select-btn:disabled{opacity:.5;cursor:not-allowed}.multi-select-btn.danger{background:#fee;color:#e53e3e}.multi-select-btn.danger:hover:not(:disabled){background:#fcc}.avatar.selected{position:relative}.avatar-checkmark{position:absolute;inset:0;width:100%;height:100%;background:#2e2e2e66;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;z-index:1}.btn-toggle{background:none;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:4px 8px;cursor:pointer;font-size:14px;transition:all var(--transition-fast)}.btn-toggle:hover{background:var(--color-gray-100);border-color:var(--color-accent)}.btn-toggle.active{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.add-members-panel{position:absolute;top:0;right:0;width:320px;height:100%;background:var(--color-background);border-left:1px solid var(--color-border);box-shadow:-4px 0 12px #0000001a;z-index:11;display:flex;flex-direction:column;overflow:hidden}.panel-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--color-border);background:var(--color-secondary)}.panel-header h3{margin:0;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text)}.panel-header button{background:none;border:none;font-size:24px;color:var(--color-text);cursor:pointer;padding:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:background var(--transition-fast)}.panel-header button:hover{background:#0000000d}.panel-content{flex:1;display:flex;flex-direction:column;overflow:hidden}.staff-selection-list{flex:1;overflow-y:auto;padding:8px;min-height:0;contain:layout style paint;transform:translateZ(0);-webkit-overflow-scrolling:touch;content-visibility:auto;contain-intrinsic-size:auto 60px}.staff-selection-list .staff-item{position:relative;min-height:60px;height:60px;max-height:60px;flex-shrink:0;contain:strict;transform:translateZ(0);backface-visibility:hidden;transition:none!important;animation:none!important;display:flex;align-items:center;gap:12px;padding:10px 12px;box-sizing:border-box;content-visibility:auto;will-change:auto;isolation:isolate}.staff-selection-list .staff-item .checkmark{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--color-accent);font-size:18px;font-weight:700;width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.panel-actions{padding:12px 16px;border-top:1px solid var(--color-border);background:var(--color-secondary)}.panel-actions .btn-primary{width:100%;padding:10px;background:var(--color-accent);color:#fff;border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background var(--transition-fast)}.panel-actions .btn-primary:hover{background:var(--color-accent-dark)}.delete-chat-confirm-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000}.delete-chat-confirm-modal{background:var(--color-background, #ffffff);border-radius:var(--radius-lg, 12px);padding:24px;max-width:400px;width:90%;box-shadow:0 10px 25px #0003}.delete-chat-confirm-content h3{margin:0 0 24px;font-size:var(--font-size-sm, 14px);font-weight:400;color:var(--color-text, #2e2e2e);text-align:center;line-height:1.5}.delete-chat-confirm-actions{display:flex;gap:12px;justify-content:center}.delete-chat-confirm-btn{padding:10px 24px;border:none;border-radius:9999px;font-size:var(--font-size-sm, 14px);font-weight:500;cursor:pointer;transition:all var(--transition-fast, .2s);min-width:90px}.delete-chat-confirm-no{background:transparent;color:var(--color-primary, #3b82f6);border:1.5px solid var(--color-primary, #3b82f6)}.delete-chat-confirm-no:hover{background:#3b82f614}.delete-chat-confirm-yes{background:var(--color-primary, #3b82f6);color:var(--color-background, #fff)}.delete-chat-confirm-yes:hover{filter:brightness(1.08)}.modern-form-container{max-width:1000px;width:95vw;max-height:95vh;background:var(--color-dark-200);border-radius:var(--radius-xl);box-shadow:var(--shadow-2xl);overflow:hidden;display:flex;flex-direction:column}.form-header{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-dark-300) 100%);color:var(--color-secondary);padding:30px;text-align:center;position:relative;border-bottom:1px solid var(--color-border-medium)}.form-header h2{margin:0 0 var(--spacing-xs) 0;font-size:28px;font-weight:var(--font-weight-semibold)}.form-subtitle{margin:0;color:var(--color-text-muted);font-size:var(--font-size-base)}.form-header .close-btn{position:absolute;top:var(--spacing-md);right:25px;font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);cursor:pointer;color:var(--color-secondary);transition:color var(--transition-normal)}.form-header .close-btn:hover{color:var(--color-accent)}.progress-container{background:var(--color-dark-200);padding:var(--spacing-lg) 30px;border-bottom:1px solid var(--color-border-medium)}.progress-bar{width:100%;height:8px;background:var(--color-dark-300);border-radius:var(--radius-xs);overflow:hidden;margin-bottom:10px}.progress-fill{height:100%;background:linear-gradient(90deg,var(--color-accent) 0%,var(--color-accent-dark) 100%);border-radius:var(--radius-xs);transition:width var(--transition-slow);width:0%}.progress-text{text-align:center;color:var(--color-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.step-navigation{display:flex;justify-content:center;background:var(--color-dark-200);padding:var(--spacing-lg) 30px;border-bottom:1px solid var(--color-border-medium);gap:var(--spacing-md)}.step{display:flex;flex-direction:column;align-items:center;cursor:pointer;transition:all var(--transition-normal);opacity:.5}.step.active{opacity:1}.step.completed{opacity:.8}.step-number{width:40px;height:40px;border-radius:var(--radius-full);background:var(--color-dark-400);color:var(--color-background);display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-semibold);font-size:var(--font-size-base);margin-bottom:var(--spacing-xs);transition:all var(--transition-normal)}.step.active .step-number{background:var(--color-accent);color:var(--color-background)}.step.completed .step-number{background:var(--color-success);color:var(--color-background)}.step-label{color:var(--color-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-align:center}.modern-form{flex:1;overflow-y:auto;padding:0}.form-step{display:none;padding:30px;min-height:400px}.form-step.active{display:block}.step-header{margin-bottom:30px;text-align:center}.step-header h3{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--color-secondary)}.step-header p{margin:0;color:var(--color-text-muted);font-size:var(--font-size-base)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-md);margin-bottom:30px}.form-group{display:flex;flex-direction:column}.form-group.full-width{grid-column:1 / -1}.form-label{color:var(--color-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);margin-bottom:var(--spacing-xs)}.form-input,.form-select{padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--color-dark-400);border-radius:var(--radius-md);background:var(--color-dark-200);color:var(--color-secondary);font-size:var(--font-size-base);transition:all var(--transition-normal)}.form-input:focus,.form-select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #f444391a}.form-input::placeholder{color:var(--color-text-muted)}.form-help{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-top:4px}.file-upload-container{position:relative;display:inline-block;width:100%}.file-input{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer}.file-upload-display{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-lg);border:2px dashed var(--color-dark-400);border-radius:var(--radius-md);background:var(--color-dark-200);color:var(--color-secondary);cursor:pointer;transition:all var(--transition-normal);min-height:100px}.file-upload-display:hover{border-color:var(--color-accent);background:var(--color-dark-300)}.upload-icon{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-xs)}.upload-text{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.checkbox-group.modern{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-sm);padding:var(--spacing-lg);background:var(--color-dark-300);border-radius:var(--radius-md);border:1px solid var(--color-dark-400)}.checkbox-item{display:flex;align-items:center;cursor:pointer;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);transition:background var(--transition-normal)}.checkbox-item:hover{background:var(--color-dark-400)}.checkbox-item input[type=checkbox]{margin-right:10px;transform:scale(1.2);accent-color:var(--color-accent)}.checkbox-item span{color:var(--color-secondary);font-size:var(--font-size-sm)}.toggle-switch{display:flex;align-items:center;cursor:pointer;margin-bottom:var(--spacing-md)}.toggle-switch input[type=checkbox]{display:none}.toggle-slider{width:50px;height:24px;background:var(--color-dark-400);border-radius:12px;position:relative;transition:background var(--transition-normal);margin-right:var(--spacing-sm)}.toggle-slider:before{content:"";position:absolute;width:20px;height:20px;background:var(--color-secondary);border-radius:var(--radius-full);top:2px;left:2px;transition:transform var(--transition-normal)}.toggle-switch input:checked+.toggle-slider{background:var(--color-accent)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(26px)}.toggle-label{color:var(--color-secondary);font-size:var(--font-size-base);font-weight:var(--font-weight-medium)}.section-header{margin:var(--spacing-xxl) 0 var(--spacing-md) 0;padding-bottom:15px;border-bottom:1px solid var(--color-dark-400)}.section-header h4{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-secondary)}.section-header p{margin:0;color:var(--color-text-muted);font-size:var(--font-size-sm)}.permissions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md);margin-bottom:30px}.permission-group{background:var(--color-dark-300);padding:var(--spacing-lg);border-radius:var(--radius-md);border:1px solid var(--color-dark-400)}.references-container,.documents-container{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.reference-card,.document-card{background:var(--color-dark-300);padding:var(--spacing-lg);border-radius:var(--radius-md);border:1px solid var(--color-dark-400)}.reference-card h5,.document-card h5{margin:0 0 15px;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-secondary)}.form-navigation{display:flex;justify-content:space-between;align-items:center;padding:30px;background:var(--color-dark-200);border-top:1px solid var(--color-dark-400)}.conditional-section{margin-top:var(--spacing-md);padding:var(--spacing-lg);background:var(--color-dark-300);border-radius:var(--radius-md);border:1px solid var(--color-dark-400)}.custom-tags-container{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:15px}.sites-grid.modern{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;padding:var(--spacing-lg);background:var(--color-dark-300);border-radius:var(--radius-md);border:1px solid var(--color-dark-400)}#staff-references .reference-row,#staff-other-docs .other-doc-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-bottom:10px}#staff-other-docs .other-doc-row{grid-template-columns:2fr 1fr}#add-reference-row,#add-other-doc{margin-top:10px;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);background:var(--color-gray-100);cursor:pointer}@media(max-width:768px){.modern-form-container{width:100vw;height:100vh;border-radius:0;max-height:none}.form-grid{grid-template-columns:1fr;gap:15px}.step-navigation{gap:10px;padding:var(--spacing-md) var(--spacing-md)}.step-number{width:32px;height:32px;font-size:var(--font-size-sm)}.step-label{font-size:10px}.form-step,.form-navigation{padding:var(--spacing-lg)}}.profile-header{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-dark-300) 100%);color:var(--color-secondary);padding:30px;display:flex;align-items:center;gap:var(--spacing-md);position:relative;border-radius:var(--radius-xl) var(--radius-xl) 0 0;border-bottom:1px solid var(--color-primary)}.profile-header-actions{display:flex;align-items:center;gap:var(--spacing-sm)}.nav-staff-btn,.nav-resident-btn{background:#e0e0e01a;border:1px solid rgba(224,224,224,.2);color:var(--color-secondary);width:40px;height:40px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-normal);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.nav-staff-btn:hover,.nav-resident-btn:hover{background:#e0e0e033;border-color:#e0e0e04d;transform:scale(1.05)}.nav-staff-btn:disabled,.nav-resident-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.profile-search{background:var(--color-primary);padding:var(--spacing-lg) 30px;border-bottom:1px solid var(--color-primary)}.search-container{position:relative;max-width:400px}.search-icon{position:absolute;left:var(--spacing-md);top:50%;transform:translateY(-50%);color:var(--color-text-muted);z-index:1}#staff-search-input{width:100%;padding:var(--spacing-sm) var(--spacing-md) var(--spacing-sm) 48px;border:2px solid var(--color-primary);border-radius:var(--radius-md);font-size:var(--font-size-base);background:var(--color-primary);color:var(--color-secondary);transition:all var(--transition-normal)}#staff-search-input:focus{outline:none;border-color:var(--color-accent);background:var(--color-primary);box-shadow:0 0 0 3px #f444391a}#staff-search-input::placeholder{color:var(--color-secondary)}.search-results{position:absolute;top:100%;left:0;right:0;background:var(--color-primary);border:1px solid var(--color-primary);border-radius:var(--radius-md);margin-top:4px;max-height:200px;overflow-y:auto;z-index:var(--z-dropdown);display:none}.search-result-item{padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;border-bottom:1px solid var(--color-primary);transition:background var(--transition-fast);display:flex;align-items:center;gap:var(--spacing-sm)}.search-result-item:last-child{border-bottom:none}.search-result-item:hover{background:var(--color-dark-300)}.search-result-avatar{width:32px;height:32px;border-radius:var(--radius-full);background:var(--color-dark-300);display:flex;align-items:center;justify-content:center;color:var(--color-secondary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm)}.search-result-info{flex:1}.search-result-name{color:var(--color-secondary);font-weight:var(--font-weight-semibold);margin-bottom:2px}.search-result-role{color:var(--color-secondary);font-size:var(--font-size-sm)}.profile-avatar-large{width:120px;height:120px;border-radius:var(--radius-full);background:#e0e0e033;display:flex;align-items:center;justify-content:center;border:4px solid rgba(224,224,224,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden}.profile-avatar-large img{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-full)}.avatar-placeholder{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--color-secondary);text-shadow:0 2px 4px rgba(0,0,0,.3)}.profile-header-info{flex:1}.profile-header-info h2{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);text-shadow:0 2px 4px rgba(0,0,0,.3)}.profile-header-info p{margin:4px 0;font-size:var(--font-size-base);opacity:.9;font-weight:var(--font-weight-medium)}.profile-navigation{background:var(--color-primary);padding:0;display:flex;border-bottom:1px solid var(--color-primary);overflow-x:auto}.profile-navigation .nav-btn{background:none;border:none;padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-secondary);cursor:pointer;transition:all var(--transition-normal);border-bottom:3px solid transparent;white-space:nowrap;position:relative}.profile-navigation .nav-btn:hover{color:var(--color-secondary);background:var(--color-dark-300)}.profile-navigation .nav-btn.active{color:var(--color-secondary);border-bottom-color:var(--color-accent);background:var(--color-dark-300)}.profile-content{flex:1;overflow-y:auto;background:var(--color-primary);padding:0}.profile-section{display:none;padding:30px;animation:fadeIn var(--transition-normal) ease-in-out;min-height:400px}.profile-section.active{display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.profile-section h3{color:var(--color-secondary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin:0 0 var(--spacing-lg) 0;padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--color-primary);position:relative}.profile-section h3:after{content:"";position:absolute;bottom:-2px;left:0;width:60px;height:2px;background:var(--color-accent)}.profile-field{margin-bottom:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-xs)}.profile-field label{font-weight:var(--font-weight-semibold);color:var(--color-secondary);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.5px}.profile-field input,.profile-field select,.profile-field textarea{padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--color-primary);border-radius:var(--radius-md);font-size:var(--font-size-base);transition:all var(--transition-normal);background:var(--color-primary);color:var(--color-secondary)}.profile-field input:focus,.profile-field select:focus,.profile-field textarea:focus{outline:none;border-color:var(--color-accent);background:var(--color-primary);box-shadow:0 0 0 3px #f444391a}.profile-field input:disabled,.profile-field select:disabled,.profile-field textarea:disabled{background:var(--color-primary);color:var(--color-secondary);cursor:not-allowed}.profile-field-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.profile-field-full{grid-column:span 2}.training-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-md)}.training-item{display:flex;align-items:center;padding:var(--spacing-md);background:var(--color-primary);border-radius:var(--radius-md);border:2px solid var(--color-primary);transition:all var(--transition-normal)}.training-item:hover{border-color:var(--color-accent);background:var(--color-dark-300)}.training-item input[type=checkbox]{width:20px;height:20px;margin-right:var(--spacing-sm);accent-color:var(--color-accent)}.training-item label{font-weight:var(--font-weight-medium);color:var(--color-secondary);cursor:pointer;flex:1;text-transform:none;letter-spacing:normal}.contacts-list,.documents-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.contact-item,.document-item{background:var(--color-primary);border:1px solid var(--color-primary);border-radius:var(--radius-md);padding:var(--spacing-lg);transition:all var(--transition-normal);text-decoration:none;color:var(--color-secondary)}.contact-item:hover,.document-item:hover{border-color:var(--color-accent);transform:translateY(-2px);box-shadow:0 4px 12px #f4443933}.contact-item h4,.document-item h4{color:var(--color-secondary);margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.contact-item p,.document-item p{color:var(--color-secondary);margin:var(--spacing-xs) 0;font-size:var(--font-size-sm);line-height:1.5}.contact-item p strong,.document-item p strong{color:var(--color-secondary);font-weight:var(--font-weight-semibold)}.contact-item a,.document-item a{color:var(--color-accent);text-decoration:none;font-weight:var(--font-weight-medium);transition:color var(--transition-normal)}.contact-item a:hover,.document-item a:hover{color:var(--color-secondary);text-decoration:underline}.documents-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-md)}.document-icon{width:40px;height:40px;background:var(--color-primary);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;margin-right:var(--spacing-sm);color:var(--color-secondary);font-weight:var(--font-weight-semibold)}.document-name{font-weight:var(--font-weight-medium);flex:1;color:var(--color-secondary)}.profile-footer{background:var(--color-primary);padding:var(--spacing-lg) 30px;border-top:1px solid var(--color-primary);display:flex;justify-content:flex-end;border-radius:0 0 var(--radius-xl) var(--radius-xl)}.save-btn{background:var(--color-accent);color:var(--color-secondary);border:none;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-normal);box-shadow:0 4px 12px #f444394d}.save-btn:hover{transform:translateY(-2px);background:var(--color-accent-dark);box-shadow:0 6px 20px #f4443966}.privacy-overlay{position:absolute;inset:0;background:#2e2e2ef2;display:flex;align-items:center;justify-content:center;z-index:100;border-radius:var(--radius-xl)}.privacy-message{text-align:center;color:var(--color-secondary);padding:30px;max-width:300px}.privacy-message svg{color:var(--color-accent);margin-bottom:var(--spacing-md)}.privacy-message h3{margin:0 0 10px;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-secondary)}.privacy-message p{margin:0 0 25px;color:var(--color-secondary);font-size:var(--font-size-sm);line-height:1.5}.privacy-toggle-btn{background:var(--color-accent);color:var(--color-secondary);border:none;border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;display:flex;align-items:center;gap:var(--spacing-xs);margin:0 auto;transition:var(--transition-fast)}.privacy-toggle-btn:hover{background:var(--color-accent-dark);transform:translateY(-2px);box-shadow:0 4px 12px #f444394d}.privacy-toggle-btn svg{width:16px;height:16px;color:var(--color-secondary);margin:0}@media(max-width:768px){.staff-profile-modal,.resident-profile-modal{width:95vw;max-height:95vh}.profile-header{flex-direction:column;text-align:center;padding:var(--spacing-lg)}.profile-avatar-large{width:100px;height:100px}.avatar-placeholder{font-size:var(--font-size-3xl)}.profile-header-info h2{font-size:var(--font-size-2xl)}.profile-navigation{flex-wrap:wrap}.profile-navigation .nav-btn{flex:1;min-width:120px}.profile-field-row{grid-template-columns:1fr}.profile-field-full{grid-column:span 1}}.profiles-grid{display:flex;gap:var(--spacing-sm);padding:5px 0;min-width:max-content;overflow:visible;position:relative;z-index:3}.profiles-grid-horizontal{display:flex;flex-direction:row;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);min-width:max-content;align-items:flex-start}.profile-item-compact{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-width:100px;max-width:100px;flex-shrink:0;padding:0 0 var(--spacing-xs) 0;margin-top:-8px;background:transparent;border:none;cursor:pointer;transition:transform var(--transition-fast);gap:4px}.profile-item-compact:hover{transform:translateY(-2px)}.profile-avatar-circle{width:64px;height:64px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:var(--font-weight-semibold);font-size:18px;flex-shrink:0;border:none;background-size:cover;background-position:center;background-repeat:no-repeat;box-shadow:0 2px 8px #00000026}.profile-name-compact{font-size:11px;font-weight:var(--font-weight-semibold);color:var(--color-text);text-align:center;margin:0 0 -2px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;min-height:14px;max-height:14px}.no-profiles-message{padding:var(--spacing-lg);text-align:center;color:var(--color-text-muted);font-size:var(--font-size-sm)}.sites-grid{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-xs) 0;min-width:max-content}.sites-grid-horizontal{display:flex;flex-direction:row;gap:var(--spacing-md);padding:var(--spacing-xs) var(--spacing-md) var(--spacing-sm) var(--spacing-md);min-width:max-content;align-items:flex-start;height:100%}.person-card{display:flex;flex-direction:column;align-items:center;text-align:center;min-width:140px;flex-shrink:0;background:var(--color-secondary);border:1px solid var(--color-gray-200);border-radius:10px;padding:var(--spacing-sm);transition:box-shadow var(--transition-fast),transform var(--transition-fast)}.person-card:hover{box-shadow:0 6px 16px #00000014;transform:translateY(-1px)}.person-card .avatar{width:70px;height:70px;border-radius:var(--radius-full);background-color:var(--color-secondary);margin-bottom:var(--spacing-xs);background-size:cover;background-position:center;border:2px solid var(--color-gray-200);box-shadow:var(--shadow-xs)}.person-card .name{font-weight:var(--font-weight-bold);font-size:var(--font-size-base)}.person-card .detail{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.site-item{background-color:var(--color-secondary);border-radius:10px;padding:15px;text-align:center;min-width:160px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;transition:all var(--transition-normal);cursor:pointer;border:2px solid transparent}.site-item:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm);border-color:var(--color-accent)}.site-item-compact{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-width:110px;max-width:110px;flex-shrink:0;padding:var(--spacing-xs) var(--spacing-xs) var(--spacing-sm) var(--spacing-xs);background:transparent;border:none;position:relative;cursor:pointer;transition:transform var(--transition-fast);gap:1px;margin-top:-8px}.site-item-compact:hover{transform:translateY(-2px)}.site-avatar-circle{width:50px;height:50px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:var(--font-weight-semibold);font-size:14px;flex-shrink:0;margin-bottom:0}.site-name-compact{font-size:12px;font-weight:var(--font-weight-semibold);color:var(--color-text);text-align:center;margin:0;line-height:1.3;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-height:auto;max-height:none}.view-handovers-btn-compact{background:transparent;color:#2e2e2e;border:1px solid #2E2E2E;border-radius:var(--radius-sm);padding:4px 8px;font-size:10px;font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);width:100%;pointer-events:auto!important;position:relative;z-index:10000!important;white-space:nowrap;margin-top:0}.view-handovers-btn-compact:hover{background:#2e2e2e;color:#fff;transform:scale(1.05)}.site-card .name{font-weight:var(--font-weight-bold);font-size:var(--font-size-base);margin-bottom:5px}.site-card .address{font-size:13px;color:var(--color-text-secondary)}.horizontal-scroll-container{flex:1;overflow-x:auto;overflow-y:hidden;padding:0;scrollbar-width:thin;scrollbar-color:var(--color-gray-400) var(--color-gray-100);position:relative;z-index:2;min-height:0;display:flex;align-items:stretch}.horizontal-scroll-container::-webkit-scrollbar{height:6px}.horizontal-scroll-container::-webkit-scrollbar-track{background:var(--color-gray-100);border-radius:var(--radius-xs)}.horizontal-scroll-container::-webkit-scrollbar-thumb{background:var(--color-gray-400);border-radius:var(--radius-xs)}.horizontal-scroll-container::-webkit-scrollbar-thumb:hover{background:var(--color-gray-500)}.fab,.fab-button{position:fixed;bottom:30px;right:30px;width:60px;height:60px;min-width:60px;min-height:60px;max-width:60px;max-height:60px;background:#3a3a3a;color:var(--color-secondary);border:none;border-radius:50%;padding:0;margin:0;box-sizing:border-box;display:flex;align-items:center;justify-content:center;font-size:28px;line-height:1;text-align:center;box-shadow:var(--shadow-md);cursor:pointer;z-index:var(--z-popover);transition:transform var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast);-webkit-tap-highlight-color:transparent;overflow:hidden}.fab:hover,.fab-button:hover{transform:scale(1.05);box-shadow:0 8px 24px #e85d9e66;background:#3a3a3a}.fab-icon{display:block;line-height:1;transform:translateY(-1px);font-weight:700}.fab-menu{position:fixed;bottom:100px;right:30px;display:flex;flex-direction:column;align-items:flex-end;z-index:var(--z-popover);visibility:hidden;opacity:0;transition:opacity var(--transition-fast),visibility var(--transition-fast)}.fab-menu.active{visibility:visible;opacity:1}.fab-menu button{background-color:var(--color-primary);color:var(--color-secondary);border:none;border-radius:20px;padding:15px 25px;margin-bottom:var(--spacing-md);cursor:pointer;box-shadow:var(--shadow-md);transition:all var(--transition-fast)}.fab-menu button:hover{background:#3a3a3a;transform:translateY(-2px);box-shadow:var(--shadow-lg)}.fab-messages-button{position:fixed;bottom:30px;right:100px;width:60px;height:60px;min-width:60px;min-height:60px;max-width:60px;max-height:60px;background:var(--color-primary, #ffffff);color:var(--color-text-primary, #1a1a1a);border:2px solid var(--color-border, rgba(224, 224, 224, .3));border-radius:50%;padding:0;margin:0;box-sizing:border-box;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .15));cursor:pointer;z-index:var(--z-popover, 999);transition:all var(--transition-fast, .2s);-webkit-tap-highlight-color:transparent;overflow:visible}.fab-messages-button:hover{transform:scale(1.05);box-shadow:var(--shadow-lg, 0 8px 24px rgba(0, 0, 0, .2));border-color:var(--color-primary-accent, #e0e0e0)}.fab-messages-button svg{width:24px;height:24px;stroke:currentColor}.fab-messages-badge{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 6px;background:#3a3a3a;color:var(--color-secondary, #ffffff);border-radius:10px;font-size:11px;font-weight:600;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px #00000040;border:2px solid var(--color-background, #ffffff)}@media(max-width:768px){.fab-messages-button{right:90px;width:56px;height:56px;min-width:56px;min-height:56px}}.shift-popup-modal{max-width:500px;width:90%;max-height:80vh;overflow-y:auto;background:var(--color-background);border-radius:var(--radius-md);box-shadow:var(--shadow-2xl)}.shift-popup-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg) var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-gray-200);background:linear-gradient(135deg,var(--color-background-secondary) 0%,var(--color-gray-200) 100%);border-radius:var(--radius-md) var(--radius-md) 0 0}.shift-popup-header h3{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-gray-800)}.shift-popup-content{padding:var(--spacing-lg)}.shift-popup-info{background:var(--color-background-secondary);border-radius:var(--radius-sm);padding:var(--spacing-md);margin-bottom:var(--spacing-md);border-left:4px solid var(--color-accent)}.info-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xs)}.info-row:last-child{margin-bottom:0}.info-label{font-weight:var(--font-weight-semibold);color:var(--color-gray-700);font-size:var(--font-size-sm)}.info-value{color:var(--color-gray-800);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm)}.shift-popup-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.shift-popup-form .form-group{display:flex;flex-direction:column;gap:6px}.shift-popup-form .form-group label{font-weight:var(--font-weight-semibold);color:var(--color-gray-700);font-size:var(--font-size-sm)}.shift-popup-form .form-group select,.shift-popup-form .form-group input,.shift-popup-form .form-group textarea{padding:10px var(--spacing-sm);border:2px solid var(--color-gray-200);border-radius:var(--radius-xs);font-size:var(--font-size-sm);transition:border-color var(--transition-fast);background:var(--color-background)}.shift-popup-form .form-group select:focus,.shift-popup-form .form-group input:focus,.shift-popup-form .form-group textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #f444391a}.shift-popup-form .form-group textarea{resize:vertical;min-height:60px}.time-fields{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-sm)}.shift-templates{background:var(--color-background-secondary);border-radius:var(--radius-sm);padding:var(--spacing-md);border:1px solid var(--color-gray-200)}.shift-templates label{display:block;margin-bottom:var(--spacing-sm);font-weight:var(--font-weight-semibold);color:var(--color-gray-700);font-size:var(--font-size-sm)}.template-buttons{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xs)}.template-btn{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-gray-300);border-radius:var(--radius-xs);background:var(--color-background);color:var(--color-gray-700);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);cursor:pointer;transition:var(--transition-fast)}.template-btn:hover{background:var(--color-accent);color:var(--color-background);border-color:var(--color-accent);transform:translateY(-1px)}.shift-popup-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-gray-200);background:var(--color-background-secondary);border-radius:0 0 var(--radius-md) var(--radius-md)}.shift-popup-actions .btn-secondary{padding:10px var(--spacing-md);border:2px solid var(--color-gray-600);border-radius:var(--radius-xs);background:var(--color-background);color:var(--color-gray-600);font-weight:var(--font-weight-semibold);cursor:pointer;transition:var(--transition-fast)}.shift-popup-actions .btn-secondary:hover{background:var(--color-gray-600);color:var(--color-background)}.shift-popup-actions .btn-primary{padding:10px var(--spacing-md);border:2px solid var(--color-accent);border-radius:var(--radius-xs);background:var(--color-accent);color:var(--color-background);font-weight:var(--font-weight-semibold);cursor:pointer;transition:var(--transition-fast)}.shift-popup-actions .btn-primary:hover{background:var(--color-accent-dark);border-color:var(--color-accent-dark);transform:translateY(-1px);box-shadow:0 4px 12px #f444394d}@media(max-width:768px){.shift-popup-modal{width:95%;max-height:90vh}.shift-popup-content{padding:var(--spacing-md)}.time-fields,.template-buttons{grid-template-columns:1fr}.shift-popup-actions{flex-direction:column}.shift-popup-actions .btn-secondary,.shift-popup-actions .btn-primary{width:100%}}.gmail-container{display:flex;flex-direction:column;height:100%;min-height:0;background:#f7f8fc}.gmail-auth-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:var(--spacing-xxl) var(--spacing-md);text-align:center;color:var(--color-text);background:#f7f8fc}.gmail-auth-container .gmail-icon{margin-bottom:var(--spacing-lg);color:#ea4335}.gmail-auth-container h3{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--color-text)}.gmail-auth-container p{margin:0 0 var(--spacing-lg) 0;font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:1.5}.gmail-signin-btn{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-lg);background:#4285f4;color:#fff;border:none;border-radius:var(--radius-sm);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);margin-bottom:var(--spacing-lg)}.gmail-signin-btn:hover{background:#3367d6;transform:translateY(-1px);box-shadow:0 4px 12px #4285f44d}.gmail-signin-btn:active{transform:translateY(0)}.gmail-privacy-note{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);padding:var(--spacing-md);max-width:400px}.gmail-privacy-note p{margin:0;font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.4}.gmail-authenticated-container{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden;background:#f7f8fc}.gmail-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background:#fff;border-bottom:1px solid #e3e6ef;box-shadow:0 1px 2px #0f172a0a}.gmail-user-info{display:flex;align-items:center;gap:var(--spacing-sm)}.gmail-user-avatar{width:40px;height:40px;border-radius:var(--radius-full);background:#ea4335;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-semibold);font-size:var(--font-size-base)}.gmail-user-details{display:flex;flex-direction:column}.gmail-user-name{font-weight:var(--font-weight-semibold);color:var(--color-text);font-size:var(--font-size-sm)}.gmail-user-email{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.gmail-actions{display:flex;gap:var(--spacing-xs)}.gmail-action-btn{width:32px;height:32px;border:none;background:#f1f3f9;color:#5f6b7c;border-radius:var(--radius-xs);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.gmail-action-btn:hover{background:#e2e7f5;color:#212936}.gmail-tabs{display:flex;background:var(--color-primary);border-bottom:1px solid var(--color-border-medium)}.gmail-tab{flex:1;padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:none;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);border-bottom:2px solid transparent;font-size:var(--font-size-sm)}.gmail-tab:hover{background:#ffffff0d;color:var(--color-text)}.gmail-tab.active{color:#ea4335;border-bottom-color:#ea4335;background:#ea43351a}.gmail-content{flex:1;overflow:hidden}.gmail-emails-list{flex:1;min-height:0;overflow-y:auto;background:#fff}.gmail-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:200px;color:var(--color-text-secondary)}.gmail-loading .loading-spinner{width:32px;height:32px;border:3px solid rgba(255,255,255,.1);border-top:3px solid #ea4335;border-radius:var(--radius-full);animation:var(--animation-spin);margin-bottom:var(--spacing-md)}.gmail-email-item{display:flex;align-items:flex-start;padding:8px 12px;border-bottom:1px solid #edf0f7;cursor:pointer;transition:background-color var(--transition-fast),box-shadow var(--transition-fast);position:relative;background:#fff}.gmail-email-item:hover{background:#f7f9fd}.gmail-email-item.unread{background:#f1f5ff;border-left:3px solid #1a73e8}.email-avatar{width:32px;height:32px;border-radius:var(--radius-full);background:#ea4335;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-semibold);font-size:var(--font-size-xs);margin-right:8px;flex-shrink:0}.email-content{flex:1;min-width:0}.email-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.email-sender{font-weight:var(--font-weight-medium);color:var(--color-text);font-size:var(--font-size-xs)}.email-time{font-size:10px;color:var(--color-text-secondary);white-space:nowrap;margin-left:8px}.email-subject{font-weight:var(--font-weight-medium);color:var(--color-text);font-size:var(--font-size-xs);margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.email-preview{font-size:10px;color:var(--color-text-secondary);line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical}.gmail-client{display:flex;height:100%;min-height:0;background:#fff;transition:all .3s ease;position:relative;overflow:hidden;border:1px solid #e3e6ef;border-radius:var(--radius-lg);box-shadow:0 12px 32px #0f172a14}.gmail-sidebar{width:180px;min-width:180px;border-right:1px solid #e3e6ef;padding:var(--spacing-sm);display:flex;flex-direction:column;gap:var(--spacing-xs);background:#fdfdfd;transition:width .3s ease;overflow:hidden}.gmail-client.sidebar-collapsed .gmail-sidebar{width:48px;min-width:48px;padding:var(--spacing-sm) var(--spacing-xs)}.gmail-compose-button{padding:6px 10px;border:none;border-radius:var(--radius-sm);background:#ea4335;color:#fff;font-weight:var(--font-weight-medium);font-size:var(--font-size-xs);cursor:pointer;box-shadow:var(--shadow-sm);transition:transform var(--transition-fast),box-shadow var(--transition-fast);display:flex;align-items:center;gap:6px;justify-content:center;flex:1;min-width:0}.gmail-compose-button:hover{transform:translateY(-1px);box-shadow:var(--shadow-lg)}.gmail-compose-button svg{width:16px;height:16px;flex-shrink:0}.gmail-client.sidebar-collapsed .gmail-compose-text{display:none}.gmail-client.sidebar-collapsed .gmail-compose-button{border-radius:var(--radius-full);justify-content:center}.gmail-labels-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;overflow-y:auto}.gmail-labels-list button{width:100%;text-align:left;padding:6px 8px;border:none;border-radius:var(--radius-xs);background:transparent;color:var(--color-text-secondary);cursor:pointer;font-size:var(--font-size-xs);transition:background var(--transition-fast),color var(--transition-fast);display:flex;align-items:center;gap:8px}.gmail-labels-list button.active,.gmail-labels-list button:hover{background:#ea433526;color:var(--color-text)}.gmail-label-icon{width:16px;height:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--color-text-secondary)}.gmail-label-icon svg{width:16px;height:16px}.gmail-client.sidebar-collapsed .gmail-label-text{display:none}.gmail-client.sidebar-collapsed .gmail-label-icon{margin-right:0}.gmail-list-pane{flex:1;min-height:0;display:flex;flex-direction:column;border-right:1px solid #e3e6ef;background:#fff}.gmail-list-toolbar{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid #edf0f7;gap:var(--spacing-md);background:#fff}.gmail-toolbar-actions button{margin-left:var(--spacing-xs);padding:6px 12px;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.15);background:transparent;color:var(--color-text);cursor:pointer}.gmail-search{display:flex;gap:var(--spacing-xs);flex:1}.gmail-search input{flex:1;padding:8px 10px;border-radius:var(--radius-sm);border:1px solid var(--color-border-medium);background:var(--color-background);color:var(--color-text)}.gmail-search button{padding:8px 12px;border-radius:var(--radius-sm);border:none;background:#4285f4;color:#fff;cursor:pointer}.gmail-text-button{border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer;padding:0 8px}.gmail-email-item.active{background:#4285f426}.gmail-email-actions{display:flex;flex-direction:row;gap:4px;margin-left:var(--spacing-sm);color:#94a3b8;opacity:0;transition:opacity var(--transition-fast);align-items:center}.gmail-email-item:hover .gmail-email-actions{opacity:1}.gmail-email-action-btn{border:none;background:transparent;cursor:pointer;padding:4px;color:#94a3b8;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--radius-xs);transition:background var(--transition-fast),color var(--transition-fast)}.gmail-email-action-btn:hover{background:#0000000d;color:var(--color-text)}.gmail-email-action-btn svg{width:16px;height:16px}.gmail-list-footer{padding:var(--spacing-sm) var(--spacing-md);border-top:1px solid #edf0f7;display:flex;justify-content:space-between;align-items:center;background:#fff}.gmail-inline-status{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.gmail-content-pane{flex:1;height:100%;min-height:0;display:flex;flex-direction:column;background:#fbfcff}.gmail-thread-view{flex:1;min-height:0;display:flex;flex-direction:column;background:#fbfcff}.gmail-thread-toolbar{padding:var(--spacing-md);border-bottom:1px solid #edf0f7;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);background:#fff}.gmail-thread-toolbar-left{display:flex;align-items:center;gap:var(--spacing-sm)}.gmail-back-button{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(0,0,0,.12);background:#fff;border-radius:var(--radius-sm);padding:8px 14px;cursor:pointer;font-size:14px;color:var(--color-text)}.gmail-back-button:hover{background:#0000000a}.gmail-back-button svg{flex-shrink:0}.gmail-back-button-round{padding:0;width:32px;height:32px;min-width:32px;min-height:32px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(0,0,0,.12);background:transparent;color:#5f6368}.gmail-back-button-round:hover{background:#0000000f;color:#1a1a1a}.gmail-back-button-round svg{width:18px;height:18px}.gmail-thread-title{display:flex;flex-direction:column;gap:2px}.gmail-thread-title h3{margin:0;font-size:var(--font-size-base);font-weight:600;color:var(--color-text)}.gmail-thread-title span{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.gmail-thread-toolbar-actions{display:flex;align-items:center;gap:4px}.gmail-toolbar-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;min-width:40px;min-height:40px;padding:0;border-radius:50%;border:none;background:transparent;cursor:pointer;color:#5f6368;transition:background .15s ease}.gmail-toolbar-icon-btn:hover:not(:disabled){background:#0000000f}.gmail-toolbar-icon-btn:disabled{opacity:.5;cursor:not-allowed}.gmail-toolbar-icon-btn svg{flex-shrink:0;width:20px;height:20px}.gmail-toolbar-icon-btn.gmail-toolbar-compose{color:#fff;background:#1a73e8}.gmail-toolbar-icon-btn.gmail-toolbar-compose:hover{background:#1765cc}.gmail-thread-toolbar-actions button{padding:8px 12px;border-radius:var(--radius-sm);border:none;background:transparent;cursor:pointer;font-size:13px}.gmail-thread-toolbar-actions button:disabled{opacity:.5;cursor:not-allowed}.gmail-thread{display:flex;flex-direction:column;height:100%;min-height:0}.gmail-thread-messages{flex:1;min-height:0;overflow-y:auto;padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-md)}.gmail-thread-message{background:#fff;border-radius:var(--radius-md);box-shadow:0 8px 20px #0f172a0f;padding:var(--spacing-md);border:1px solid #edf0f7}.gmail-thread-message-header{display:flex;justify-content:space-between;margin-bottom:var(--spacing-sm);gap:var(--spacing-sm)}.gmail-thread-message-meta{font-size:var(--font-size-xs);color:var(--color-text-secondary);display:flex;gap:var(--spacing-xs);align-items:center}.gmail-thread-message-actions button{background:transparent;border:none;color:var(--color-accent);cursor:pointer;margin-left:var(--spacing-xs)}.gmail-thread-message-body{font-size:var(--font-size-sm);color:var(--color-text);line-height:1.6}.gmail-attachments{margin-top:var(--spacing-sm);font-size:var(--font-size-xs);color:var(--color-text-secondary)}.gmail-thread-loading,.gmail-thread-error,.gmail-thread-placeholder{padding:var(--spacing-xl);text-align:center;color:var(--color-text-secondary)}.gmail-compose-overlay{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1200}.gmail-compose-modal{background:#fff;width:min(480px,90%);border-radius:var(--radius-md);box-shadow:var(--shadow-2xl);display:flex;flex-direction:column;max-height:90vh}.gmail-compose-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);border-bottom:1px solid rgba(0,0,0,.1)}.gmail-compose-body{padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm);overflow-y:auto}.gmail-compose-body label{font-size:var(--font-size-xs);display:flex;flex-direction:column;gap:4px;color:var(--color-text)}.gmail-compose-body input,.gmail-compose-body textarea{border:1px solid rgba(0,0,0,.2);border-radius:var(--radius-sm);padding:8px;font-size:var(--font-size-sm)}.gmail-compose-footer{padding:var(--spacing-md);border-top:1px solid rgba(0,0,0,.1);display:flex;justify-content:flex-end;gap:var(--spacing-sm)}.gmail-compose-footer button{padding:8px 16px;border-radius:var(--radius-sm);border:none;cursor:pointer}.gmail-compose-footer button:first-child{background:#1a73e8;color:#fff}.gmail-compose-footer button.gmail-text-button{background:transparent;color:var(--color-text-secondary)}.gmail-error,.gmail-empty-state{padding:var(--spacing-xl);text-align:center;color:var(--color-text-secondary)}.gmail-error button{margin-top:var(--spacing-sm);padding:6px 12px;border-radius:var(--radius-sm);border:none;background:#3a3a3a;color:#fff;cursor:pointer}.gmail-error-banner{background:#ef444426;color:#b91c1c;padding:var(--spacing-sm) var(--spacing-md);display:flex;justify-content:space-between;align-items:center;font-size:var(--font-size-sm)}.gmail-error-banner button{border:none;background:transparent;color:inherit;cursor:pointer;font-size:var(--font-size-xs)}.gmail-content-pane.thread-view{background:var(--color-background)}.gmail-client.thread-mode.sidebar-collapsed .gmail-sidebar{position:absolute;z-index:2;left:-260px;box-shadow:var(--shadow-lg)}@media(max-width:1024px){.gmail-client{flex-direction:row}.gmail-content-pane{width:100%}.gmail-client.sidebar-collapsed .gmail-sidebar{width:56px;min-width:56px}}@media(max-width:768px){.gmail-client{flex-direction:column}.gmail-sidebar{flex-direction:row;align-items:center;overflow-x:auto}.gmail-labels-list{flex-direction:row;flex-wrap:wrap}.gmail-client.thread-mode .gmail-sidebar{position:absolute;left:-260px}}.rota-content{padding:0;margin:0;flex:1;overflow-y:auto;min-height:0}.rota-summary{padding:15px var(--spacing-md) 0 var(--spacing-md);background-color:var(--color-secondary);border-bottom:1px solid var(--color-secondary)}.week-summary{display:flex;align-items:center;gap:var(--spacing-xs);margin:0;padding:0}.week-number{font-weight:var(--font-weight-semibold);color:var(--color-text);font-size:var(--font-size-sm)}.summary-text{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.rota-table-container{overflow-x:auto;overflow-y:visible;position:relative;padding:0;margin:0;border-radius:var(--radius-md);box-shadow:0 4px 20px #00000014;background:var(--color-background);contain:layout style}.rota-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px;margin:0;padding:0;background:var(--color-background);border-radius:var(--radius-md);overflow:hidden;table-layout:fixed}.rota-table tr{margin:0;padding:0}.rota-table tr:last-child td{border-bottom:none}.rota-table th{background:linear-gradient(135deg,var(--color-background-secondary) 0%,var(--color-gray-200) 100%);color:var(--color-gray-700);font-weight:var(--font-weight-semibold);padding:var(--spacing-md) var(--spacing-sm);text-align:left;border:none;border-bottom:2px solid var(--color-gray-300);position:sticky;top:0;z-index:10;margin:0;font-size:13px;letter-spacing:.5px;text-transform:uppercase}.rota-table th.staff-column{width:90px;min-width:90px;max-width:90px;background:linear-gradient(135deg,var(--color-background-secondary) 0%,var(--color-gray-200) 100%);position:sticky;left:0;z-index:30;border-right:2px solid var(--color-gray-300);box-shadow:2px 0 4px #0000001a;top:0;padding:var(--spacing-sm) 6px}.calendar-week-hide-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.calendar-week-hide-scrollbar::-webkit-scrollbar{display:none}.day-view-scroll,.custom-scrollbar{scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.2) transparent}.day-view-scroll::-webkit-scrollbar,.custom-scrollbar::-webkit-scrollbar{width:8px}.day-view-scroll::-webkit-scrollbar-track,.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.day-view-scroll::-webkit-scrollbar-thumb,.custom-scrollbar::-webkit-scrollbar-thumb{background-color:#0003;border-radius:4px;border:2px solid transparent;background-clip:padding-box}.day-view-scroll::-webkit-scrollbar-thumb:hover,.custom-scrollbar::-webkit-scrollbar-thumb:hover{background-color:#0000004d}@media(max-width:768px){.rota-table-container{border-radius:var(--radius-sm)}.rota-table th.staff-column{width:70px;min-width:70px;max-width:70px}}.main-content{flex-grow:1;padding:10px;display:grid;grid-template-columns:calc((100% - 1.5 * var(--spacing-md)) / 4) calc((100% - 1.5 * var(--spacing-md)) / 4) 1fr;grid-template-rows:5fr 1fr;gap:calc(var(--spacing-md) / 2);overflow-y:auto;transition:all .3s ease}.dashboard-container.sidebar-hidden .main-content{grid-template-columns:calc((100% - 1.5 * var(--spacing-md)) / 4) calc((100% - 1.5 * var(--spacing-md)) / 4) 1fr}.bottom-cards-container{grid-column:1 / -1;grid-row:2;display:flex;gap:calc(var(--spacing-md) / 2);height:180px}.horizontal-card{flex:1;display:flex;flex-direction:column;min-width:0}#staff-resident-card{flex:0 0 auto;width:calc((100% - var(--spacing-md) / 2) / 2);max-width:calc((100% - var(--spacing-md) / 2) / 2);box-shadow:0 4px 12px #00000026,0 2px 4px #0000001a}.card-center{grid-column:2;grid-row:1}.card-right{grid-column:3;grid-row:1 / 3}#today-card{grid-column:1;grid-row:1}#alerts-card.card-center{grid-column:2;grid-row:1}.card-header{position:relative}.card-header h2{margin:0;font-size:var(--font-size-lg)}.card-header select{padding:var(--spacing-xs);border-radius:var(--radius-xs);border:1px solid var(--color-gray-300);background:transparent}.dropdown-menu .dropdown-item{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-xs);cursor:pointer}.dropdown-menu .dropdown-item:hover{background:var(--color-gray-100)}.header-dropdown{font-family:var(--font-family-base);background:var(--color-primary);color:var(--color-secondary);border:1px solid var(--color-primary);border-radius:var(--radius-xs);padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:var(--transition-fast);min-width:120px}.header-dropdown:hover{background:var(--color-dark-300);border-color:var(--color-accent)}.header-dropdown:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px #f444391a}#category-filter-dropdown{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' stroke='%23E0E0E0' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 8px center!important;background-size:12px 8px!important}#category-filter-dropdown:focus,#category-filter-dropdown:active{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' stroke='%23E0E0E0' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important}#category-filter-dropdown:hover{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' stroke='%23E0E0E0' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;background:transparent!important;border-color:#e0e0e033!important;color:#e0e0e0!important}.header-eye-btn,.rota-nav-btn{background:transparent;color:#e0e0e0;border:1px solid rgba(255,255,255,.3);border-radius:50%;width:32px;height:32px;min-width:32px;min-height:32px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);padding:0;margin:0;font-size:14px;line-height:1}.header-eye-btn:hover,.rota-nav-btn:hover{background:#ffffff1a;border-color:#ffffff80;color:#fff}.header-eye-btn svg{width:16px;height:16px;stroke:currentColor;stroke-width:2;fill:none}.rota-nav-btn{font-size:16px;font-weight:var(--font-weight-medium)}.rota-nav-btn svg{width:16px;height:16px;stroke:currentColor;stroke-width:2;fill:none}.rota-nav-btn--request-leave{width:auto;min-width:88px;border-radius:16px;padding:0 10px;font-size:12px}.rota-nav-btn--leave-history{min-width:36px;width:36px;height:36px}.rota-nav-btn--leave-history svg{width:20px;height:20px}.rota-nav-btn-wrap--leave-history{position:relative;display:inline-flex}.rota-nav-btn--leave-history{position:relative}.rota-leave-history-badge{position:absolute;top:2px;right:2px;width:10px;height:10px;border-radius:50%;background:#dc2626;border:2px solid var(--color-background-card, #fff);pointer-events:none}.myday-leave-history-overlay{position:absolute;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;border-radius:12px}.myday-leave-history-modal{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;width:92%;max-width:720px;max-height:75vh;overflow:hidden;display:flex;flex-direction:column}.myday-leave-history-header{display:flex;align-items:center;justify-content:space-between;padding:10px 18px;border-bottom:1px solid var(--color-border-dark);background:var(--color-primary);color:var(--color-secondary);border-radius:12px 12px 0 0;flex-shrink:0}.myday-leave-history-header h3,.myday-leave-history-title{margin:0;font-size:16px;font-weight:600;color:var(--color-secondary)}.myday-leave-history-close{background:transparent;border:none;padding:0;width:36px;height:36px;cursor:pointer;color:var(--color-secondary);display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s ease,color .2s ease}.myday-leave-history-close:hover{background:var(--color-dark-300, #333);color:var(--color-background)}.myday-leave-history-body{padding:14px 18px;overflow:auto;flex:1}.myday-leave-history-loading,.myday-leave-history-empty{text-align:center;padding:24px;color:#6b7280;font-size:14px}.myday-leave-history-table{width:100%;border-collapse:collapse;font-size:13px}.myday-leave-history-table th{text-align:left;padding:8px 10px;border-bottom:1px solid var(--color-border, #e5e7eb);font-weight:600;color:#6b7280}.myday-leave-history-table td{padding:8px 10px;border-bottom:1px solid rgba(0,0,0,.06)}.myday-leave-history-status{display:inline-block;padding:2px 8px;border-radius:6px;font-size:12px;font-weight:500}.myday-leave-history-status--approved{background:#dcfce7;color:#166534}.myday-leave-history-status--rejected{background:#fee2e2;color:#991b1b}.myday-leave-history-status--pending{background:#fef3c7;color:#92400e}.myday-leave-history-status--cancelled{background:#f3f4f6;color:#4b5563}.minimize-btn{background:var(--color-dark-500);color:var(--color-background);border:none;border-radius:var(--radius-full);width:28px;height:28px;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;transition:var(--transition-fast);display:flex;align-items:center;justify-content:center}.minimize-btn:hover{background:var(--color-accent)}.card-header .add-btn{font-size:var(--font-size-lg);background:var(--color-dark-500);color:var(--color-background);border:none;border-radius:var(--radius-full);width:28px;height:28px;cursor:pointer;transition:var(--transition-fast);display:flex;align-items:center;justify-content:center}.card-header .add-btn:hover{background:var(--color-accent)}#rota-card .card-header,#today-card .card-header,#alerts-card .card-header,#staff-resident-card .card-header,#sites-card .card-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;min-height:48px;height:48px;background-color:var(--color-primary);border-bottom:1px solid rgba(224,224,224,.1);border-radius:18px 18px 0 0;margin:0}#rota-card .card-header+*,#today-card .card-header+*,#alerts-card .card-header+*,#staff-resident-card .card-header+*{margin-top:0!important;padding-top:0!important}#rota-card .flip-inner,#today-card .flip-inner,#alerts-card .flip-inner,#staff-resident-card .horizontal-scroll-container{margin-top:0!important;padding-top:0!important}#today-card .card-header h2,#alerts-card .card-header h2,#rota-card .card-header h2,#staff-resident-card .card-header h2,#sites-card .card-header h2{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-secondary);font-family:Montserrat,sans-serif}#today-card .card-header select{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-primary);border-radius:var(--radius-md);background:transparent;color:var(--color-secondary);font-size:var(--font-size-sm);min-width:140px;cursor:pointer;transition:var(--transition-fast)}#today-card .card-header select:hover{border-color:var(--color-accent)}#today-card .card-header select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px #f444391a}#today-card .add-btn,#alerts-card .add-btn,#messages-card .add-btn{background:var(--color-primary);color:var(--color-secondary);border:none;border-radius:var(--radius-full);width:32px;height:32px;font-size:var(--font-size-lg);cursor:pointer;transition:var(--transition-fast);display:flex;align-items:center;justify-content:center}#today-card .add-btn:hover,#alerts-card .add-btn:hover,#messages-card .add-btn:hover{background:var(--color-accent);transform:scale(1.05)}#messages-card{background:var(--color-background);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);border:2px solid var(--color-primary)}#messages-card .card-header{padding:var(--spacing-xs) var(--spacing-sm);border-bottom:1px solid var(--color-primary);background:var(--color-primary);border-radius:18px 18px 0 0;display:flex;justify-content:space-between;align-items:center}#messages-card .card-header h2{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-secondary);font-family:Montserrat,sans-serif}#new-group-btn{background:var(--color-primary)}#new-group-btn:hover{background:var(--color-accent)}#rota-card{background:var(--color-background);border-radius:var(--radius-xl);box-shadow:0 4px 12px #00000026,0 2px 4px #0000001a;border:2px solid var(--color-primary);margin:0;padding:0}#alerts-card{background-color:var(--color-background);border-radius:var(--radius-xl);box-shadow:0 4px 12px #00000026,0 2px 4px #0000001a;border:2px solid var(--color-primary)}#today-card{background:var(--color-background);border-radius:var(--radius-xl);box-shadow:0 4px 12px #00000026,0 2px 4px #0000001a;border:2px solid var(--color-primary)}.header-actions{display:flex;align-items:center;gap:6px}.card-header-title-section{display:flex;align-items:center;gap:var(--spacing-sm)}.card-header-title-section h2{margin:0}.header-subtitle{font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:var(--font-weight-normal);opacity:.7}.header-action-btn{background:transparent;border:1px solid rgba(255,255,255,.3);color:#e0e0e0;cursor:pointer;border-radius:50%;width:32px;height:32px;min-width:32px;min-height:32px;padding:0;margin:0;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);font-size:14px;line-height:1}.header-action-btn:hover:not(:disabled){background:#ffffff1a;border-color:#ffffff80;color:#fff}.header-action-btn:disabled{opacity:.4;cursor:not-allowed}.header-action-btn.danger{color:#e0e0e0}.header-action-btn.danger:hover:not(:disabled){background:#ef44441a;border-color:#ef444480;color:#ef4444}.header-action-btn.active{background:#ffffff26;border-color:#fff9;color:#fff}.header-action-btn svg{width:16px;height:16px;stroke:currentColor;stroke-width:2;fill:none}#staff-resident-card .card-header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-sm)}#staff-resident-card .header-filters{display:flex;align-items:center;gap:var(--spacing-xs);flex:1}.plus-button-container{position:relative}.plus-btn{background:var(--color-accent);color:var(--color-background);border:none;border-radius:var(--radius-full);width:40px;height:40px;font-size:var(--font-size-xl);cursor:pointer;transition:var(--transition-fast);display:flex;align-items:center;justify-content:center}.plus-btn:hover{background:var(--color-accent-dark);transform:scale(1.05)}.plus-menu{position:absolute;top:100%;right:0;background:var(--color-secondary);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);z-index:var(--z-dropdown);min-width:160px;margin-top:4px}.plus-menu-item{display:flex;align-items:center;width:100%;padding:var(--spacing-sm) var(--spacing-md);border:none;background:none;text-align:left;cursor:pointer;transition:background var(--transition-fast)}.plus-menu-item:hover{background:var(--color-gray-100)}.plus-menu-item:first-child{border-radius:var(--radius-sm) var(--radius-sm) 0 0}.plus-menu-item:last-child{border-radius:0 0 var(--radius-sm) var(--radius-sm)}.plus-menu-icon{margin-right:var(--spacing-sm);font-size:var(--font-size-base)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background-color:#0003;border-radius:4px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background-color:#0000004d}#today-card .calendar-day:focus,#today-card .calendar-day:focus-visible,#today-card .calendar-day:active{box-shadow:none!important;outline:none!important}.calendar-nav-arrow{background:transparent;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:4px;width:24px;height:24px;transition:opacity var(--transition-fast)}.calendar-nav-arrow:hover{opacity:.7}.calendar-nav-arrow svg{width:16px;height:16px}.calendar-today-btn{background:transparent;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:4px;width:24px;height:24px;position:relative;color:#000;transition:opacity var(--transition-fast)}.calendar-today-btn:hover{opacity:.7}.calendar-today-btn svg{width:16px;height:16px}.calendar-today-tooltip{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:8px;padding:4px 8px;background:#000000d9;color:#fff;font-size:11px;white-space:nowrap;border-radius:4px;opacity:0;pointer-events:none;transition:opacity 0s ease;z-index:1000}.calendar-today-tooltip:after{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border:4px solid transparent;border-bottom-color:#000000d9}.calendar-today-btn:hover .calendar-today-tooltip{opacity:1}.calendar-view-dropdown{padding:8px 16px;background:transparent;color:#000;border:1px solid rgba(0,0,0,.2);border-radius:20px;font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;text-transform:capitalize;min-width:80px;display:flex;align-items:center;gap:6px}.calendar-view-dropdown:hover{background:#0000000d;border-color:#0000004d}.avatar-tooltip{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:6px;padding:4px 8px;background:#000000d9;color:#fff;font-size:11px;white-space:nowrap;border-radius:4px;opacity:0;pointer-events:none;transition:opacity 0s ease;z-index:10000}.avatar-tooltip:after{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border:4px solid transparent;border-bottom-color:#000000d9}div:hover>.avatar-tooltip{opacity:1}.calendar-dropdown-chevron{width:16px;height:16px;flex-shrink:0}.management-header-section{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);padding:12px 16px;border-bottom:1px solid rgba(224,224,224,.1);background:var(--color-primary);border-radius:var(--radius-xl) var(--radius-xl) 0 0;min-height:48px;height:48px;flex-shrink:0}.management-header-left{display:flex;align-items:center;gap:var(--spacing-sm);flex-shrink:0}.management-header-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-secondary);margin:0;flex-shrink:0}.management-close-header-btn{flex-shrink:0}.management-header-right{display:flex;gap:var(--spacing-sm);align-items:center;flex-shrink:0;margin-left:auto}.management-header-buttons{display:flex;gap:var(--spacing-sm);flex-wrap:wrap;align-items:center}.management-page-container{padding:var(--spacing-md);height:100%;width:100%;display:flex;flex-direction:column;background:var(--color-background);box-sizing:border-box;overflow:hidden}.management-main-container{background:var(--color-background);border:2px solid var(--color-primary);border-radius:var(--radius-xl);padding:0;height:100%;width:100%;flex:1;display:flex;flex-direction:column;box-shadow:var(--shadow-sm);overflow:hidden;box-sizing:border-box}.management-header-buttons .management-btn{padding:8px 16px;background:transparent;color:var(--color-secondary);border:1px solid rgba(224,224,224,.2);border-radius:20px;font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.management-header-buttons .management-btn:hover{background:#ffffff1a;border-color:#ffffff4d}.management-header-buttons .management-btn.active{background:#ffffff26;border-color:#fff6;color:var(--color-secondary)}.management-sub-buttons{display:flex;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-background);border-bottom:1px solid rgba(224,224,224,.1);flex-wrap:wrap;min-height:60px;align-items:center}.sub-btn{padding:8px 16px;background:transparent;color:var(--color-text);border:1px solid rgba(224,224,224,.2);border-radius:var(--radius-sm);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.sub-btn:hover{background:#f444391a;border-color:var(--color-accent);color:var(--color-accent);transform:translateY(-1px)}.sub-btn.active{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-background);box-shadow:var(--shadow-sm)}.management-form-area{flex:1;padding:0;overflow-y:auto;overflow-x:hidden;background:var(--color-background);min-height:0;display:flex;flex-direction:column}.management-placeholder{display:flex;align-items:center;justify-content:center;height:100%;min-height:400px}.placeholder-content{text-align:center;color:var(--color-text-muted)}.placeholder-content h3{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-sm);color:var(--color-text)}.placeholder-content p{font-size:var(--font-size-base);margin:0;opacity:.7}.management-form-area .card{border:none;box-shadow:none;background:transparent}.management-form-area .card-header{background:transparent;border-bottom:1px solid rgba(224,224,224,.1);padding:0 0 var(--spacing-sm) 0;margin-bottom:var(--spacing-lg)}.management-form-area .card-header h2{color:var(--color-text);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin:0}.management-form-area .form-group{margin-bottom:var(--spacing-md)}.management-form-area .form-group label{display:block;margin-bottom:var(--spacing-xs);font-weight:var(--font-weight-semibold);color:var(--color-text);font-size:var(--font-size-sm)}.management-form-area .form-group input,.management-form-area .form-group select,.management-form-area .form-group textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-sm);transition:all var(--transition-fast);box-sizing:border-box;background:var(--color-background);color:var(--color-text)}.management-form-area .form-group input:focus,.management-form-area .form-group select:focus,.management-form-area .form-group textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px #f444391a}.management-form-area .form-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end;margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid rgba(224,224,224,.1)}.management-form-area .btn{padding:var(--spacing-sm) var(--spacing-lg);border:none;border-radius:var(--radius-sm);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast)}.management-form-area .btn-secondary{background:transparent;color:var(--color-text);border:1px solid var(--color-border)}.management-form-area .btn-secondary:hover{background:var(--color-gray-100);border-color:var(--color-gray-400)}.management-form-area .btn-primary{background:var(--color-accent);color:var(--color-background)}.management-form-area .btn-primary:hover{background:var(--color-accent-dark);transform:translateY(-1px);box-shadow:var(--shadow-sm)}@media(max-width:768px){.management-page-container{padding:var(--spacing-sm)}.management-header-section{flex-wrap:wrap}.management-header-right{flex:1 1 100%;margin-top:var(--spacing-xs);justify-content:flex-end}.management-header-buttons{flex-wrap:wrap}.management-sub-buttons{padding:var(--spacing-sm);gap:var(--spacing-xs)}.sub-btn{padding:6px 12px;font-size:var(--font-size-xs)}.management-form-area{padding:var(--spacing-sm)}}@media(max-width:480px){.management-page-container,.management-form-area{padding:var(--spacing-xs)}.placeholder-content h3{font-size:var(--font-size-xl)}.placeholder-content p{font-size:var(--font-size-sm)}}.manage-monitoring-container{padding:var(--spacing-lg);max-height:calc(100vh - 200px);overflow-y:auto}.monitoring-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:2px solid var(--color-border)}.monitoring-header h2{margin:0;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text)}.monitoring-list-view{display:flex;flex-direction:column;gap:var(--spacing-md)}.monitoring-filters{display:flex;gap:var(--spacing-md);align-items:center}.monitoring-table{overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-background)}.monitoring-table table{width:100%;border-collapse:collapse}.monitoring-table thead{background:var(--color-primary);color:var(--color-secondary)}.monitoring-table th{padding:var(--spacing-md);text-align:left;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);border-bottom:2px solid var(--color-border-medium)}.monitoring-table td{padding:var(--spacing-md);border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm)}.monitoring-table tbody tr:hover{background:var(--color-gray-100)}.monitoring-table .empty-state{text-align:center;padding:var(--spacing-xxl);color:var(--color-text-muted);font-style:italic}.monitoring-type-badge{display:inline-block;padding:4px 12px;background:var(--color-accent);color:#fff;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.status-badge{display:inline-block;padding:4px 12px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.status-badge.status-active{background:var(--color-success-light);color:var(--color-success-dark)}.status-badge.status-completed{background:var(--color-gray-300);color:var(--color-gray-700)}.status-badge.status-archived{background:var(--color-gray-400);color:var(--color-gray-800)}.btn-link{background:none;border:none;color:var(--color-accent);cursor:pointer;text-decoration:underline;font-size:var(--font-size-sm);padding:0}.btn-link:hover{color:var(--color-accent-dark)}.abc-behaviour-monitoring-form{background:var(--color-background);border-radius:var(--radius-lg);padding:var(--spacing-xl);max-width:900px;margin:0 auto}.abc-behaviour-monitoring-form .form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-md);border-bottom:2px solid var(--color-border)}.abc-behaviour-monitoring-form .form-header h2{margin:0;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text)}.btn-close{background:none;border:none;font-size:32px;color:var(--color-text-muted);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.btn-close:hover{background:var(--color-gray-100);color:var(--color-text)}.monitoring-form{display:flex;flex-direction:column;gap:var(--spacing-xl)}.form-section{background:var(--color-background-secondary);padding:var(--spacing-lg);border-radius:var(--radius-md);border:1px solid var(--color-border)}.section-title{margin:0 0 var(--spacing-lg) 0;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text);padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--color-accent)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.form-group{margin-bottom:var(--spacing-md)}.form-group label{display:block;margin-bottom:var(--spacing-xs);font-weight:var(--font-weight-semibold);color:var(--color-text);font-size:var(--font-size-sm)}.form-group .required{color:var(--color-accent)}.field-description{font-size:var(--font-size-xs);color:var(--color-text-muted);margin:0 0 var(--spacing-xs) 0;font-style:italic}.form-input,.form-select,.form-textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-base);transition:all var(--transition-fast);box-sizing:border-box;background:var(--color-background);color:var(--color-text);font-family:inherit}.form-select[multiple]{min-height:120px}.form-textarea{resize:vertical;min-height:100px}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #f444391a}.form-help{display:block;margin-top:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--color-text-muted)}.health-issues-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-top:var(--spacing-sm)}.tag{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:4px 12px;background:var(--color-accent);color:#fff;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.tag-remove{background:none;border:none;color:#fff;cursor:pointer;font-size:16px;padding:0;width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-xs);transition:background var(--transition-fast)}.tag-remove:hover{background:#fff3}.form-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;padding-top:var(--spacing-lg);border-top:2px solid var(--color-border);margin-top:var(--spacing-lg)}.btn-primary,.btn-secondary{padding:var(--spacing-md) var(--spacing-xl);border:none;border-radius:var(--radius-md);font-weight:var(--font-weight-semibold);font-size:var(--font-size-base);cursor:pointer;transition:all var(--transition-fast)}.btn-primary{background:var(--color-accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-accent-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:var(--color-gray-200);color:var(--color-text)}.btn-secondary:hover:not(:disabled){background:var(--color-gray-300)}.alert{padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-md)}.alert-error{background:#dc35451a;border:1px solid var(--color-danger);color:var(--color-danger)}.alert-success{background:#1987541a;border:1px solid var(--color-success);color:var(--color-success)}.loading-state,.error-message{padding:var(--spacing-lg);text-align:center;color:var(--color-text-muted)}.error-message{color:var(--color-danger);background:#dc35451a;border-radius:var(--radius-md)}.text-muted{color:var(--color-text-muted);font-style:italic}.checkbox-group{display:flex;flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-sm);margin-top:var(--spacing-xs)}.checkbox-label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-xs);transition:background var(--transition-fast);font-size:var(--font-size-sm);color:var(--color-text)}.checkbox-label:hover{background:var(--color-gray-100)}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-accent);flex-shrink:0}.checkbox-label span{flex:1}.radio-group{display:flex;gap:var(--spacing-lg);margin-top:var(--spacing-xs)}.radio-label{display:flex;align-items:center;gap:var(--spacing-xs);cursor:pointer;font-size:var(--font-size-sm);color:var(--color-text)}.radio-label input[type=radio]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-accent)}@media(max-width:768px){.form-row{grid-template-columns:1fr}.abc-behaviour-monitoring-form{padding:var(--spacing-md)}.monitoring-table{font-size:var(--font-size-xs)}.monitoring-table th,.monitoring-table td{padding:var(--spacing-sm)}}
