@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;650;700;750;800&display=swap";:root{color:#243a34;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#f6f8f7;font-family:Manrope,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;font-weight:500}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #8ec0a9}button{color:inherit}input,select,textarea{color:#243a34;background:#fff;border:1px solid #dfe6e2;border-radius:8px;width:100%;min-width:0;min-height:43px;padding:11px 12px}input:focus,select:focus,textarea:focus{outline-offset:1px;outline:2px solid #a5cbb8}label{flex-direction:column;gap:8px;font-size:12px;font-weight:700;display:flex}h1,h2,h3,p{margin:0}button{border:0}small{font-size:12px}svg{flex-shrink:0}::selection{background:#cee4d8}.network-status{z-index:1100;padding:12px max(16px, env(safe-area-inset-right)) 12px max(16px, env(safe-area-inset-left));color:#624507;background:#fff1cc;border-bottom:1px solid #dfc57e;line-height:1.5;position:sticky;top:0}.invitation-help{border-top:1px solid #dfe6e2;margin:18px 0;padding-top:18px}.invitation-help summary{cursor:pointer;font-weight:700}.invitation-help p{margin-top:12px}@media (width<=760px){body input,body select,body textarea{font-size:16px}body{padding-bottom:env(safe-area-inset-bottom)}dialog[open]{max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overscroll-behavior:contain;scroll-padding-block:20px;overflow-y:auto}dialog input,dialog select,dialog textarea{scroll-margin-block:20px}.modal-actions{z-index:2;padding-bottom:max(8px, env(safe-area-inset-bottom));background:#fff;position:sticky;bottom:0}}input[type=date]{appearance:none;min-inline-size:0;max-inline-size:100%;display:block}input[type=date]::-webkit-date-and-time-value{text-align:left;min-width:0}input[type=date]::-webkit-datetime-edit{min-width:0;padding:0}.app-shell{min-height:100vh;display:flex}.sidebar{background:#fff;border-right:1px solid #e4eae6;flex-direction:column;width:236px;padding:36px 20px 20px;display:flex;position:fixed;inset:0 auto 0 0}.brand{letter-spacing:2px;align-items:center;gap:12px;padding:0 13px;font-size:20px;font-weight:800;display:flex}.brand-mark{color:#fff;background:#244f40;border-radius:12px;place-items:center;width:43px;height:45px;display:grid;transform:rotate(-3deg)}.brand-sub{letter-spacing:4.5px;color:#70867c;margin-top:2px;font-size:9px;display:block}.workspace-label{letter-spacing:1.5px;color:#95a29a;margin:51px 13px 16px;font-size:9px;font-weight:800}.nav-item{text-align:left;color:#6e7f76;background:0 0;border-radius:8px;align-items:center;gap:12px;width:100%;margin:5px 0;padding:13px 14px;font-size:12px;font-weight:650;display:flex}.nav-item.active{color:#2c5d47;background:#eaf2ed}.nav-dot{background:#4f8065;border-radius:50%;width:5px;height:5px;margin-left:auto}.sidebar-bottom{margin-top:auto}.local-tag{color:#748478;align-items:center;gap:7px;margin:25px 13px 14px;font-size:10px;display:flex}.local-tag span,.top-status span{background:#76a98b;border-radius:50%;width:6px;height:6px}.sidebar-bottom>p{color:#8c9b92;margin:0 13px 30px;font-size:17px;line-height:1.7}.profile{border-top:1px solid #e8ede9;align-items:center;gap:11px;padding:22px 10px 3px;display:flex}.avatar{color:#877352;background:#f0e9df;border-radius:50%;place-items:center;width:35px;height:35px;font-weight:700;display:grid}.profile strong,.profile small{display:block}.profile strong{font-size:12px}.profile small{color:#8b9890;margin-top:4px;font-size:10px}.main-wrap{flex:1;min-width:0;margin-left:236px}.topbar{color:#94a097;background:#fff;border-bottom:1px solid #e4eae6;justify-content:space-between;align-items:center;height:74px;padding:0 42px;font-size:11px;display:flex}.topbar>span{align-items:center;gap:13px;display:flex}.topbar strong{color:#586b60;font-weight:600}.top-status{font-size:10px}main{max-width:1600px;margin:0 auto;padding:38px 42px 0}.eyebrow{letter-spacing:1.9px;color:#84968a;margin-bottom:12px;font-size:9px;font-weight:800}.page-heading{justify-content:space-between;align-items:center;gap:24px;margin-bottom:30px;display:flex}h1{letter-spacing:-1.1px;font-size:30px;font-weight:750}.page-heading p{color:#8a978f;margin-top:9px;font-size:12px;line-height:1.7}.heading-actions{gap:10px;display:flex}.button{white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:11px 15px;font-size:11px;font-weight:700;transition:background .15s,transform .15s;display:inline-flex}.button:hover{transform:translateY(-1px)}.primary{color:#fff;background:#2d5c47;box-shadow:0 3px 7px #244b3a12}.primary:hover{background:#224b38}.secondary{color:#4b6255;background:#fff;border:1px solid #dce5df}.secondary:hover{background:#f3f7f4}.ghost{color:#829086;background:0 0}.danger{color:#fff;background:#a7463e}.stats{grid-template-columns:1.2fr 1fr 1fr;gap:19px;margin-bottom:27px;display:grid}.stat{background:#fff;border:1px solid #e2e8e3;border-radius:12px;padding:21px 23px}.stat-label{color:#819086;justify-content:space-between;align-items:center;font-size:11px;display:flex}.stat-label svg{color:#96a89b}.stat>strong{letter-spacing:-1px;margin:17px 0 12px;font-size:29px;font-weight:750;display:block}.stat strong small{letter-spacing:0;color:#8a9b8f;font-size:13px;font-weight:500}.stat-foot{color:#97a299;font-size:10px}.green-stat{background:#edf3ef;border-color:#e1eae3}.panel{background:#fff;border:1px solid #e1e7e2;border-radius:12px;overflow:hidden}.panel-title{justify-content:space-between;align-items:center;padding:23px 25px;display:flex}.panel h2{letter-spacing:-.25px;font-size:14px;font-weight:750}.panel-title p{color:#98a399;margin-top:7px;font-size:10px}.count-pill{color:#8a9e8d;background:#f0f4f1;border-radius:5px;place-items:center;min-width:23px;height:21px;margin-left:8px;font-size:10px;display:inline-grid}.subtle-icon{color:#8c9e90;background:#f5f8f5;border-radius:7px;padding:9px;display:flex}.filters{background:#fdfefd;border-top:1px solid #f0f3f0;border-bottom:1px solid #e8ede9;align-items:flex-end;gap:12px;padding:19px 25px 23px;display:flex}.filters label{color:#839186;gap:7px;font-size:10px}.filters input,.filters select{min-height:39px;padding:9px 11px;font-size:11px}.filters label:not(.employee-filter){width:165px}.date-dash{color:#9aab9d;align-self:flex-end;padding-bottom:12px;font-size:12px}.employee-filter{width:225px;margin-left:9px}.text-button{color:#66836e;background:0 0;padding:10px 0;font-size:11px;font-weight:650}.month-button{min-height:39px;margin-left:auto}.table-scroll{overflow:auto}table{border-collapse:collapse;white-space:nowrap;text-align:left;width:100%;font-size:11px}th{letter-spacing:.35px;color:#899a8c;background:#fbfcfb;border-bottom:1px solid #e8ede9;padding:15px 18px;font-size:9px;font-weight:650}th:first-child,td:first-child{padding-left:25px}td{color:#66796b;border-bottom:1px solid #edf1ee;padding:17px 18px}.date-cell{font-weight:650}.employee-cell{color:#425e4b;align-items:center;gap:10px;display:flex}.mini-avatar{color:#718765;background:#edf2e9;border-radius:50%;flex-shrink:0;place-items:center;width:30px;height:30px;font-size:11px;font-weight:700;display:grid}.employee-cell small{color:#98a298;font-size:9px;display:block}.worked{color:#3c6549;font-weight:750}.next-day{color:#8a9562;background:#f1f4ea;border-radius:4px;margin-left:5px;padding:3px;font-size:8px;display:inline-block}.row-actions{gap:5px;display:flex}.row-actions button,.icon-button{color:#93a095;background:0 0;border-radius:5px;place-items:center;padding:6px;display:grid}.row-actions button:hover{color:#376147;background:#edf2ee}.muted{color:#94a094}.empty-state{text-align:center;padding:42px 18px 44px}.empty-icon{color:#88a18c;background:#eff4ef;border-radius:15px;place-items:center;width:58px;height:58px;margin-bottom:16px;display:inline-grid}.empty-state h3{letter-spacing:-.3px;font-size:16px}.empty-state p{color:#94a093;margin:10px 0 20px;font-size:11px;line-height:1.8}.empty-state .button{min-height:37px;font-size:10px}.table-footer{color:#95a193;background:#fcfdfc;border-top:1px solid #edf1ed;justify-content:space-between;padding:17px 25px;font-size:10px;display:flex}.table-footer strong{color:#54745b;margin-left:8px;font-weight:700}.team-summary{margin-top:23px}.team-summary .panel-title{padding-bottom:16px}.summary-empty{color:#9aa69c;padding:6px 25px 26px;font-size:11px}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 25px;padding:0 25px 16px;display:grid}.summary-person{border-bottom:1px solid #eff2ef;align-items:center;gap:10px;padding:13px 0;display:flex}.summary-person strong{font-size:11px}.summary-person small{color:#9ba79c;margin-top:4px;font-size:9px;display:block}.summary-person b{white-space:nowrap;margin-left:auto;font-size:12px}.bottom-note{color:#9aa69b;align-items:center;gap:8px;margin:22px 1px 36px;font-size:9px;line-height:1.8;display:flex}footer{color:#9ca99e;letter-spacing:1px;border-top:1px solid #e2e8e2;justify-content:space-between;padding:20px 0;font-size:8px;display:flex}footer span{letter-spacing:0}.notice{color:#43654b;background:#e9f1e9;border:1px solid #d8e5d8;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;padding:12px 16px;font-size:12px;line-height:1.6;display:flex}.notice button{background:0 0;display:flex}.employees-list{padding:0 25px 20px}.employee-row{border-top:1px solid #edf1ed;align-items:center;gap:12px;padding:18px 0;display:flex}.employee-name{overflow-wrap:anywhere;flex:1;min-width:0}.employee-name strong{font-size:13px}.employee-name small{color:#9aa79c;margin-top:5px;font-size:10px;display:block}.storage-banner{color:#56765b;background:#eaf1eb;border:1px solid #dce7dd;border-radius:12px;gap:18px;margin-bottom:23px;padding:24px;display:flex}.storage-banner h2{margin-bottom:8px;font-size:15px}.storage-banner p{max-width:750px;font-size:12px;line-height:1.8}.backup-grid{grid-template-columns:1fr 1fr;gap:22px;margin-bottom:45px;display:grid}.backup-card{padding:28px}.backup-card p{color:#94a195;margin:12px 0 23px;font-size:12px;line-height:1.9}.file-button{cursor:pointer}.file-button input{display:none}.sr-only{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}dialog{color:#2b4435;border:1px solid #e1e7df;border-radius:16px;width:510px;max-width:calc(100vw - 28px);max-height:90vh;padding:0;box-shadow:0 30px 100px #19362326}dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#102b2359}.modal{padding:26px}.modal-head{justify-content:space-between;align-items:flex-start;margin-bottom:24px;display:flex}.modal-head h2{letter-spacing:-.6px;font-size:22px}.modal-head .eyebrow{margin-bottom:7px;font-size:8px}.modal form>label{margin:16px 0}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.checkbox-label{cursor:pointer;flex-direction:row;align-items:center;font-size:12px;font-weight:500}.checkbox-label input{accent-color:#2d5c47;width:17px;height:17px;min-height:17px}.optional{color:#99a59b;font-size:10px;font-weight:500}.modal textarea{resize:vertical}.form-total{background:#eff5ef;border-radius:8px;justify-content:space-between;align-items:center;padding:14px;font-size:12px;display:flex}.form-total span{color:#6e8a73;align-items:center;gap:7px;display:flex}.modal-actions{border-top:1px solid #e7ede7;justify-content:flex-end;gap:10px;margin-top:22px;padding-top:20px;display:flex}.error{color:#ae493e;background:#fff2ee;border-radius:7px;margin-top:12px;padding:11px;font-size:12px;line-height:1.7}.inline-error{margin:12px 25px}.confirm-body{color:#7d8e81;font-size:13px;line-height:1.9}.employee-row .button{font-size:10px}.employee-row .mini-avatar{width:36px;height:36px}@media (width>=1500px){main{padding-top:48px}.empty-state{padding-top:62px;padding-bottom:62px}}@media (width<=1150px){.sidebar{width:205px;padding-left:12px;padding-right:12px}.main-wrap{margin-left:205px}main{padding:30px 25px 0}.topbar{padding:0 25px}.page-heading{flex-wrap:wrap;align-items:flex-start;gap:18px}.filters{flex-wrap:wrap}.month-button{margin-left:0}.stats{gap:12px}.stat{padding:20px 18px}.stat>strong{font-size:25px}.employee-filter{flex:1;min-width:150px}}@media (width<=760px){.app-shell{display:block}.sidebar{border-bottom:1px solid #e1e8e1;border-right:0;width:100%;padding:16px;display:block;position:static}.brand{gap:9px;padding:0 3px;font-size:16px}.brand-mark{border-radius:9px;width:33px;height:34px}.brand-sub{letter-spacing:3.6px;font-size:7px}.workspace-label,.sidebar-bottom{display:none}.sidebar nav{gap:4px;margin-top:15px;display:flex}.nav-item{justify-content:center;gap:7px;margin:0;padding:10px 9px;font-size:10px}.nav-item svg{width:16px}.nav-dot{display:none}.main-wrap{margin:0}.topbar{height:45px;padding:0 20px;font-size:9px}.top-status{font-size:0;gap:0!important}.top-status span{display:block}.topbar>span{gap:7px}main{padding:26px 18px 0}.eyebrow{letter-spacing:1.4px;font-size:7px}h1{font-size:27px}.page-heading{margin-bottom:22px}.page-heading p{font-size:11px}.heading-actions{width:100%}.heading-actions .button{flex:1;padding:11px 10px;font-size:10px}.stats{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}.stat:first-child{grid-column:1/-1}.stat{padding:17px}.stat:first-child>strong{margin-top:12px;font-size:30px}.stat>strong{margin:12px 0 9px;font-size:26px}.stat-label{font-size:10px}.stat-foot{font-size:8px}.stat-label svg{width:15px}.stat strong small{font-size:11px}.panel-title{padding:20px 17px}.panel h2{font-size:13px}.panel-title p{font-size:9px;line-height:1.7}.filters{gap:10px;padding:16px}.filters label:not(.employee-filter){width:calc(50% - 5px)}.date-dash{display:none}.employee-filter{flex:auto;width:100%;margin:0}.month-button{min-height:25px;padding:5px 0;font-size:10px}.empty-state{padding:34px 16px}.empty-state p{max-width:260px;margin-left:auto;margin-right:auto;font-size:10px}.table-footer{gap:10px;padding:15px 16px;font-size:8px}.team-summary{margin-top:18px}.summary-empty{padding-left:17px;padding-right:17px;font-size:10px;line-height:1.8}.summary-grid{grid-template-columns:1fr;padding-left:17px;padding-right:17px}.bottom-note{align-items:flex-start;margin:20px 0 26px;font-size:9px}.bottom-note svg{margin-top:2px}footer{gap:10px;font-size:7px;line-height:1.8}footer span{text-align:right;max-width:145px}.backup-grid{grid-template-columns:1fr;gap:16px}.backup-card{padding:22px}.storage-banner{gap:12px;padding:20px}.storage-banner h2{font-size:13px}.storage-banner p{font-size:11px}.employees-list{padding:0 16px 15px}.employee-row{flex-wrap:wrap;gap:8px}.employee-row .employee-name{min-width:calc(100% - 50px)}.employee-row .button{flex:1}.modal{padding:22px 18px}.modal-actions{flex-wrap:wrap}.modal-actions .button{flex:1;font-size:10px}.notice{font-size:11px}}th{position:relative}.stat-foot,.panel-title p,.empty-state p,.summary-empty,.table-footer,.bottom-note{color:#748578}.file-button{position:relative}.file-button input{opacity:0;border:0;width:1px;height:1px;min-height:0;padding:0;display:block;position:absolute}.file-button:focus-within{outline-offset:3px;outline:3px solid #8ec0a9}.file-button{flex-direction:row}.report-period{margin-bottom:24px}.report-period .panel-title{padding-bottom:16px}.period-controls{grid-template-columns:1fr 1.1fr;gap:18px 25px;padding:0 25px 23px;display:grid}.period-dates,.report-filters{gap:14px;display:flex}.period-dates label,.report-filters label{flex:1;min-width:0}.report-filters{grid-column:1/-1}.quick-periods{flex-wrap:wrap;align-content:flex-end;gap:7px;display:flex}.quick-periods button{background:#f3f7f3;border:1px solid #dfe8df;border-radius:7px;padding:9px 11px;font-size:11px}.quick-periods button[aria-pressed=true]{color:#28563c;background:#e0eee3;border-color:#a6c4b0}.export-strip{background:#edf4ee;border-top:1px solid #dce8dd;justify-content:space-between;align-items:center;gap:20px;padding:20px 25px;display:flex}.export-strip strong{font-size:13px}.export-strip p{color:#627969;margin-top:7px;font-size:11px;line-height:1.8}.export-strip .button{white-space:normal;text-align:left;max-width:280px}.stats{grid-template-columns:repeat(4,minmax(0,1fr))}.stat>strong{font-size:25px}.tips-stat>strong{font-size:22px}.stat-foot{line-height:1.7;display:block}.person-totals{text-align:right;flex-direction:column;gap:6px;margin-left:auto;display:flex}.person-totals strong{color:#356448}.person-totals small{color:#6c7e6e;line-height:1.6}.employment-badge{color:#506f58;overflow-wrap:anywhere;background:#eaf1eb;border-radius:5px;max-width:100%;margin-top:7px;padding:4px 7px;font-size:10px;display:table}.field-help{color:#718475;font-size:10px;font-weight:500;line-height:1.7}.tips-cell{white-space:nowrap}.summary-person>div:not(.person-totals){overflow-wrap:anywhere;min-width:0}@media (width<=1200px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.period-controls{grid-template-columns:1fr}.quick-periods{grid-row:2}.export-strip{flex-wrap:wrap}}@media (width<=760px){.period-controls{gap:16px;padding:0 17px 20px}.period-dates{grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;display:grid}.period-dates label{min-width:0}.report-filters{flex-direction:column}.quick-periods{grid-template-columns:1fr 1fr;display:grid}.quick-periods button{min-height:39px}.export-strip{gap:15px;padding:18px 17px}.export-strip .button{text-align:center;width:100%;max-width:none}.stats .stat:first-child{grid-column:auto}.stats .stat:first-child>strong{font-size:25px}.stat{min-width:0}.stat>strong,.tips-stat>strong{overflow-wrap:anywhere;font-size:22px}.stat-label{gap:5px;line-height:1.7}.stat-foot{font-size:10px}.summary-person{align-items:flex-start}.person-totals{max-width:45%}.person-totals strong{font-size:12px}.person-totals b{font-size:11px}.sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;display:grid}.nav-item{justify-content:flex-start;padding:11px;font-size:11px}.modal-actions .button{white-space:normal}}.plan-actual-comparison{border:1px solid #dce6df;border-radius:8px;margin:16px 0;overflow:hidden}.plan-actual-comparison h3{background:#f0f5f0;padding:13px;font-size:12px;line-height:1.6}.comparison-scroll{overflow:auto}.plan-actual-comparison table{white-space:normal;min-width:330px;font-size:10px}.plan-actual-comparison th{letter-spacing:0;min-width:75px;padding:9px 10px;font-size:10px}.plan-actual-comparison td{overflow-wrap:anywhere;min-width:100px;padding:9px 10px;line-height:1.6}.plan-actual-comparison td:first-child,.plan-actual-comparison th:first-child{padding-left:10px}.difference-label{color:#8a622c;font-size:9px;display:block}.actual-link-choice{background:#f3f7f3;border:1px solid #dce7dd;border-radius:8px;margin:16px 0;padding:13px}.actual-link-choice .field-help{margin-top:9px}.delete-actual-button{color:#a15f4e;text-align:center;width:100%;margin-top:12px}@media (width<=760px){.sidebar nav{gap:6px}.nav-item{min-width:0;min-height:44px;font-size:13px;line-height:1.4}.brand-sub{font-size:9px}.topbar{font-size:12px}.eyebrow{font-size:10px}.page-heading p,.stat-label,.stat-foot,.panel-title p,.empty-state p,.summary-empty,.field-help,.bottom-note,.table-footer{font-size:12px;line-height:1.7}.heading-actions .button,.modal-actions .button,.empty-state .button,.quick-periods button{min-height:44px;font-size:13px}.filters label{min-width:0;font-size:12px}.filters input,.filters select{font-size:16px}.month-button{min-height:44px;font-size:13px}.table-footer{flex-wrap:wrap}footer{letter-spacing:.4px;flex-wrap:wrap;font-size:11px}footer span{text-align:left;max-width:none}}@media (width<=400px){.period-dates{grid-template-columns:minmax(0,1fr)}.filters label:not(.employee-filter){width:100%}}.schedule-intro{justify-content:space-between;align-items:center;gap:20px;margin:-8px 0 22px;display:flex}.schedule-intro p{color:#718475;max-width:650px;font-size:12px;line-height:1.8}.calendar-toolbar{justify-content:space-between;align-items:center;gap:15px;padding:22px;display:flex}.calendar-toolbar h2{text-transform:capitalize;text-align:center}.calendar-navigation{align-items:center;gap:6px;display:flex}.calendar-views{background:#f7f9f7;border:1px solid #dde7dd;border-radius:9px;padding:4px;display:flex}.calendar-views button{background:0 0;border-radius:6px;padding:9px 14px;font-size:11px}.calendar-views button[aria-pressed=true]{color:#fff;background:#2d5c47}.schedule-filters{gap:16px;padding:0 22px 22px;display:flex}.schedule-filters label{flex:1}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-weekdays{color:#708773;text-align:center;background:#eff4ef;padding:12px;font-size:11px}.calendar-day{border-top:1px solid #e6ece6;border-right:1px solid #e6ece6;min-width:0;min-height:150px;padding:8px}.calendar-day:nth-child(7n){border-right:0}.calendar-week .calendar-day{min-height:240px}.calendar-day-heading{color:#718773;background:0 0;justify-content:space-between;align-items:center;width:100%;padding:6px 4px 11px;font-size:12px;display:flex}.calendar-day-heading:not(:disabled):hover{color:#244e36}.is-today .calendar-day-heading time{color:#fff;background:#2d5c47;border-radius:6px;padding:3px 7px}.outside-period{opacity:.55;background:#f8faf8}.calendar-event{text-align:left;overflow-wrap:anywhere;background:#edf4ed;border:1px solid #dae6da;border-left:3px solid #6b9971;border-radius:6px;flex-direction:column;gap:5px;width:100%;margin-bottom:7px;padding:9px 7px;font-size:10px;line-height:1.5;display:flex}.calendar-event strong{font-size:11px}.calendar-event:hover{background:#e2eee2}.calendar-event small{font-size:9px;line-height:1.5}.calendar-event.cancelled{color:#8a7364;background:#f6f1ee;border-color:#e5d8cf #e5d8cf #e5d8cf #b38c76}.calendar-event.cancelled strong{text-decoration:line-through}.calendar-event.continuation{border-style:dashed}.mobile-day,.calendar-no-shifts{display:none}.schedule-explanation{color:#6f8473;background:#fafcfa;border-top:1px solid #e4ebe4;padding:16px 22px;font-size:10px;line-height:1.8}.schedule-totals{grid-template-columns:1fr 1fr;gap:20px;margin-top:24px;display:grid}.schedule-export{background:#edf3ee;border:1px solid #dee9e0;border-radius:10px;justify-content:space-between;align-items:center;gap:20px;margin:24px 0 30px;padding:22px;display:flex}.schedule-export strong{font-size:13px}.schedule-export p{color:#617765;margin-top:8px;font-size:11px;line-height:1.8}.schedule-export small{color:#728576;margin-top:5px;font-size:10px;line-height:1.8;display:block}.plan-state{color:#607b66;background:#f0f5ef;border-radius:8px;padding:12px;font-size:11px;line-height:1.8}.plan-tools{border-top:1px solid #e3eae3;flex-direction:column;gap:9px;margin-top:20px;padding-top:18px;display:flex}.plan-tools .button{white-space:normal}.schedule-page .button:disabled{opacity:.5;cursor:not-allowed;transform:none}.schedule-page>.notice{line-height:1.8}.calendar-event:focus-visible{outline:3px solid #427454}@media (width<=1100px){.calendar-toolbar{flex-wrap:wrap}.calendar-toolbar h2{order:3;width:100%}.calendar-day{padding:5px}.calendar-event{padding:7px 5px}.schedule-export{flex-wrap:wrap}}@media (width<=760px){.schedule-intro{flex-direction:column;align-items:stretch}.schedule-intro p{font-size:11px}.calendar-toolbar{gap:12px;padding:17px}.calendar-navigation{gap:3px}.calendar-navigation .button{padding:9px;font-size:10px}.calendar-views button{padding:9px 10px}.schedule-filters{flex-direction:column;padding:0 17px 20px}.calendar-weekdays{display:none}.calendar-grid{display:block}.calendar-day,.calendar-week .calendar-day{border-right:0;min-height:0;padding:12px 17px}.calendar-day.outside-period{display:none}.calendar-day-heading{padding:5px 0 12px;font-size:12px}.desktop-day{display:none}.mobile-day{display:inline}.calendar-no-shifts{color:#93a195;padding-bottom:3px;font-size:10px;display:block}.calendar-event{gap:4px;margin-bottom:9px;padding:12px;font-size:12px}.calendar-event strong{font-size:13px}.calendar-event small{font-size:10px}.schedule-totals{gap:10px}.schedule-totals .stat>strong{font-size:23px}.schedule-export{padding:18px}.schedule-export .button{width:100%}.schedule-explanation{padding:14px 17px;font-size:10px}.schedule-page .summary-person{flex-wrap:wrap}.schedule-page .summary-person b{margin-left:auto}.schedule-page .modal-actions{z-index:2;background:#fff;padding-bottom:12px;position:sticky;bottom:-22px}}.calendar-toolbar h2{text-transform:none}.calendar-toolbar h2:first-letter{text-transform:uppercase}.plan-primary-actions{flex-direction:column;gap:8px;margin:15px 0;display:flex}.plan-primary-actions .button{white-space:normal}.coverage-overview{background:#fff;border:1px solid #dce5de;border-radius:10px;margin:0 0 20px;padding:18px 22px}.coverage-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.coverage-summary{color:#385c43;text-align:left;text-underline-offset:5px;background:0 0;padding:0;font-size:16px;font-weight:750;line-height:1.6;-webkit-text-decoration:underline #c0d1c3;text-decoration:underline #c0d1c3}.coverage-heading p{color:#6c806f;margin-top:7px;font-size:11px;line-height:1.8}.coverage-heading .filter-coverage-note{color:#506a57;max-width:650px;font-size:11px}.coverage-issues{border-top:1px solid #e2eae2;margin-top:18px;padding-top:5px}.coverage-issues h3{margin:18px 0 8px;font-size:12px}.coverage-issues>p{color:#77887a;font-size:11px}.coverage-issue{border-bottom:1px solid #edf1ed;justify-content:space-between;align-items:center;gap:14px;padding:10px 0;font-size:12px;line-height:1.8;display:flex}.coverage-issue>button:first-child{text-align:left;color:#6a543d;text-underline-offset:3px;background:0 0;padding:0;-webkit-text-decoration:underline #d8c6ad;text-decoration:underline #d8c6ad}.unconfigured-days{flex-wrap:wrap;gap:4px 20px;display:flex}.calendar-date-picker{gap:4px;max-width:160px;font-size:10px}.calendar-date-picker input{min-height:36px;padding:7px 9px;font-size:11px}.calendar-toolbar{flex-wrap:wrap}.calendar-toolbar h2{flex:1;font-size:13px}.team-week-desktop{border-top:1px solid #e2e9e2;grid-template-columns:120px repeat(7,minmax(0,1fr));display:grid}.team-row{display:contents}.team-corner,.team-role-label{overflow-wrap:anywhere;background:#f6f9f6;border-bottom:1px solid #e2e9e2;padding:14px 10px;font-size:12px}.team-corner{color:#809384;font-size:10px}.team-role-label strong{margin:5px 0 10px;font-weight:750;display:block}.team-day-head{background:#f6f9f6;border-bottom:1px solid #e2e9e2;border-left:1px solid #e2e9e2;flex-direction:column;gap:7px;min-height:105px;padding:10px 7px;display:flex}.team-day-head>button:first-child{color:#5c7462;background:0 0;flex-direction:column;align-items:center;gap:5px;width:100%;padding:0;font-size:11px;line-height:1.5;display:flex}.team-day-head strong{font-size:13px}.team-day-head.today{box-shadow:inset 0 3px #386c4c}.team-day-head.today small{font-size:9px}.team-day-head.selected{background:#e3eee5}.team-day-head.selected strong{color:#215e39}.day-setup{color:#7a857a;text-align:center;text-underline-offset:3px;background:0 0;padding:0;font-size:9px;line-height:1.5;text-decoration:underline}.day-warning{color:#8b6134;text-align:center;font-size:9px;line-height:1.6}.team-slot{border-bottom:1px solid #e5ebe5;border-left:1px solid #e5ebe5;flex-direction:column;gap:7px;min-width:0;min-height:118px;padding:9px 7px;scroll-margin:100px;display:flex}.team-slot .calendar-event{background:#f1f6f0;border-left-width:2px;gap:4px;margin:0;padding:9px 7px}.team-slot .calendar-event strong{font-size:12px}.team-slot .calendar-event span{font-size:11px}.team-slot .calendar-event small{font-size:9px}.team-slot .calendar-event.cancelled{background:#f6f1ee}.team-slot.selected-slot{outline-offset:-2px;background:#f8fbf8;outline:2px solid #a6bfae}.team-slot.has-shortage{background:#fffcf6}.slot-add{color:#688470;text-align:left;background:0 0;align-items:center;gap:4px;margin-top:auto;padding:5px 0;font-size:10px;display:inline-flex}.slot-add:hover{color:#285c3b;text-decoration:underline}.slot-empty{color:#9aa89c;padding:4px 0;font-size:10px}.gap-inline{color:#865a2f;text-align:left;overflow-wrap:anywhere;background:#fcf3e4;border:1px solid #f0dfc4;border-radius:5px;align-items:flex-start;gap:5px;padding:8px 6px;font-size:10px;line-height:1.7;display:flex}.gap-inline svg{margin-top:3px}.conflict-event{border-color:#c78373!important}.team-week-mobile{display:none}.is-selected .calendar-day-heading{background:#edf4ed;border-radius:5px;outline:1px solid #b4cbbb}.staffing-dialog{width:720px}.settings-scope{background:#f0f4f0;border-radius:8px;gap:7px;margin-bottom:18px;padding:4px;display:flex}.settings-scope button{background:0 0;border-radius:5px;flex:1;padding:10px;font-size:12px}.settings-scope button[aria-pressed=true]{color:#fff;background:#2d5c47}.settings-note{color:#748577;margin:14px 0;font-size:11px;line-height:1.9}.requirement-row{border:1px solid #dde7df;border-radius:9px;margin:18px 0;padding:16px}.requirement-row legend{color:#7b8d7e;padding:0 6px;font-size:11px;font-weight:700}.requirement-times{grid-template-columns:1fr 1fr 1.2fr;gap:12px;margin:14px 0;display:grid}.requirement-bottom{justify-content:space-between;align-items:center;gap:10px;display:flex}.staffing-dialog .modal-actions{z-index:2;background:#fff;padding-bottom:12px;position:sticky;bottom:-26px}.schedule-filters{gap:14px}.team-slot button:focus-visible{outline-offset:2px;outline:2px solid #427454}@media (width<=1200px) and (width>=761px){.team-week-desktop{grid-template-columns:95px repeat(7,minmax(0,1fr))}.team-slot{padding:7px 4px}.team-slot .calendar-event strong{font-size:11px}.team-slot .calendar-event span{font-size:10px}.team-role-label{padding:12px 8px;font-size:11px}.gap-inline{gap:3px;padding:6px 4px;font-size:9px}.gap-inline svg{display:none}}@media (width<=760px){.coverage-overview{padding:17px}.coverage-heading{flex-direction:column;gap:14px}.coverage-summary{font-size:15px}.coverage-heading .button{width:100%}.coverage-issue{flex-wrap:wrap;gap:4px}.calendar-date-picker{order:3;width:100%;max-width:none;margin-top:3px}.calendar-toolbar h2{order:4;font-size:13px}.team-week-desktop{display:none}.team-week-mobile{display:block}.mobile-team-day{border-top:1px solid #dde6de;scroll-margin:20px}.team-day-head{border-left:0;flex-flow:wrap;justify-content:space-between;align-items:center;min-height:0;padding:13px 17px;display:flex}.team-day-head>button:first-child{flex-direction:row;gap:9px;width:auto;font-size:12px}.team-day-head strong{font-size:14px}.day-setup{text-align:left;font-size:10px}.day-warning{font-size:10px}.team-slot{border-left:0;gap:9px;min-height:0;margin:0 17px;padding:14px 0;scroll-margin:20px}.team-slot h3{color:#617b67;margin:0 0 3px;font-size:12px}.team-slot .calendar-event{padding:12px}.team-slot .calendar-event strong{font-size:14px}.team-slot .calendar-event span{font-size:12px}.team-slot .calendar-event small{font-size:10px}.gap-inline{padding:10px;font-size:11px}.slot-add{min-height:32px;font-size:11px}.team-slot.selected-slot{border-left:3px solid #7ca187;outline:none;padding-left:10px}.team-slot.has-shortage{padding-left:10px;padding-right:10px}.requirement-row{padding:12px}.requirement-times{grid-template-columns:1fr 1fr;gap:12px}.requirement-times>label:last-child{grid-column:1/-1}.requirement-bottom .checkbox-label{font-size:11px;line-height:1.7}.staffing-dialog .modal-actions{bottom:-22px}.settings-scope button{padding:10px 6px;font-size:11px}.staffing-dialog .modal-head h2{font-size:20px}}.calendar-event.event-unplanned{background:#eef2f8;border-color:#d6deea #d6deea #d6deea #7f96b5}.calendar-event.event-linked{border-left-color:#39744f}.entry-state{font-weight:750}.plan-actual-comparison+.plan-primary-actions{margin-top:15px}@media (width<=760px){.schedule-intro p,.coverage-heading p,.coverage-heading .filter-coverage-note,.schedule-explanation,.schedule-export p,.schedule-export small,.settings-note,.day-setup,.day-warning{font-size:12px}.calendar-navigation .button,.calendar-views button{min-height:44px;font-size:12px}.calendar-date-picker{font-size:12px}.calendar-date-picker input{min-height:44px;font-size:16px}.calendar-toolbar h2{flex-basis:100%;font-size:14px;line-height:1.6}.team-day-head>button:first-child,.day-setup{min-height:44px}.team-slot h3{font-size:13px}.slot-add{min-height:44px;font-size:12px}.team-slot.is-empty{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0 12px;padding-block:8px;display:grid}.team-slot.is-empty h3{grid-column:1;margin:0}.team-slot.is-empty .slot-empty{color:#748578;grid-column:1;padding:0;font-size:11px;line-height:1.5}.team-slot.is-empty .slot-add{grid-area:1/2/3;margin:0}}.absence-management{min-width:0;margin:12px 0}.absence-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.absence-toolbar .text-button{align-items:center;gap:6px;display:inline-flex}.absence-list{gap:8px;margin-top:12px;display:grid}.absence-card{overflow-wrap:anywhere;background:#fcfaf4;border:1px solid #e6daca;border-radius:12px;flex-direction:column;gap:6px;min-width:0;padding:12px;display:flex}.absence-card p{margin:0}.absence-conflict{color:#704719;background:#fff5e2;border-left:3px solid #ae7231;flex-direction:column;gap:6px;padding:8px;font-size:13px;display:flex}.absence-notice{font-size:13px}.calendar-absence{text-align:left;color:#65523c;overflow-wrap:anywhere;background:#faf5eb;border:1px dashed #ad9071;border-radius:7px;width:100%;margin:4px 0;padding:6px;font-size:11px;line-height:1.5;display:block}.calendar-absence strong{display:block}.employee-row .absence-management{flex-basis:100%;width:100%;margin:0}.employee-row:has(.absence-management){flex-wrap:wrap}.availability-exception{background:#fff9ed;border:1px solid #d8be91;border-radius:10px;margin:10px 0;padding:12px}.availability-exception p{margin:0 0 8px}@media (width<=760px){.absence-toolbar .button{white-space:normal;flex:1}.calendar-absence{font-size:13px}.absence-management input,.absence-management select,.absence-management textarea{min-width:0;max-width:100%;font-size:16px}}.schedule-fill{min-width:0;position:relative}.fill-menu summary{cursor:pointer;background:#fff;border:1px solid #dce6dc;border-radius:7px;align-items:center;gap:8px;padding:10px 12px;font-size:12px;list-style:none;display:flex}.fill-menu summary::-webkit-details-marker{display:none}.fill-menu summary:focus-visible{outline-offset:3px;outline:2px solid #2d5c47}.fill-menu-options{z-index:12;background:#fff;border:1px solid #dce6dc;border-radius:10px;width:265px;max-width:calc(100vw - 32px);padding:6px;display:grid;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 30px #19362320}.fill-menu-options button{text-align:left;box-shadow:none;border:0;padding:11px}.fill-dialog{width:850px}.fill-dialog .modal>p,.fill-dialog form>p{font-size:13px;line-height:1.6}.fill-dialog h3{margin:20px 0 12px;font-size:16px}.fill-dialog h4{margin:0 0 10px;font-size:13px}.fill-summary{background:#eff5ef;border-radius:8px;margin:16px 0;padding:13px;font-size:13px}.fill-cards{gap:14px;margin-top:16px;display:grid}.fill-card{background:#fbfcfa;border:1px solid #dce6dc;border-radius:10px;min-width:0;padding:16px}.fill-card:not(.fill-card-ready){border-color:#d9bd95}.fill-card-head{flex-wrap:wrap;justify-content:space-between;gap:8px;margin-bottom:13px;display:flex}.fill-card-head>span{color:#72582c;font-size:11px}.fill-card-ready .fill-card-head>span{color:#2d5c47}.fill-fields,.fill-source-fields{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;min-width:0;margin:0;padding:0;display:grid}.fill-fields label,.fill-source-fields label{min-width:0;margin:0}.fill-fields input,.fill-fields select,.fill-fields textarea,.fill-source-fields input,.fill-source-fields select{box-sizing:border-box;width:100%;min-width:0}.fill-fields .checkbox-label input{flex:0 0 17px;width:17px}.fill-issues{color:#924a36;margin:0 0 14px;padding-left:20px;font-size:12px;line-height:1.7}.fill-coverage{border-top:1px solid #dce6dc;margin-top:22px}.fill-coverage-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.fill-coverage-columns p,.fill-coverage-columns li{font-size:12px;line-height:1.7}.fill-coverage-columns ul{padding-left:18px}.fill-template,.fill-operation{border-bottom:1px solid #dce6dc;gap:10px;min-width:0;padding:15px 0;display:grid}.fill-template>span,.fill-operation>span,.fill-operation>small{overflow-wrap:anywhere;font-size:12px;line-height:1.5}.fill-inline-actions{flex-wrap:wrap;gap:8px;display:flex}.fill-notice{background:#eff5ef;border-radius:8px;padding:12px}.fill-dialog .modal-actions{flex-wrap:wrap}@media (width<=600px){.fill-dialog .modal{padding:18px}.fill-fields,.fill-source-fields,.fill-coverage-columns{grid-template-columns:minmax(0,1fr)}.fill-card{padding:13px}.fill-dialog .modal-head h2{font-size:20px}.fill-dialog .modal-actions{flex-direction:column}.fill-dialog .modal-actions button{width:100%}.fill-menu-options{left:0;right:auto}.fill-fields input,.fill-fields select,.fill-fields textarea,.fill-source-fields input,.fill-source-fields select{font-size:16px}}.fill-dialog select{appearance:none;background:#fff;min-height:44px;padding-right:28px}.fill-dialog .modal-actions{background:#fff;padding-top:12px;padding-bottom:12px}@media (width<=760px){.fill-dialog{max-height:calc(100dvh - 28px)}.fill-dialog .modal-actions{position:static}.fill-dialog .button{white-space:normal;min-height:44px;font-size:13px}}.pending-hours,.future-hours-warning{margin:0 0 20px;padding:18px 22px}.pending-hours summary,.future-hours-warning summary{cursor:pointer;font-size:14px;font-weight:750;line-height:1.6}.pending-hours p,.future-hours-warning p{color:#687d70;margin-top:12px;font-size:12px;line-height:1.7}.pending-list{gap:10px;margin-top:14px;display:grid}.pending-list article{border-top:1px solid #e4eae5;justify-content:space-between;align-items:center;gap:15px;min-width:0;padding:12px 0;display:flex}.pending-list article>div{gap:6px;min-width:0;display:grid}.pending-list span{overflow-wrap:anywhere;font-size:12px;line-height:1.5}.future-hours-warning{background:#fffaf0;border-color:#d8bb87}.planned-hours-hint{background:#f3f8f4;border:1px solid #ccded2;border-radius:10px;gap:10px;margin:4px 0 18px;padding:14px;font-size:12px;line-height:1.7;display:grid}.planned-hours-hint p{margin:0}.planned-hours-hint .button{white-space:normal}@media (width<=760px){.pending-hours,.future-hours-warning{padding:16px}.pending-list article{flex-direction:column;align-items:stretch;gap:12px}.pending-list .button{white-space:normal;min-height:44px;font-size:13px}}.actual-hours-form select{appearance:none;background-image:linear-gradient(45deg,#0000 50%,#748578 50%),linear-gradient(135deg,#748578 50%,#0000 50%);background-position:calc(100% - 18px),calc(100% - 13px);background-repeat:no-repeat;background-size:5px 5px;min-height:44px;padding-right:34px}.login-screen{background:var(--bg,#f6f7f4);place-items:center;min-height:100dvh;padding:24px;display:grid}.login-card{width:min(100%,480px);padding:36px}.login-card h1{margin:16px 0;font-size:28px;line-height:1.25}.login-card p{color:#647168;line-height:1.6}.login-card form{gap:18px;margin:24px 0;display:grid}.login-card .button{justify-content:center}.server-message{background:#fff4d7;border:1px solid #ead79b;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;margin:0 0 18px;padding:14px 18px;line-height:1.5;display:flex}.server-message p{margin:0}.session-actions{flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0 20px;line-height:1.6;display:flex}.authorship{background:#f3f6f2;border-radius:10px;margin-bottom:16px;padding:12px 16px;font-size:13px}.authorship p{margin:4px 0;line-height:1.5}.admin-panel{margin-bottom:22px;padding:24px}.admin-panel>p{color:#66716a;line-height:1.6}.request-card,.audit-event{overflow-wrap:anywhere;border-bottom:1px solid #e1e7de;padding:20px 0}.request-card p,.audit-event p{font-size:13px;line-height:1.5}.request-status{background:#e9efeb;border-radius:20px;margin:8px;padding:5px 9px;font-size:12px;display:inline-block}.status-pending{background:#fff0c5}.status-rejected{background:#fbe5e2}.status-approved{background:#def0df}.review-form{gap:15px;max-width:600px;display:grid}.audit-event time{color:#6b776f;margin-top:7px;font-size:12px;display:block}.audit-filters{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.audit-filters label{flex:1;min-width:140px}.audit-changes{margin:12px 0}.audit-changes>div{grid-template-columns:160px 1fr;gap:14px;padding:6px 0;font-size:13px;display:grid}.audit-changes dt{color:#6b776f}.audit-changes dd{white-space:pre-wrap;overflow-wrap:anywhere;max-height:240px;margin:0;overflow:auto}.access-user{border-bottom:1px solid #e1e7de;justify-content:space-between;align-items:center;gap:20px;padding:18px 0;display:flex}.access-user p{margin:8px 0;font-size:13px}.admin-panel form{gap:18px;max-width:600px;margin-top:24px;display:grid}.legacy-transfer{margin-bottom:24px}.legacy-transfer .heading-actions{margin-top:16px}.role-readonly{background:#f1f5ed;border-radius:8px;padding:12px;line-height:1.5}fieldset.edit-fields{border:0;gap:18px;min-width:0;margin:0;padding:0;display:grid}fieldset:disabled{opacity:.65}.busy-overlay{color:#fff;z-index:1000;background:#183e2e;border-radius:10px;padding:12px 20px;position:fixed;bottom:20px;right:20px}@media (width<=760px){.login-card{padding:24px}.admin-panel{padding:18px}.audit-changes>div{grid-template-columns:1fr;gap:4px}.server-message,.access-user{flex-direction:column;align-items:flex-start}.audit-filters label{min-width:120px}.session-actions{grid-template-columns:minmax(0,1fr) auto;gap:4px 16px;font-size:13px;display:grid}.session-user{overflow-wrap:anywhere;grid-column:1/-1}.session-actions .text-button{text-align:left;justify-self:start;min-height:44px;font-size:13px}.session-actions .mobile-signout{grid-area:2/2;justify-self:end;padding-inline:8px}.session-sync-note{grid-area:3/1/auto/-1;font-size:12px}.request-card .heading-actions{flex-direction:column}.authorship{font-size:12px}}.issued-link{background:#f0f7ef;border:1px solid #d2dfd2;border-radius:12px;gap:12px;margin:24px 0;padding:20px;display:grid}.issued-link h3,.issued-link p{margin:0}.issued-link input{min-width:0;font-size:12px}.access-link-row{overflow-wrap:anywhere;border-bottom:1px solid #e1e7de;padding:20px 0}.access-link-row p{font-size:13px;line-height:1.6}.reset-users small{color:#647168;margin-top:5px;display:block}.reset-users .button{flex-shrink:0}
