.stats{grid-template-columns:repeat(4,1fr)}
.summary-widget{color:var(--ink);overflow:hidden;position:relative;text-decoration:none}
.summary-widget:hover{border-color:var(--green);box-shadow:var(--shadow);transform:translateY(-2px)}
.summary-widget strong{color:var(--green)}
.summary-filters{align-items:end;display:flex;gap:12px;margin-bottom:20px}
.summary-filters>label{min-width:170px}
.employee-filter{position:relative;width:300px}
.filter-label{display:block;font-size:11px;font-weight:700;margin-bottom:7px}
.employee-filter-button{align-items:center;background:#fbfcfa;border:1px solid #d9e0dc;border-radius:9px;color:var(--ink);cursor:pointer;display:flex;justify-content:space-between;padding:12px;text-align:left;width:100%}
.employee-filter-menu{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);left:0;padding:12px;position:absolute;top:66px;width:360px;z-index:10}
.employee-filter-tools{display:flex;justify-content:space-between;margin-bottom:8px}
.employee-filter-tools button{background:none;border:0;color:var(--green);cursor:pointer;font-size:10px;font-weight:700;padding:4px}
.employee-filter-menu>input{margin-bottom:8px;width:100%}
.employee-options{display:grid;max-height:260px;overflow:auto}
.employee-options label{align-items:center;border-radius:8px;cursor:pointer;display:flex;gap:9px;padding:8px}
.employee-options label:hover{background:#f4f7f4}
.employee-options input{accent-color:var(--green);margin:0}
.employee-options b,.employee-options small{display:block}
.employee-options b{font-size:11px}.employee-options small{color:var(--muted);font-size:9px;margin-top:2px}
.summary-legend{background:#f5f7f3;border-radius:10px;display:flex;flex-wrap:wrap;font-size:11px;gap:22px;margin-bottom:18px;padding:13px 16px}
.summary-legend span{align-items:center;display:flex;gap:7px}
.legend-dot{border-radius:3px;height:12px;width:12px}
.legend-dot.vacation{background:#9fd5c5}
.legend-dot.sick_leave{background:#f3b4ad}
.legend-dot.day_off{background:#e4cf72}
.legend-dot.pending-mark{background:transparent;border:2px dashed #a98022}
.calendar-wrap{border:1px solid var(--line);border-radius:12px;max-height:65vh;overflow:auto}
.calendar-table{border-collapse:separate;border-spacing:0;min-width:max-content}
.calendar-table th,.calendar-table td{border-bottom:1px solid #e6ebe8;border-right:1px solid #e6ebe8}
.calendar-table thead th{background:#f3f6f2;padding:8px 4px;position:sticky;text-align:center;z-index:2}
.calendar-table .month-row th{top:0}.calendar-table .day-row th{top:35px}
.month-column{border-right:2px solid #bfcac4!important;font-size:10px;height:35px;letter-spacing:.5px;text-transform:uppercase}
.calendar-table .employee-column{background:#fff;left:0;max-width:210px;min-width:210px;padding:10px 14px;position:sticky;text-align:left;width:210px;z-index:1}
.calendar-table thead .employee-column{background:#edf2ee;top:0;z-index:4}
.calendar-table .employee-column strong,.calendar-table .employee-column small{display:block}
.calendar-table .employee-column small{color:var(--muted);font-size:9px;font-weight:400;margin-top:3px}
.date-column,.calendar-cell{min-width:38px;width:38px}
.date-column strong,.date-column small{display:block}
.date-column small{color:var(--muted);font-size:8px;margin-top:2px}
.calendar-cell{font-size:9px;height:40px;padding:0!important;text-align:center}
.calendar-cell b{display:grid;font-size:9px;height:100%;place-items:center}
.calendar-cell.vacation{background:#cce9e0;color:#175849}
.calendar-cell.sick_leave{background:#f7d3cf;color:#983f38}
.calendar-cell.day_off{background:#f4e8aa;color:#725a04}
.calendar-cell.pending{background-image:repeating-linear-gradient(135deg,transparent 0,transparent 5px,rgba(112,83,12,.16) 5px,rgba(112,83,12,.16) 8px);outline:1px dashed #99721a;outline-offset:-2px}
.calendar-table .weekend{background-color:#f6f2ec}
.calendar-cell.weekend.vacation{background-color:#cce9e0}
.calendar-cell.weekend.sick_leave{background-color:#f7d3cf}
.calendar-cell.weekend.day_off{background-color:#f4e8aa}
@media(max-width:1000px){.stats{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.stats{grid-template-columns:1fr}.summary-filters{display:grid}.summary-filters>label,.employee-filter{min-width:0;width:100%}.employee-filter-menu{max-width:calc(100vw - 72px);width:360px}.summary-panel{padding:16px}.calendar-table .employee-column{max-width:160px;min-width:160px;width:160px}}
.report-filters{align-items:end;display:flex;gap:12px;margin-bottom:18px}.report-filters label{min-width:190px}.report-legend{align-items:center;background:#f5f7f3;border-radius:10px;display:flex;flex-wrap:wrap;font-size:11px;gap:18px;margin-bottom:18px;padding:12px 15px}.report-legend span{align-items:center;display:flex;gap:7px}.report-legend small{color:var(--muted);margin-left:auto}.employee-report-wrap{border:1px solid var(--line);border-radius:12px;overflow:auto}.employee-report-table{border-collapse:separate;border-spacing:0;min-width:1450px}.employee-report-table th,.employee-report-table td{border-bottom:1px solid #e5ebe7;border-right:1px solid #e5ebe7}.employee-report-table thead th{background:#eef3ef;font-size:9px;padding:10px 7px;position:sticky;text-align:center;top:0;z-index:2}.employee-report-table .report-name-column{background:#fff;left:0;min-width:220px;padding:11px 14px;position:sticky;text-align:left;width:220px;z-index:1}.employee-report-table thead .report-name-column{background:#e8efea;z-index:3}.report-name-column strong,.report-name-column small{display:block}.report-name-column small{color:var(--muted);font-size:9px;font-weight:400;margin-top:3px}.report-month-cell{height:62px;min-width:62px;padding:5px!important;text-align:center}.month-value{border-radius:4px;display:block;font-size:9px;font-weight:700;margin:2px 0;padding:3px}.month-value.vacation{background:#cce9e0;color:#175849}.month-value.day_off{background:#f4e8aa;color:#725a04}.month-value.sick_leave{background:#f7d3cf;color:#983f38}.zero{color:#bdc6c2}.report-total{font-size:13px;min-width:78px;text-align:center}.vacation-total{background:#eff8f5!important}.dayoff-total{background:#fcf7df!important}.sick-total{background:#fdf0ee!important}.balance-total{background:#e6f0a8!important;color:#29463e}@media(max-width:800px){.report-filters{display:grid}.report-filters label{min-width:0}.employee-summary-panel{padding:16px}.employee-report-table .report-name-column{min-width:165px;width:165px}}
.person-footer{align-items:center;display:flex;justify-content:space-between;margin-top:14px}.person-footer>small{color:var(--muted)}.delete-employee{background:transparent;border:0;color:var(--red);cursor:pointer;font-size:10px;font-weight:700;padding:5px}.delete-employee:hover{text-decoration:underline}.inactive-person{filter:saturate(.45);opacity:.68}.inactive-person .person-metrics{display:none}
.head-actions{display:flex;gap:10px}@media(max-width:700px){.head-actions{align-items:flex-end;display:grid}.head-actions .btn{font-size:11px!important}}
.pending-widget{color:var(--ink);overflow:hidden;text-decoration:none}.pending-widget:hover{border-color:var(--green);box-shadow:var(--shadow);transform:translateY(-2px)}.pending-widget.accent{color:#fff}.pending-widget.accent:hover{border-color:var(--green)}
.month-value.document_vacation{background:#dce4f8;color:#3b578f}.legend-dot.document_vacation{background:#9fb3e2}.document-total{background:#eef2fc!important}.actual-total{background:#f0ecfa!important}.difference-total{background:#f3f4f3!important}.difference-total.negative{color:#a13d3d}.difference-total.positive{color:#26705d}.extended-report{min-width:1720px}
.calendar-cell.document_vacation{background:#dce4f8;color:#3b578f}
.calendar-cell.multi-status{background:#fff;overflow:hidden;vertical-align:middle}.calendar-segments{align-items:stretch;display:flex;flex-direction:column;height:40px;width:100%}.calendar-cell.multi-status.weekend{background:#f6f2ec}.calendar-segment{align-items:center;display:flex;flex:1;font-size:8px;font-weight:800;justify-content:center;line-height:1;min-height:0}.calendar-segment.vacation{background:#cce9e0;color:#175849}.calendar-segment.sick_leave{background:#f7d3cf;color:#983f38}.calendar-segment.day_off{background:#f4e8aa;color:#725a04}.calendar-segment.document_vacation{background:#dce4f8;color:#3b578f}.calendar-segment.pending{background-image:repeating-linear-gradient(135deg,transparent 0,transparent 4px,rgba(112,83,12,.18) 4px,rgba(112,83,12,.18) 7px);outline:1px dashed #99721a;outline-offset:-1px}
.employee-summary-panel{container-type:inline-size}.employee-summary-panel .employee-report-wrap{overflow-x:hidden}.employee-summary-panel .extended-report{min-width:0!important;table-layout:fixed;width:100%}.employee-summary-panel .report-name-column{min-width:0!important;width:14%!important}.employee-summary-panel .month-heading,.employee-summary-panel .report-month-cell{min-width:0!important;width:4.15%}.employee-summary-panel .compact-total{min-width:0!important;width:4.1%}.employee-summary-panel .calculated-total{min-width:0!important;width:4.4%}.employee-summary-panel .report-month-cell{height:58px;padding:3px!important}.employee-summary-panel .month-value{font-size:clamp(7px,.55vw,9px);overflow:hidden;padding:2px 1px;text-overflow:ellipsis;white-space:nowrap}.employee-summary-panel thead th{font-size:clamp(7px,.55vw,9px);letter-spacing:0;padding:8px 2px}.employee-summary-panel .report-name-column{padding:9px 8px}.employee-summary-panel .report-name-column strong{font-size:clamp(9px,.75vw,12px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.employee-summary-panel .report-name-column small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.employee-summary-panel .report-total{font-size:clamp(9px,.72vw,12px);padding:5px 1px}.compact-total small{font-size:7px;font-weight:500}@media(max-width:1100px){.employee-summary-panel .employee-report-wrap{overflow-x:auto}.employee-summary-panel .extended-report{min-width:1000px!important}.employee-summary-panel .report-name-column{width:150px!important}.employee-summary-panel .month-heading,.employee-summary-panel .report-month-cell{width:42px}.employee-summary-panel .compact-total{width:42px}.employee-summary-panel .calculated-total{width:44px}}
.duty-summary-filters{flex-wrap:wrap}.duty-summary-filters label{min-width:145px}.duty-summary-period{align-items:center;background:#f5f7f3;border-radius:10px;display:flex;gap:12px;margin-bottom:16px;padding:12px 15px}.duty-summary-period span{color:var(--muted);font-size:10px;font-weight:700;text-transform:uppercase}.duty-summary-period strong{font-size:12px}.duty-summary-period small{color:var(--muted);margin-left:auto}.duty-summary-wrap{max-height:68vh}.duty-summary-table{min-width:1050px}.duty-summary-table thead th{z-index:4}.duty-summary-table .report-name-column{min-width:220px;width:220px}.duty-summary-table th:nth-child(2),.duty-summary-table td:nth-child(2){min-width:175px}.duty-direction-name{font-size:11px;font-weight:700;padding:8px 12px}.duty-count{font-size:11px;min-width:72px;padding:8px;text-align:center}.duty-count.has-value{background:#edf4e4;color:var(--green);font-weight:800}.duty-count.period-total,.duty-count.annual-total{background:#e6f0a8;font-size:13px;min-width:95px}.duty-count.annual-total{background:#d9ee75}@media(max-width:800px){.duty-summary-period{align-items:flex-start;flex-direction:column}.duty-summary-period small{margin-left:0}}
.active-people-grid{margin-bottom:20px}.deleted-employees{margin-top:24px;padding:0;overflow:hidden}.deleted-employees>summary{align-items:center;cursor:pointer;display:flex;justify-content:space-between;list-style:none;padding:18px 22px}.deleted-employees>summary::-webkit-details-marker{display:none}.deleted-employees>summary span strong,.deleted-employees>summary span small{display:block}.deleted-employees>summary span small{color:var(--muted);font-size:9px;margin-top:4px}.deleted-employees>summary>b{align-items:center;background:#edf0ec;border-radius:20px;display:flex;font-size:11px;height:28px;justify-content:center;min-width:28px;padding:0 9px}.deleted-employees[open]>summary{border-bottom:1px solid var(--line)}.deleted-people-grid{padding:18px}.deleted-employees .inactive-person{background:#f7f8f6}.deleted-employees .inactive-person .person-metrics{display:grid}.restore-employee{background:transparent;border:0;color:var(--green);cursor:pointer;font-size:10px;font-weight:800;padding:5px}.restore-employee:hover{text-decoration:underline}
.employee-calendar-widget{align-items:center;background:#fff;border:1px solid var(--line);border-radius:16px;color:var(--ink);display:flex;justify-content:space-between;margin-bottom:18px;padding:20px 24px;text-decoration:none}.employee-calendar-widget:hover{border-color:var(--green);box-shadow:var(--shadow);transform:translateY(-2px)}.employee-calendar-widget h2{font-size:20px;margin:6px 0 3px}.employee-calendar-widget p{color:var(--muted);font-size:11px;margin:0}.employee-calendar-widget>strong{color:var(--green);font-size:30px}.employee-calendar-filters{max-width:600px}
.documents-warning{background:#fff1c9;border-left:3px solid #c89522;border-radius:8px;color:#78590f;font-size:11px;margin-top:14px;padding:11px 13px}.documents-warning strong{font-size:12px}
.sidebar-actions{display:grid;gap:2px;margin-top:10px}.sidebar-action{background:transparent;border:0;color:#a9bab5;cursor:pointer;font-size:11px;padding:7px 0;text-align:left}.sidebar-action:hover{color:#fff}.sidebar-actions .logout{padding:7px 0}.password-dialog{width:min(480px,92vw)}.password-dialog label small{color:var(--muted);font-size:9px;font-weight:400}@media(max-width:1000px) and (min-width:701px){.sidebar-actions{display:none}}
@media(max-width:700px){.sidebar-actions{display:none}}
.plan-rules{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:18px}.plan-rules div{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px}.plan-rules strong,.plan-rules span{display:block}.plan-rules strong{font-size:24px}.plan-rules span{color:var(--muted);font-size:9px;margin-top:3px}.plans-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.plan-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px}.plan-card-head{align-items:start;display:flex;justify-content:space-between}.plan-card h2{font-size:30px;margin:4px 0 12px}.plan-period-list{display:grid;gap:7px;margin:10px 0 18px}.plan-period-list>div{align-items:center;background:#f5f7f3;border-radius:9px;display:flex;gap:10px;padding:10px}.plan-period-list>div>span{background:var(--green);border-radius:50%;color:#fff;display:grid;font-size:10px;height:24px;place-items:center;width:24px}.plan-period-list p,.plan-period-list b,.plan-period-list small{display:block;margin:0}.plan-period-list b{font-size:11px}.plan-period-list small{color:var(--muted);font-size:9px;margin-top:2px}.empty-plan{grid-column:1/-1}.plan-dialog{width:min(720px,94vw)}.plan-year{margin-bottom:16px;width:180px}.plan-periods{display:grid;gap:9px}.plan-period{align-items:end;background:#f5f7f3;border-radius:11px;display:grid;gap:9px;grid-template-columns:28px 1fr 1fr 70px 28px;padding:12px}.period-number{background:var(--green);border-radius:50%;color:#fff;display:grid;font-size:10px;height:26px;margin-bottom:9px;place-items:center;width:26px}.period-duration{font-size:10px;font-weight:700;margin-bottom:12px;text-align:center}.remove-period{background:#f7dede;border:0;border-radius:50%;color:var(--red);cursor:pointer;height:26px;margin-bottom:7px;width:26px}.add-period{background:none;border:1px dashed #9fb3ab;border-radius:9px;color:var(--green);cursor:pointer;font-size:11px;font-weight:700;margin-top:9px;padding:10px;width:100%}.plan-check{display:grid;gap:9px;grid-template-columns:1fr 1fr;margin-top:16px}.plan-check div{background:#edf3ef;border-radius:9px;display:flex;justify-content:space-between;padding:11px}.plan-check span{font-size:10px}.plan-check strong{font-size:12px}.plan-hints{display:grid;gap:5px;margin-top:10px}.plan-hints div{background:#f9e4e1;border-radius:7px;color:#98423b;font-size:10px;padding:8px 10px}.plan-hints .valid{background:#e0f0e9;color:#246353}#savePlan:disabled{cursor:not-allowed;opacity:.45}@media(max-width:900px){.plan-rules{grid-template-columns:repeat(2,1fr)}.plans-grid{grid-template-columns:1fr}}@media(max-width:600px){.plan-period{grid-template-columns:24px 1fr}.plan-period .period-duration{display:none}.plan-period .remove-period{position:absolute;right:18px}.plan-year{width:100%}}
.plan-schedule-panel{margin-bottom:22px;padding:20px}.plan-schedule-head{align-items:end;display:flex;gap:20px;justify-content:space-between;margin-bottom:15px}.plan-schedule-head h2{font-size:19px;margin:5px 0}.plan-schedule-head p{color:var(--muted);font-size:10px;margin:0}.plan-schedule-filters{align-items:end;display:flex;flex-wrap:wrap;gap:9px;justify-content:flex-end}.plan-table-year{flex:0 0 105px;font-size:10px}.plan-table-year select{margin-top:5px}.plan-employee-filter{width:280px}.plan-employee-filter .employee-filter-menu{left:auto;right:0}.plan-schedule-filters .btn{min-height:42px;white-space:nowrap}.plan-weekly-wrap{border:1px solid var(--line);border-radius:12px;max-height:64vh;overflow:auto}.plan-weekly-table{border-collapse:separate;border-spacing:0;min-width:max-content}.plan-weekly-table th,.plan-weekly-table td{border-bottom:1px solid #e3e9e5;border-right:1px solid #e3e9e5}.plan-weekly-table thead th{background:#edf2ee;position:sticky;top:0;z-index:3}.plan-week-column{height:48px;min-width:68px;padding:6px 4px;text-align:center;width:68px}.plan-week-column strong,.plan-week-column small{display:block}.plan-week-column strong{font-size:9px}.plan-week-column small{color:var(--muted);font-size:8px;font-weight:500;margin-top:3px}.plan-person-column{background:#fff;left:0;max-width:210px;min-width:210px;padding:9px 12px;position:sticky;text-align:left;width:210px;z-index:2}.plan-weekly-table thead .plan-person-column{background:#e6ede8;z-index:5}.plan-person-column strong,.plan-person-column small,.plan-person-column em{display:block}.plan-person-column strong{font-size:10px}.plan-person-column small{color:var(--muted);font-size:8px;font-weight:500;margin-top:2px}.plan-person-column em{color:#b07b20;font-size:8px;font-style:normal;font-weight:700;margin-top:4px}.plan-week-cell{height:49px;min-width:68px;padding:3px;text-align:center;width:68px}.plan-week-cell b,.plan-week-cell span{display:block}.plan-week-cell b{font-size:12px}.plan-week-cell span{font-size:8px;margin-top:2px}.plan-week-cell.planned{background:#cce9e0;color:#175849}.plan-week-cell.planned:hover{background:#adddce}.plan-week-empty{color:#d5ddda}.plan-own-heading{margin:24px 0 12px}.plan-own-heading h2{font-size:19px;margin:4px 0}@media(max-width:1000px){.plan-schedule-head{align-items:stretch;display:grid}.plan-schedule-filters{justify-content:flex-start}}@media(max-width:700px){.plan-schedule-panel{padding:14px}.plan-schedule-filters{align-items:stretch;display:grid}.plan-table-year,.plan-employee-filter{width:100%}.plan-employee-filter .employee-filter-menu{left:0;right:auto}.plan-person-column{max-width:155px;min-width:155px;width:155px}.plan-week-column,.plan-week-cell{min-width:62px;width:62px}}
.plan-week-column{min-width:52px;padding-left:2px;padding-right:2px;width:52px}.plan-week-cell{min-width:52px;padding-left:2px;padding-right:2px;width:52px}.plan-week-column strong{font-size:8px}.plan-week-column small,.plan-week-cell span{font-size:7px}
@media(max-width:700px){.plan-week-column,.plan-week-cell{min-width:50px;width:50px}}
.plans-grid{display:grid;grid-template-columns:1fr;margin-bottom:24px}.plan-card{align-items:center;display:grid;gap:18px;grid-template-columns:120px minmax(0,1fr) auto}.plan-card-head{display:block}.plan-card-head .status{display:inline-block}.plan-card h2{font-size:26px;margin:3px 0 7px}.plan-period-list{grid-template-columns:repeat(3,minmax(170px,1fr));margin:0}.plan-card>.edit-plan{white-space:nowrap}.plan-own-heading{margin:22px 0 10px}.empty-plan{display:block}
@media(max-width:1000px){.plan-card{grid-template-columns:100px minmax(0,1fr)}.plan-card>.edit-plan{grid-column:1/-1;justify-self:start}.plan-period-list{grid-template-columns:repeat(3,minmax(150px,1fr))}}
@media(max-width:700px){.plan-card{display:block}.plan-period-list{grid-template-columns:1fr;margin:12px 0}.plan-card>.edit-plan{width:100%}}
.allowance-form{border-bottom:1px solid var(--line);border-top:1px solid var(--line);margin:14px 0 4px;padding:13px 0}.allowance-form label{color:var(--muted);font-size:9px}.allowance-form label>div{display:grid;gap:7px;grid-template-columns:72px 1fr}.allowance-form input{font-size:12px;font-weight:700;min-width:0;padding:9px;text-align:center}.allowance-form .btn{font-size:10px;padding:9px 11px}
.people-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.person-card{border-radius:13px;min-width:0;padding:14px}.person-card .avatar.large{font-size:15px;height:40px;width:40px}.person-card h3{font-size:14px;margin:10px 0 4px}.person-card p{font-size:10px;margin:4px 0}.person-metrics{border-radius:9px;margin:10px 0;padding:9px}.person-metrics div+div{padding-left:10px}.person-metrics strong{font-size:17px}.person-metrics span{font-size:8px}.allowance-form{margin:9px 0 3px;padding:9px 0}.person-footer{gap:8px;margin-top:8px;min-width:0}.person-footer>small{font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:1200px){.people-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){.people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.people-grid{grid-template-columns:1fr}}
.away-widget{color:var(--ink);cursor:pointer;font-family:inherit;position:relative;text-align:left}.away-widget.has-away:hover,.away-widget.open{border-color:var(--green);box-shadow:var(--shadow);transform:translateY(-2px)}.away-widget i{font-size:18px;font-style:normal;position:absolute;right:18px;top:17px;transition:transform .2s}.away-widget.open i{transform:rotate(180deg)}.away-widget:disabled{cursor:default;opacity:.72}.away-details{margin-bottom:18px}.away-close{background:transparent;border:0;color:var(--green);cursor:pointer;font-size:10px;font-weight:800}.away-list{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:22px}.away-list article{align-items:center;background:#f5f7f3;border:1px solid #e8ede9;border-radius:12px;display:grid;gap:10px;grid-template-columns:36px minmax(0,1fr) auto;padding:12px}.away-avatar{background:var(--lime);border-radius:50%;display:grid;font-size:12px;font-weight:800;height:36px;place-items:center;width:36px}.away-list article strong,.away-list article small{display:block}.away-list article strong{font-size:11px}.away-list article small{color:var(--muted);font-size:8px;margin-top:2px}.away-kind{border-radius:5px;display:inline-block;font-size:8px;font-weight:800;margin-top:5px;padding:3px 6px}.away-kind.vacation{background:#cce9e0;color:#175849}.away-kind.day_off{background:#f4e8aa;color:#725a04}.away-kind.sick_leave{background:#f7d3cf;color:#983f38}.away-until{text-align:right}.away-until b,.away-until span{display:block}.away-until b{font-size:15px}.away-until span{color:var(--muted);font-size:8px}.away-chart-head{align-items:end;display:flex;justify-content:space-between;margin-bottom:10px}.away-chart-head h3{font-size:13px;margin:0}.away-chart-head small{color:var(--muted);font-size:8px}.away-chart-wrap{border:1px solid var(--line);border-radius:10px;max-height:44vh;overflow:auto}.away-chart{border-collapse:separate;border-spacing:0;min-width:max-content}.away-chart th,.away-chart td{border-bottom:1px solid #e6ebe8;border-right:1px solid #e6ebe8}.away-chart thead th{background:#edf2ee;min-width:34px;padding:6px 3px;position:sticky;text-align:center;top:0;width:34px;z-index:3}.away-chart thead b,.away-chart thead small{display:block}.away-chart thead b{font-size:9px}.away-chart thead small{font-size:7px;font-weight:500}.away-chart .away-name-column{background:#fff;left:0;min-width:180px;padding:8px 11px;position:sticky;text-align:left;width:180px;z-index:2}.away-chart thead .away-name-column{background:#e6ede8;z-index:5}.away-name-column strong,.away-name-column small{display:block}.away-name-column strong{font-size:9px}.away-name-column small{color:var(--muted);font-size:7px;margin-top:2px}.away-chart td{height:34px;min-width:34px;padding:0;width:34px}.away-chart td.weekend:not(.away-day),.away-chart th.weekend{background:#f6f2ec}.away-day span{display:block;height:12px;margin:0 -1px}.away-day.vacation span{background:#75baa5}.away-day.day_off span{background:#d8bd42}.away-day.sick_leave span{background:#df8e85}.away-chart tbody tr:hover .away-name-column{background:#f6f8f6}@media(max-width:1050px){.away-list{grid-template-columns:1fr 1fr}}@media(max-width:700px){.away-list{grid-template-columns:1fr}.away-chart-head{align-items:start;display:grid;gap:4px}.away-chart .away-name-column{min-width:145px;width:145px}}
.employee-nearby-stats{grid-template-columns:minmax(0,1fr)}
.stats{grid-template-columns:repeat(3,minmax(0,1fr))}.next-week-widget>span:first-child{line-height:1.35;max-width:85%}.away-period{display:block;font-size:8px;margin-top:5px}.away-period .away-kind{margin-right:3px;margin-top:0}.next-week-chart{min-width:620px}.next-week-chart thead th:not(.away-name-column),.next-week-chart td{min-width:54px;width:54px}@media(max-width:900px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.stats{grid-template-columns:1fr}}

.duty-page-head{align-items:end}.duty-month-filter{min-width:180px}.duty-month-filter input{margin-top:6px;width:100%}.duty-controls{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:18px}.duty-control-card{display:flex;flex-direction:column;gap:12px;margin:0;padding:20px}.duty-control-card h2{font-size:18px;margin:0}.duty-control-card p{color:var(--muted);font-size:10px;line-height:1.5;margin:0}.duty-control-card>.btn{align-self:flex-start;margin-top:auto}.duty-inline-fields{display:grid;gap:10px;grid-template-columns:1fr 1fr}.duty-inline-fields small{color:var(--muted);font-size:8px;font-weight:400}.duty-readonly-note{background:#edf4f0;border:1px solid #d5e6de;border-radius:12px;color:#315f53;font-size:11px;margin-bottom:18px;padding:14px 18px}.duty-calendar-panel{margin-bottom:18px}.duty-legend{display:flex;gap:16px}.duty-legend span{align-items:center;color:var(--muted);display:flex;font-size:9px;gap:6px}.duty-legend i{border-radius:50%;height:9px;width:9px}.duty-legend .auto{background:#75baa5}.duty-legend .manual{background:#d8bd42}.duty-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));overflow:hidden}.duty-weekday{background:#edf2ee;border-bottom:1px solid #dfe7e2;color:#71817c;font-size:9px;font-weight:800;letter-spacing:1px;padding:9px;text-align:center}.duty-day{border-bottom:1px solid #e5ebe7;border-right:1px solid #e5ebe7;min-height:116px;padding:10px;position:relative}.duty-day:nth-child(7n){border-right:0}.duty-day.weekend{background:#f8f5ef}.duty-day.placeholder{background:#fafbfa}.duty-day time{color:#7b8985;font-size:10px;font-weight:800}.duty-day.filled.auto{box-shadow:inset 0 3px #75baa5}.duty-day.filled.manual{box-shadow:inset 0 3px #d8bd42}.duty-person{display:grid;grid-template-columns:28px 1fr;margin-top:15px}.duty-person>span{background:var(--lime);border-radius:50%;display:grid;font-size:10px;font-weight:800;grid-row:1/3;height:28px;margin-right:7px;place-items:center;width:28px}.duty-person strong{font-size:10px;line-height:1.25}.duty-person small{color:var(--muted);font-size:7px;margin-top:3px}.duty-empty{color:#a8b3af;font-size:9px;margin-top:22px;text-align:center}.duty-bottom-grid{display:grid;gap:18px;grid-template-columns:1fr 1fr;margin-bottom:40px}.duty-load-list{display:grid;gap:0}.duty-load-list>div{align-items:center;border-bottom:1px solid #edf0ee;display:flex;font-size:11px;justify-content:space-between;padding:9px 2px}.duty-load-list b{background:#edf4f0;border-radius:14px;color:var(--green);min-width:29px;padding:4px 8px;text-align:center}.duty-restrictions{display:grid;gap:9px}.duty-restrictions article{align-items:center;background:#f7f8f5;border-radius:10px;display:flex;justify-content:space-between;padding:11px}.duty-restrictions strong,.duty-restrictions span,.duty-restrictions small{display:block}.duty-restrictions strong{font-size:10px}.duty-restrictions span{font-size:9px;margin-top:3px}.duty-restrictions small{color:var(--muted);font-size:8px;margin-top:3px}.duty-today-widget{align-items:center;background:var(--green);border-radius:16px;color:#fff;display:flex;justify-content:space-between;margin-bottom:18px;padding:19px 24px;text-decoration:none}.duty-today-widget span,.duty-today-widget small{display:block}.duty-today-widget span{font-size:9px;font-weight:800;letter-spacing:1.2px}.duty-today-widget strong{font-size:18px}.duty-today-widget small{color:#bfd2cd;font-size:9px;margin-top:3px}.duty-today-stat strong{font-size:20px;line-height:1.25;margin:11px 0}.duty-today-stat small{line-height:1.35}@media(max-width:1100px){.duty-controls{grid-template-columns:1fr 1fr}.duty-control-card:last-child{grid-column:1/-1}}@media(max-width:800px){.duty-calendar{min-width:760px}.duty-calendar-panel{overflow-x:auto}.duty-bottom-grid,.duty-controls{grid-template-columns:1fr}.duty-control-card:last-child{grid-column:auto}.duty-page-head{align-items:stretch}.duty-month-filter{width:100%}}@media(max-width:600px){.duty-inline-fields{grid-template-columns:1fr}.duty-legend{align-items:flex-start;flex-direction:column;gap:5px}}
.duty-day.non-duty{background:#f3f1ed;box-shadow:none}.duty-empty strong,.duty-empty small{display:block}.duty-empty small{font-size:7px;margin-top:4px}
.duty-all-toggle{align-items:flex-start!important;background:#f3f6f2;border:1px solid #dce6df;border-radius:10px;display:flex!important;gap:9px;padding:10px}.duty-all-toggle input{margin-top:2px;width:auto}.duty-all-toggle span,.duty-all-toggle strong,.duty-all-toggle small{display:block}.duty-all-toggle strong{font-size:10px}.duty-all-toggle small{color:var(--muted);font-size:8px;font-weight:400;margin-top:2px}
.duty-person.substitution{background:#f2ecff;border-left:3px solid #8466b2;border-radius:7px;padding:5px}.duty-person.substitution small{color:#6d4d9b;font-weight:700}
.eligibility-date-field{max-width:280px}.eligibility-date-field small{color:var(--muted);font-size:8px;font-weight:400}.eligibility-history{border-top:1px solid var(--line);margin-top:20px;padding-top:16px}.eligibility-history h3{font-size:13px;margin:0 0 10px}.eligibility-history article{background:#f7f8f5;border-radius:9px;display:grid;gap:10px;grid-template-columns:115px 1fr;margin-top:7px;padding:10px}.eligibility-history time{font-size:9px;font-weight:800}.eligibility-history span{color:var(--muted);font-size:9px;line-height:1.5}
.telephony-attention{background:#fff8e2;border-color:#ead58b;display:grid;gap:18px;grid-template-columns:minmax(220px,.8fr) 1.2fr;margin-bottom:18px}.telephony-attention h2{font-size:18px;margin:4px 0}.telephony-attention p{color:var(--muted);font-size:9px;line-height:1.5}.telephony-attention-list{display:grid;gap:8px}.telephony-attention-list article{background:#fff;border:1px solid #eadca8;border-radius:10px;display:grid;gap:12px;grid-template-columns:85px 1fr;padding:10px}.telephony-attention-list time{font-size:10px;font-weight:800}.telephony-attention-list strong,.telephony-attention-list small{display:block}.telephony-attention-list strong{font-size:9px}.telephony-attention-list small{color:#8a6b1f;font-size:8px;margin:2px 0 6px}@media(max-width:700px){.telephony-attention{grid-template-columns:1fr}}
.duty-direction-tabs{display:grid;gap:8px;grid-template-columns:repeat(6,minmax(0,1fr));margin:0 0 18px}.duty-direction-tabs a{background:#fff;border:1px solid var(--line);border-radius:12px;color:var(--ink);padding:12px;text-decoration:none}.duty-direction-tabs a.active{background:var(--green);border-color:var(--green);color:#fff}.duty-direction-tabs strong,.duty-direction-tabs small{display:block}.duty-direction-tabs strong{font-size:11px}.duty-direction-tabs small{font-size:8px;margin-top:4px;opacity:.7}.duty-people{display:grid;gap:7px;margin-top:9px}.duty-people .duty-person{margin-top:0}.duty-settings{margin-bottom:18px}.duty-check-list{display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr));margin:14px 0}.duty-check-list label{align-items:center;background:#f7f8f5;border-radius:9px;display:flex;font-size:10px;gap:7px;padding:9px}.duty-group-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.duty-group-grid article{background:#f7f8f5;border-radius:12px;padding:15px}.duty-group-grid h3{font-size:14px;margin:0 0 7px}.duty-group-grid p{color:var(--muted);font-size:9px;line-height:1.5}.duty-group-grid details{border-top:1px solid #e1e7e3;margin-top:10px;padding-top:9px}.duty-group-grid summary{cursor:pointer;font-size:9px;font-weight:700}.duty-group-grid details form{display:grid;gap:8px;margin-top:9px}.group-version{display:grid;font-size:8px;gap:3px;padding:7px 0}.group-version span{color:var(--muted)}@media(max-width:1000px){.duty-direction-tabs{grid-template-columns:repeat(3,1fr)}.duty-check-list{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.duty-direction-tabs,.duty-group-grid,.duty-check-list{grid-template-columns:1fr 1fr}}
.personal-duty-summary{margin-bottom:18px}.personal-duty-summary .panel-head{align-items:center}.personal-duty-total{background:var(--lime);border-radius:14px;min-width:120px;padding:12px 16px;text-align:center}.personal-duty-total strong,.personal-duty-total small{display:block}.personal-duty-total strong{color:var(--green);font-size:24px}.personal-duty-total small{color:var(--muted);font-size:8px;margin-top:2px}.personal-duty-table-wrap{overflow-x:auto}.personal-duty-table{border-collapse:collapse;width:100%}.personal-duty-table th{background:#edf2ee;color:#71817c;font-size:9px;letter-spacing:.6px;padding:10px 12px;text-align:left;text-transform:uppercase}.personal-duty-table td{border-bottom:1px solid #e5ebe7;font-size:10px;padding:10px 12px;vertical-align:middle}.personal-duty-table th:first-child,.personal-duty-table td:first-child{width:120px}.personal-duty-table th:nth-child(2),.personal-duty-table td:nth-child(2){color:var(--muted);width:140px}.personal-duty-table tbody tr:last-child td{border-bottom:0}.personal-duty-directions{display:grid;gap:7px;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.personal-duty-direction{background:#edf4f0;border-left:3px solid var(--green);border-radius:8px;display:block;min-width:0;padding:7px 10px}.personal-duty-direction b,.personal-duty-direction small{display:block}.personal-duty-direction b{font-size:10px}.personal-duty-direction small{color:var(--muted);font-size:8px;margin-top:3px}.personal-duty-empty{padding:18px 0 4px}@media(max-width:600px){.personal-duty-summary .panel-head{align-items:flex-start}.personal-duty-total{min-width:90px}.personal-duty-table{min-width:600px}}
.daily-duty-summary-panel{container-type:inline-size}.daily-duty-summary-wrap{max-height:72vh;overflow-x:hidden}.daily-duty-summary-table{min-width:0;table-layout:fixed;width:100%}.daily-duty-summary-table .report-name-column{min-width:0;width:18%}.daily-duty-direction-column{background:#fff;left:18%;min-width:0!important;position:sticky;width:14%;z-index:1}.daily-duty-summary-table thead .daily-duty-direction-column{background:#e8efea;z-index:3}.daily-duty-day-heading,.daily-duty-cell{min-width:0!important;width:auto}.daily-duty-day-heading{padding:6px 0!important}.daily-duty-day-heading b,.daily-duty-day-heading small{display:block}.daily-duty-day-heading b{font-size:clamp(6px,.55vw,9px)}.daily-duty-day-heading small{color:var(--muted);font-size:clamp(5px,.42vw,7px);margin-top:1px}.daily-duty-cell{color:#c3ccc8;font-size:clamp(6px,.52vw,9px);height:36px;padding:0!important;text-align:center}.daily-duty-cell.has-duty{background:#edf4e4;color:var(--green)}.daily-duty-cell.has-duty span{display:grid;font-size:clamp(8px,.7vw,11px);font-weight:800;height:100%;place-items:center;width:100%}.daily-duty-day-heading.weekend,.daily-duty-cell.weekend:not(.has-duty){background:#f6f2ec}.daily-duty-month-total{background:#d9ee75!important;color:var(--green);font-size:clamp(7px,.6vw,10px);min-width:0;padding:4px 1px;text-align:center;width:6%}.daily-duty-summary-table .report-name-column{padding:7px 6px}.daily-duty-summary-table .report-name-column strong{font-size:clamp(7px,.65vw,10px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.daily-duty-summary-table .daily-duty-direction-column{font-size:clamp(7px,.62vw,10px);overflow:hidden;padding:5px;text-overflow:ellipsis;white-space:nowrap}.daily-duty-summary-table tbody tr:hover .report-name-column,.daily-duty-summary-table tbody tr:hover .daily-duty-direction-column{background:#f6f8f6}@media(max-width:800px){.daily-duty-summary-wrap{overflow-x:auto}.daily-duty-summary-table{min-width:900px}.daily-duty-summary-table .report-name-column{min-width:165px;width:165px}.daily-duty-direction-column{left:165px;min-width:130px!important;width:130px}.daily-duty-day-heading,.daily-duty-cell{min-width:18px!important;width:18px}.daily-duty-month-total{min-width:58px;width:58px}}
.password-reminder{align-items:center;background:#fff5d8;border:1px solid #ead38b;border-radius:14px;color:#5f4b12;display:flex;gap:18px;justify-content:space-between;margin-bottom:18px;padding:15px 18px}.password-reminder strong,.password-reminder span{display:block}.password-reminder strong{font-size:12px}.password-reminder span{font-size:9px;line-height:1.5;margin-top:4px}.password-reminder .btn{flex:0 0 auto}@media(max-width:700px){.password-reminder{align-items:stretch;display:grid}.password-reminder .btn{width:100%}}
.details dd{margin-left:auto;text-align:right}.details dd small{display:block;text-align:right}
.duty-clear-card{background:#fffafa;border-color:#efd4d4}.duty-clear-card .eyebrow{color:#a54b4b}.btn.danger{background:#f7dede;color:#9a4040}.btn.danger:hover{background:#efd0d0;transform:translateY(-1px)}
.duty-overlap-rules{background:#f3f6f2;border:1px solid #dce6df;border-radius:10px;padding:10px 11px}.duty-overlap-rules strong,.duty-overlap-rules span,.duty-overlap-rules small{display:block}.duty-overlap-rules strong{color:var(--green);font-size:9px;letter-spacing:.5px;text-transform:uppercase}.duty-overlap-rules span{color:var(--ink);font-size:9px;line-height:1.45;margin-top:5px}.duty-overlap-rules small{color:var(--muted);font-size:8px;line-height:1.4;margin-top:5px}
