@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap";*{box-sizing:border-box}body{color:#1c2c3d;background:#f4f6f8;margin:0;font:14px DM Sans,Arial,sans-serif}button,input,select{font:inherit}button{cursor:pointer;color:#34465a;background:#fff;border:1px solid #dbe2e9;border-radius:7px;justify-content:center;align-items:center;gap:7px;padding:9px 12px;display:inline-flex}button:hover{background:#edf3f6}button:disabled{opacity:.5;cursor:wait}button.primary,.publish{color:#fff;background:#146960;border-color:#146960}.shell{min-height:100vh;display:flex}aside{color:#d5e0e8;background:#102638;flex-direction:column;width:248px;height:100vh;padding:31px 20px;display:flex;position:fixed}.brand{color:#e3bc76;align-items:center;gap:10px;font-family:Manrope,sans-serif;font-size:16px;font-weight:800;display:flex}.brand small{letter-spacing:1.3px;color:#b6c6d2;margin-top:7px;font:8px DM Sans,sans-serif;display:block}.workspace{letter-spacing:1.8px;color:#7892a6;margin:49px 12px 17px;font-size:9px}nav{gap:8px;display:grid}nav button{color:#aabfce;background:0 0;border:0;justify-content:flex-start;padding:13px;font-weight:500}nav button.active{color:#fff;background:#244254;box-shadow:inset 3px 0 #dbba7c}nav b{color:#102638;background:#d6b779;border-radius:4px;margin-left:auto;padding:1px 6px}.aside-bottom{color:#b4c4cf;border-top:1px solid #304555;margin-top:auto;padding:23px 8px 0;font-size:11px}.aside-bottom p{color:#7991a3;font-size:10px;line-height:1.9}.dot{background:#79b6a3;border-radius:50%;width:6px;height:6px;margin-right:5px;display:inline-block}main{width:calc(100% - 248px);margin-left:248px}header{color:#637486;background:#fff;border-bottom:1px solid #e3e8ed;justify-content:space-between;align-items:center;height:72px;padding:0 38px;font-size:12px;display:flex}header i{color:#bbc4ce;margin:0 15px;font-style:normal}.avatar{color:#3c586d;background:#edf2f5;border:1px solid #d8e2e8;border-radius:50%;padding:11px;font-weight:700}.content{padding:34px 38px}.eyebrow{letter-spacing:2px;color:#317f73;font-size:10px;font-weight:700}h1{letter-spacing:-1px;margin:9px 0;font:800 29px Manrope,sans-serif}p{color:#758293;line-height:1.6}.title-row{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.title-row p{margin:9px 0;font-size:13px}.stats{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:28px;display:grid}.stats article{background:#fff;border:1px solid #e0e6eb;border-radius:9px;padding:20px;position:relative;box-shadow:0 2px 2px #122b3c02}.stats article>span{color:#748192;font-size:11px}.stats strong{margin-top:12px;font:700 29px Manrope,sans-serif;display:block}.stats strong.status-text{color:#34796c;font-size:24px}.stats small{color:#86929e;margin-top:6px;font:10px DM Sans,sans-serif;display:block}.stats svg{color:#8da7b6;width:17px;position:absolute;top:20px;right:19px}section{background:#fff;border:1px solid #dfe6ec;border-radius:10px;overflow:hidden}.toolbar,.subtoolbar,.section-head{border-bottom:1px solid #e9edf1;justify-content:space-between;align-items:center;gap:12px;padding:21px 23px;display:flex}h2{margin:0;font:700 16px Manrope,sans-serif}.date-nav{align-items:center;gap:12px;display:flex}.date-nav button{padding:6px}.date-nav input{max-width:130px;font-size:11px}.segmented{background:#f1f4f6;border-radius:7px;padding:3px;display:flex}.segmented button{background:0 0;border:0;padding:7px 15px;font-size:11px}.segmented .selected{background:#fff;box-shadow:0 1px 4px #0001}.subtoolbar{padding:14px 23px;font-size:11px}.subtoolbar select{max-width:170px}.legend{color:#4c8f7b;gap:14px;margin-right:auto;display:flex}.legend span:nth-child(2){color:#bc9346}.legend span:nth-child(3){color:#717eab}.subtoolbar button{font-size:11px}table{border-collapse:collapse;text-align:left;width:100%}th{color:#8693a0;letter-spacing:1px;background:#f8fafb;padding:17px 20px;font-size:9px;font-weight:600}td{border-top:1px solid #e9eef1;padding:18px 20px;font-size:12px}.schedule-scroll,.table-wrap{overflow:auto}.schedule{table-layout:fixed;min-width:950px}.schedule th{text-align:center;border-left:1px solid #e5eaef;width:120px}.schedule th strong{color:#344a60;margin-top:8px;font:700 21px Manrope,sans-serif;display:block}.schedule .person-col{text-align:left;z-index:1;background:#fff;width:216px;position:sticky;left:0}.schedule td{vertical-align:top;cursor:pointer;border-left:1px solid #edf0f3;height:105px;padding:8px}.schedule td.person-col{padding:22px 18px}.person-col small{color:#8b97a2;margin-top:5px;font-size:10px;display:block}.shift{color:#327563;background:#e8f3ee;border-left:3px solid #559b83;border-radius:5px;margin-bottom:5px;padding:10px 6px;font-size:10px;position:relative}.shift small{white-space:normal;margin-top:5px;font-size:9px;display:block}.shift.night{color:#606f9d;background:#edf0fa;border-color:#7d89bd}.shift.swing{color:#97722c;background:#faf2df;border-color:#c5a455}.shift.planned{opacity:.75}.shift button{background:0 0;border:0;padding:0 3px;font-size:12px;position:absolute;top:0;right:1px}.off{text-align:center;color:#b7c1ca;margin-top:26px;font-size:9px;display:block}.leave{color:#af7355;background:#fff0e8;border-radius:4px;padding:6px;font-size:10px}.footnote{color:#8b98a4;border-top:1px solid #e8edf1;padding:15px 22px;font-size:10px}.empty{text-align:center;color:#8695a4;padding:65px 20px;line-height:1.8}.empty svg{color:#a5b5bd}.empty h2{color:#344e61;margin-top:12px}.empty button{margin-top:14px}.section-head span{color:#8593a0;font-size:11px}.request{border-bottom:1px solid #e9edf1;align-items:center;gap:15px;padding:23px;display:flex}.request-icon{color:#628390;background:#f0f5f7;border-radius:9px;padding:13px}.request-main{flex:1}.request p{margin:6px 0;font-size:12px}.request small{color:#8593a1}.badge{color:#728492;background:#edf2f5;border-radius:5px;margin-left:8px;padding:4px 7px;font-size:9px}.badge.Pending{color:#a7863e;background:#fff2d9}.badge.Approved{color:#357b5b;background:#e3f3e9}.badge.Denied{color:#b66a58;background:#fcebe7}.banks{grid-template-columns:repeat(3,1fr);gap:16px;padding:22px;display:grid}.banks article{border:1px solid #e1e7ec;border-radius:8px;padding:21px}.banks small{color:#8a98a3;margin-top:6px;font-size:10px;display:block}.banks strong{margin:22px 0 11px;font-size:27px;display:block}.banks strong span{color:#8593a1;font-size:12px;font-weight:400}progress{accent-color:#277d6e;width:100%;height:7px}.spaced{margin-top:22px}.rotation-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.rotation-body{padding:23px}.rotation-body p{font-size:12px}.rotation-body b{color:#365064;margin-top:4px;display:block}.rotation-chips{flex-wrap:wrap;gap:5px;margin:22px 0;display:flex}.rotation-chips span{background:#eff5f4;border-radius:4px;padding:5px;font-size:10px}.audit{border-bottom:1px solid #edf0f3;align-items:center;gap:12px;padding:20px;font-size:12px;display:flex}.audit svg{color:#4e9680}.audit time{color:#8a98a3;margin-left:auto;font-size:11px}.notice{color:#326d61;background:#e5f0ed;border-radius:7px;justify-content:space-between;align-items:center;margin-bottom:20px;padding:13px 17px;display:flex}.notice button{background:0 0;border:0;padding:0}footer{letter-spacing:1px;color:#99a5af;justify-content:space-between;margin-top:28px;font-size:9px;display:flex}footer span{letter-spacing:0}.overlay{z-index:10;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0b203c80;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:12px;width:520px;max-height:93vh;overflow:auto;box-shadow:0 20px 100px #0003}.modal-head{border-bottom:1px solid #e5eaef;justify-content:space-between;align-items:center;padding:22px;display:flex}.modal-head button{border:0}.form-body{gap:16px;padding:24px;display:grid}label{color:#506175;gap:7px;font-size:12px;display:grid}input,select{color:#344a5f;background:#fff;border:1px solid #dbe2e8;border-radius:6px;width:100%;min-width:0;padding:10px}input[type=checkbox]{accent-color:#217b6b;width:15px}.checks{grid-template-columns:1fr 1fr;gap:10px;display:grid}.checks label,.check{align-items:center;gap:9px;display:flex}.two{grid-template-columns:1fr 1fr;gap:14px;display:grid}.hint{margin:0;font-size:11px}.modal-actions{background:#f8fafb;border-top:1px solid #e5eaef;justify-content:flex-end;gap:10px;padding:18px 24px;display:flex}@media (max-width:1100px){aside{width:205px}main{width:calc(100% - 205px);margin-left:205px}.content{padding:25px 20px}.stats{gap:9px}.stats article{padding:15px}.legend{display:none}.rotation-grid{grid-template-columns:1fr}.banks{grid-template-columns:1fr 1fr}.date-nav input{display:none}}@media (max-width:720px){aside{width:100%;height:auto;padding:16px;position:static}.shell{display:block}.workspace,.aside-bottom{display:none}nav{gap:3px;margin-top:18px;display:flex;overflow:auto}nav button{padding:9px;font-size:11px}nav svg{display:none}main{width:100%;margin:0}header{height:45px;padding:0 20px}.avatar{padding:6px;font-size:10px}.content{padding:24px 14px}h1{font-size:24px}.title-row{align-items:flex-start}.title-row>button{min-width:100px;font-size:10px}.stats{grid-template-columns:1fr 1fr}.toolbar{flex-wrap:wrap;padding:15px}.subtoolbar{flex-wrap:wrap;padding:12px}.banks{grid-template-columns:1fr}.request{flex-wrap:wrap;padding:16px}.request-main{min-width:65%}footer span{display:none}.audit{flex-wrap:wrap}.audit time{margin-left:28px}}.pattern-editor{background:#f7faf9;border:1px solid #e0e9e5;border-radius:8px;gap:13px;padding:15px;display:grid}.pattern-pair{grid-template-columns:1fr 1fr auto;align-items:end;gap:10px;display:grid}.pattern-pair button{height:39px}.pattern-buttons{flex-wrap:wrap;gap:8px;display:flex}.pattern-buttons button{font-size:11px}.rotation-grid .section-head{flex-wrap:wrap;align-items:flex-start}.rotation-grid .badge{margin-left:0;line-height:1.7}.bid-form{grid-template-columns:2fr 1fr 2fr auto;align-items:end;gap:14px;display:grid}.bid-form button{height:39px}@media (max-width:900px){.bid-form{grid-template-columns:1fr 1fr}}.on-call{border-left:3px solid;border-radius:3px;margin-top:7px;padding:5px}.on-call small{margin:0}input[type=color]{cursor:pointer;height:38px;padding:4px}.shift{cursor:pointer}.subtoolbar{flex-wrap:wrap}.sheet-scroll{background:#fff;max-height:76vh;overflow:auto}.calendar-sheet{background:#fff;grid-template-columns:repeat(7,minmax(170px,1fr));gap:0;min-width:1190px;font-family:Arial,sans-serif;display:grid}.calendar-sheet.single-day{grid-template-columns:1fr;min-width:300px}.sheet-day{border-bottom:2px solid #8f9ca7;border-right:1px solid #adb7c0;min-height:210px;padding-bottom:10px}.sheet-day-heading{text-align:center;background:linear-gradient(#fff,#e9ecef);border-bottom:1px solid #a7b2bc;min-height:63px;padding:8px 4px 28px;position:relative}.sheet-day-heading strong{font-size:12px;display:block}.sheet-day-heading>span{margin-top:2px;font-size:10px;display:block}.sheet-day-heading button{color:#21657d;background:0 0;border:0;padding:2px 6px;font-size:10px;position:absolute;bottom:3px;right:5px}.sheet-today .sheet-day-heading{background:#ffd09b}.sheet-band{letter-spacing:.7px;text-align:center;color:#fff;background:#172d3e;margin:3px 2px 0;padding:4px;font-size:9px;font-weight:700}.sheet-supervisors{text-align:center;color:#637383;min-height:22px;padding:5px;font-size:9px;line-height:1.5}.sheet-division{background:#e7edf1;border-top:1px solid #b8c4ce;border-bottom:1px solid #b8c4ce;padding:3px 5px;font-size:10px;font-weight:700}.sheet-entry{cursor:pointer;border-bottom:1px solid #c4ced5;border-left:4px solid;min-height:47px;padding:5px 5px 6px}.sheet-entry:hover{outline-offset:-2px;outline:2px solid #488fa8}.sheet-entry:focus-visible{outline:2px solid #145db2}.sheet-person{color:#203244;justify-content:space-between;gap:4px;font-size:10px;display:flex}.sheet-person span{color:#5f7181;font-size:9px}.sheet-shift-name{color:#5c6e7e;margin:3px 0;font-size:9px}.sheet-hours{color:#263d50;justify-content:space-between;align-items:center;gap:3px;margin-top:4px;font-size:10px;display:flex}.sheet-hours b{letter-spacing:.3px;font-size:8px}.sheet-hours.call{border-left:3px solid;margin-top:4px;padding:4px}.sheet-note{white-space:pre-wrap;overflow-wrap:anywhere;color:#344b5f;margin-top:5px;font-size:10px;line-height:1.45}.sheet-no-shift{text-align:center;color:#91a0ab;padding:15px;font-size:10px}.sheet-day.outside-month{background:#f2f4f6}.outside-month .sheet-day-heading{color:#8a96a0}.sheet-leave{background:#fff1e5;border-bottom:1px solid #e7cfba;padding:6px;font-size:10px}.leave-band{background:#80644b}@media print{aside,header,.stats,.title-row,.subtoolbar,.toolbar,footer,.footnote{display:none!important}main{width:100%;margin:0}.content{padding:0}.sheet-scroll{max-height:none;overflow:visible}.calendar-sheet{grid-template-columns:repeat(7,1fr);min-width:0}.sheet-day{break-inside:avoid}.sheet-day-heading button{display:none}}.coverage-panel{border:1px solid;border-radius:9px;margin-bottom:20px;padding:17px 20px}.coverage-ok{color:#31694b;background:#edf7f1;border-color:#9dc9b0}.coverage-title{justify-content:space-between;align-items:center;gap:15px;display:flex}.coverage-panel p{color:inherit;margin:9px 0 0;font-size:11px}.coverage-list{background:#fff;max-height:280px;margin-top:12px;overflow:auto}.coverage-list>div{border-bottom:1px solid #ead8c4;gap:20px;padding:9px;font-size:11px;display:flex}.sheet-gap{color:#8a4c18;background:#ffe4c2;border-bottom:1px solid #dfad70;padding:5px;font-size:9px}.sheet-acting{align-items:center;gap:4px;margin-top:5px;font-size:9px;display:flex}.sheet-acting input{width:13px;height:13px}.sheet-supervisors div{padding:2px 0}.resolution-controls{flex-wrap:wrap;align-items:end;gap:10px;margin:14px 0;display:flex}.resolution-controls label:nth-child(2){flex:1;min-width:180px}.coverage-warning-row{flex-wrap:wrap;align-items:center}.coverage-warning-row>span:last-child{font-size:10px}.audit-explainer{color:#758695;padding:16px 23px;font-size:11px}.audit-detail{border-top:1px solid #e0e6eb}.audit-detail summary{cursor:pointer;flex-wrap:wrap;align-items:center;gap:15px;padding:18px 23px;font-size:12px;display:flex}.audit-detail summary span{color:#5c7c89;margin-left:auto}.audit-detail time{color:#8494a0;font-size:10px}.audit-body{padding:0 23px 20px}.audit-body p{font-size:11px}.audit-diff{grid-template-columns:1fr 1fr;gap:10px;margin:10px 0 20px;display:grid}.audit-diff>div{background:#f6f8fa;border:1px solid #e1e7ec;border-radius:6px;min-width:0;padding:12px}.audit-diff small{color:#8193a0;font-size:9px}.audit-diff pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:320px;font-size:10px;overflow:auto}@media (max-width:700px){.audit-diff{grid-template-columns:1fr}}textarea{font:inherit;resize:vertical;color:#344a5f;border:1px solid #dbe2e8;border-radius:6px;width:100%;padding:10px}.shift-change-banner{color:#fff;letter-spacing:1px;text-align:center;background:#6941a5;border:1px solid #56308e;border-radius:2px;margin:-5px -1px 6px;padding:5px 4px;font-size:9px;font-weight:800;line-height:1.4}.sheet-day-heading:has(.shift-change-banner){background:#f0e9fc}.schedule th .shift-change-banner{margin:-9px -12px 8px}.legend .shift-change-key{color:#6941a5;font-weight:700}.monthly-roster-scroll{max-height:78vh;position:relative;overflow:auto}.monthly-roster{border-collapse:separate;border-spacing:0;table-layout:fixed;width:max-content;min-width:100%;font-family:Arial,sans-serif}.monthly-roster th,.monthly-roster td{vertical-align:top;white-space:normal;overflow-wrap:anywhere;border-top:0;border-bottom:1px solid #b2bdc5;border-right:1px solid #b2bdc5;width:140px;min-width:140px;max-width:140px;padding:4px;font-size:10px}.monthly-roster thead{z-index:5;position:sticky;top:0}.monthly-roster thead th,.monthly-roster tfoot th{color:#fff;text-align:center;background:#234839;padding:7px 4px}.monthly-roster th strong{margin-top:3px;font-size:18px;display:block}.monthly-roster .roster-person{color:#fff;text-align:left;z-index:2;vertical-align:middle;background:#152b3c;width:175px;min-width:175px;max-width:175px;padding:9px;font-size:11px;position:sticky;left:0}.monthly-roster thead .roster-person{z-index:6;background:#152b3c}.roster-person small{color:#b8c7d2;margin-top:4px;font-size:9px;display:block}.monthly-roster thead .roster-weekend{background:#526779}.monthly-roster thead .roster-today{background:#b47222}.monthly-roster .shift-change-banner{letter-spacing:.4px;margin:5px 0 0;font-size:8px}.monthly-roster .roster-group th{text-align:left;color:#fff;letter-spacing:.7px;background:#101d28;max-width:none;padding:7px 12px;font-size:11px;font-weight:700}.monthly-roster .roster-group.a th{color:#123e38;background:#79e9d9}.monthly-roster .roster-group.b th{color:#244318;background:#a6ee68}.monthly-roster .roster-group.sergeants th{color:#452600;background:#f8a648}.roster-summary td{background:#edf6f2}.roster-summary b{font-size:10px}.roster-summary small{margin-top:3px;font-size:9px;line-height:1.5;display:block}.roster-summary.supervision td{background:#e7edf4}.roster-summary.coverage td{color:#82571d;background:#fff3e2}.roster-cell{cursor:pointer;background:#fff;height:60px;padding:2px!important}.roster-cell:hover{outline-offset:-2px;outline:2px solid #27837d}.roster-duty{border-left:3px solid;margin-bottom:2px;padding:5px 4px}.roster-duty>b{color:#334c5c;font-size:9px}.roster-duty>small,.roster-leave>small{margin-top:4px;font-size:10px;line-height:1.4;display:block}.roster-duty.unavailable{opacity:.65}.roster-oncall{padding:3px}.roster-notes{white-space:pre-wrap;overflow-wrap:anywhere;border-top:1px dotted #97a8ae;padding-top:4px;font-size:9px!important}.roster-leave{color:#fff;background:#272c32;padding:5px;font-size:9px}.roster-off{text-align:center;color:#c2cbd0;padding:15px 0;font-size:9px;display:block}.roster-help{color:#6d8291;background:#f6f8fa;max-width:calc(100vw - 320px);padding:14px;font-size:10px;position:sticky;left:0}@media (max-width:720px){.monthly-roster .roster-person{width:135px;min-width:135px;max-width:135px}.roster-help{max-width:95vw}}.roster-density{color:#6b8190;background:#f3f6f7;border-bottom:1px solid #c7d1d9;justify-content:space-between;align-items:center;padding:10px 16px;font-size:10px;display:flex}.roster-density button{padding:6px 10px;font-size:10px}.compact-roster th,.compact-roster td{width:78px;min-width:78px;max-width:78px}.compact-roster .roster-person{width:155px;min-width:155px;max-width:155px}.compact-roster .roster-duty>small{font-size:9px}.compact-roster .roster-group th{max-width:none}.monthly-roster thead th.coverage-red-header,.monthly-roster tfoot th.coverage-red-header,.schedule th.coverage-red-header{color:#fff!important;background:#b42318!important}.monthly-roster .coverage-red-cell{border:1px solid #ed8178;color:#9e1c13!important;background:#fee4e2!important}.red-issue{color:#b42318;font-weight:700}.red-day-flag{color:#fff;text-align:center;letter-spacing:.3px;background:#b42318;padding:4px;font-size:8px;font-weight:800}.sheet-gap{color:#b42318;background:#fee4e2;border-bottom:1px solid #ef9e96;font-weight:700}.coverage-red-day{box-shadow:inset 0 0 0 2px #d92d20}.coverage-red-day .sheet-day-heading{background:#fee4e2;border-top:4px solid #b42318}.coverage-warning{color:#a3251b;background:#fff0ee;border-color:#ed8178}.staff-cycle-list{border-top:1px solid #e1e7ec;margin-top:20px;padding-top:16px}.staff-cycle-list>b{color:#637f8d;font-size:11px}.staff-cycle-list button{text-align:left;justify-content:space-between;align-items:center;gap:10px;width:100%;margin-top:7px;font-size:11px;display:flex}.staff-cycle-list small{color:#718795;font-size:9px}.supervisor-call-label{color:#805617;background:#fff1cd;border-left:3px solid #9c6f20;line-height:1.5;margin-top:4px!important;padding:4px!important;font-size:9px!important;display:block!important}.report-filters{border-bottom:1px solid #e1e7ec;flex-wrap:wrap;gap:14px;padding:20px;display:flex}.report-filters label{min-width:160px}.report-note{padding:0 22px;font-size:11px}aside nav{overflow-y:auto}.stats strong{word-break:normal}.coverage-hover{cursor:help;outline-offset:2px}.coverage-hover:focus-visible{outline:2px solid #e3bc76}.sheet-day-heading>.coverage-hover{display:contents}.coverage-date-tooltip{z-index:1000;color:#234839;letter-spacing:0;pointer-events:none;background:#fff;border:1px solid #8aaba0;border-radius:8px;width:min(320px,100vw - 16px);max-height:280px;padding:14px 16px;font:12px/1.5 Arial,sans-serif;position:fixed;overflow:auto;box-shadow:0 6px 24px #10263840}.coverage-date-tooltip.has-issues{color:#9e1c13;background:#fff5f4;border:2px solid #d92d20}.coverage-date-tooltip p{color:inherit;margin:8px 0 0;font-size:12px}.schedule-scroll{max-height:78vh}.schedule thead{z-index:5;background:#f8fafb;position:sticky;top:0}.roster-view-controls{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.roster-view-controls label{white-space:nowrap;font-size:11px}.roster-panel:-webkit-full-screen{background:#fff;padding:12px;overflow:auto}.roster-panel:fullscreen{background:#fff;padding:12px;overflow:auto}.roster-panel:-webkit-full-screen .monthly-roster-scroll{max-height:calc(100vh - 75px)}.roster-panel:fullscreen .monthly-roster-scroll{max-height:calc(100vh - 75px)}.roster-panel:-webkit-full-screen .roster-help{max-width:100vw}.roster-panel:fullscreen .roster-help{max-width:100vw}.roster-panel .monthly-roster{transform-origin:0 0}@media (max-width:720px){.roster-density{flex-wrap:wrap;gap:10px}.roster-view-controls{gap:8px}.roster-view-controls button{padding:6px}.roster-panel .compact-roster .roster-person{width:155px;min-width:155px;max-width:155px}.roster-panel .monthly-roster:not(.compact-roster) .roster-person{width:175px;min-width:175px;max-width:175px}}.header-location{align-items:center;gap:18px;min-width:0;display:flex}.menu-toggle{white-space:nowrap;align-items:center;gap:5px;padding:7px 10px;font-size:11px;display:inline-flex}.shell>aside{transition:transform .2s,visibility .2s}.shell>main{min-width:0;transition:margin-left .2s,width .2s}.shell.menu-hidden>aside{visibility:hidden;pointer-events:none;transform:translate(-100%)}.shell.menu-hidden>main{width:100%;margin-left:0}.menu-hidden .roster-help{max-width:calc(100vw - 80px)}@media (max-width:720px){.shell.menu-hidden>aside{display:none}.header-location{gap:10px}.menu-toggle{padding:5px;font-size:10px}header .header-location>span{font-size:10px}}@media (prefers-reduced-motion:reduce){.shell>aside,.shell>main{transition:none}}.menu-edge-toggle{z-index:8;background:#fff;border-radius:0 7px 7px 0;padding:12px 4px;transition:left .2s;position:fixed;top:53%;left:248px;transform:translateY(-50%);box-shadow:2px 2px 8px #10263822}.menu-edge-toggle>span{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.shell.menu-hidden>.menu-edge-toggle{left:0}.toolbar .segmented,.toolbar{flex-wrap:wrap}@media (max-width:1100px) and (min-width:721px){.menu-edge-toggle{left:205px}}@media (max-width:720px){.menu-edge-toggle{top:50%;left:0}}@media (prefers-reduced-motion:reduce){.menu-edge-toggle{transition:none}}.shell>aside{background:var(--agency-sidebar);color:var(--agency-sidebar-text)}.shell .brand{color:var(--agency-accent)}.shell .brand small,.shell .workspace,.shell .aside-bottom,.shell .aside-bottom p,.shell nav button{color:var(--agency-sidebar-text)}.shell nav button.active{background:var(--agency-accent);color:var(--agency-accent-text);box-shadow:none}.shell button.primary,.shell button.publish{background:var(--agency-primary);color:var(--agency-primary-text);border-color:var(--agency-primary)}.shell .eyebrow{color:var(--agency-primary)}.agency-org{margin-top:6px;display:block}.shell>aside nav{flex:1;min-height:0;overflow-y:auto}.branding-settings form{gap:18px;max-width:850px;padding:24px;display:grid}.branding-settings textarea{width:100%;font:inherit;color:#344a5f;border:1px solid #dbe2e8;border-radius:6px;padding:10px}.branding-colors{flex-wrap:wrap;gap:24px;display:flex}.branding-colors input{width:100px;height:42px;padding:3px}.branding-preview{overflow-wrap:anywhere;border-radius:8px;padding:24px}.branding-preview small{margin:8px 0;display:block}.branding-preview h2{white-space:pre-wrap;margin:15px 0 25px;line-height:1.5}.branding-actions{flex-wrap:wrap;gap:12px;display:flex}.title-row h1{overflow-wrap:anywhere;white-space:pre-wrap}.agency-time-sheet{color:#111;break-after:page;background:#fff;border:1px solid #c7cdd1;margin:20px 0;padding:24px;font-family:Arial,sans-serif}.timesheet-heading{text-align:center}.timesheet-heading h2{margin:0;font-size:17px;font-weight:500}.timesheet-heading h3{margin:4px;font-size:15px;font-weight:500}.timesheet-heading p{letter-spacing:1px;font-size:10px}.timesheet-meta{justify-content:space-between;gap:30px;margin:22px 40px 14px;font-size:13px;line-height:1.8;display:flex}.timesheet-meta>div{min-width:240px}.timesheet-meta u{margin-left:20px}.signature-line{border-top:1px solid #111;min-width:250px;margin-top:22px}.timesheet-table-wrap{overflow-x:auto}.agency-pay-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:790px;font-size:12px}.agency-pay-table th,.agency-pay-table td{text-align:center;white-space:normal;border:1px solid #888;height:21px;font-weight:400;color:#111!important;background:#fff!important;padding:2px 3px!important}.agency-pay-table thead th{height:32px}.agency-pay-table tfoot tr:first-child th{font-weight:700}.leave-balance-table{border-collapse:collapse;width:100%;margin-top:30px;font-size:12px}.leave-balance-table th,.leave-balance-table td{text-align:center;font-weight:400;color:#111!important;background:#fff!important;border:0!important;padding:2px 8px!important}.leave-balance-table tbody th{text-align:left}.leave-balance-table tr:last-child td{font-weight:700;border-top:1px solid #111!important}.timesheet-footnotes{margin:18px 40px 0;font-size:11px}.timesheet-footnotes p{margin:3px 0}.payroll-alert{color:#9c201b;font-weight:700}.payroll-review-row{border-bottom:1px solid #ddd;flex-wrap:wrap;align-items:center;gap:12px;padding:8px;font-size:12px;display:flex}.agency-time-sheet details{margin-top:20px}.payroll-controls{margin-top:12px}.detached-reason{white-space:pre-wrap;overflow-wrap:anywhere}@media print{@page{size:landscape;margin:10mm}.shell{background:#fff!important;display:block!important}.shell>aside,.menu-toggle,main>header,.title-row,.stats,.notice,.payroll-controls,.content>section,.content>.segmented{display:none!important}main,.content{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}.agency-time-sheet{break-inside:avoid;box-shadow:none;border:0;margin:0;padding:0}.agency-time-sheet:last-child{break-after:auto}.agency-pay-table{min-width:0;font-size:10px}.agency-pay-table th,.agency-pay-table td{height:17px;padding:1px 2px!important}.timesheet-heading h2{font-size:14px}.timesheet-heading h3{font-size:12px}.timesheet-meta{margin:12px 30px 10px;font-size:11px}.signature-line{margin-top:14px}.leave-balance-table{margin-top:22px;font-size:11px}.timesheet-footnotes{margin-top:14px;font-size:9px}body{background:#fff!important}}.header-actions{align-items:center;gap:14px;display:flex}.appearance-toggle{font-size:12px}.coverage-jump-link{color:#8c281d;background:0 0;border:0;padding:4px;font-size:12px;text-decoration:underline}.coverage-jump-target{outline-offset:-4px;outline:4px solid #e7a328!important;box-shadow:inset 0 0 0 6px #fff2b5!important}.shell[data-appearance=night]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#e5edf5;background:#0f1722}.shell[data-appearance=night] header,.shell[data-appearance=night] section,.shell[data-appearance=night] .modal,.shell[data-appearance=night] .stats article,.shell[data-appearance=night] .banks article{color:#e4edf5;background:#182433;border-color:#354353}.shell[data-appearance=night] p,.shell[data-appearance=night] small,.shell[data-appearance=night] .hint,.shell[data-appearance=night] .stats article>span{color:#aebdce}.shell[data-appearance=night] button:not(.primary):not(.publish):not(.shift-change-banner),.shell[data-appearance=night] input,.shell[data-appearance=night] textarea,.shell[data-appearance=night] select{color:#e5edf5;background:#243244;border-color:#506074}.shell[data-appearance=night] nav button{background:0 0}.shell[data-appearance=night] nav button.active{background:#30465a}.shell[data-appearance=night] .segmented,.shell[data-appearance=night] .pattern-editor,.shell[data-appearance=night] .audit-explainer,.shell[data-appearance=night] .report-note{color:#c7d4e3;background:#202e3d}.shell[data-appearance=night] table:not(.agency-pay-table):not(.leave-balance-table) th,.shell[data-appearance=night] .roster-person,.shell[data-appearance=night] .person-col{color:#d5e1ee;background:#202d3d;border-color:#455568}.shell[data-appearance=night] table:not(.agency-pay-table):not(.leave-balance-table) td{border-color:#354454}.shell[data-appearance=night] .roster-summary td,.shell[data-appearance=night] .sheet-day,.shell[data-appearance=night] .sheet-day-heading,.shell[data-appearance=night] .sheet-supervisors{color:#e5edf5;background:#182433}.shell[data-appearance=night] .sheet-band,.shell[data-appearance=night] .sheet-division{color:#d5e1ee;background:#293b4f}.shell[data-appearance=night] .coverage-warning,.shell[data-appearance=night] .sheet-gap,.shell[data-appearance=night] .coverage-red-cell,.shell[data-appearance=night] .coverage-red-header{color:#ffd6d6!important;background:#49282b!important}.shell[data-appearance=night] .red-issue{color:#ffb7b7}.shell[data-appearance=night] .coverage-ok{color:#c7efdc;background:#123c32}.shell[data-appearance=night] .agency-time-sheet{color:#111;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff}.shell[data-appearance=night] .agency-time-sheet p,.shell[data-appearance=night] .agency-time-sheet small{color:#333}.shell[data-appearance=night] .agency-time-sheet .payroll-alert{color:#9c201b}.shell[data-appearance=night] .schedule th strong{color:#e5edf5}@media print{.header-actions{display:none!important}.shell[data-appearance=night]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#111!important;background:#fff!important}.shell[data-appearance=night] .agency-time-sheet p{color:#111!important}}.shell .shift,.shell .sheet-entry,.shell .roster-duty,.shell .shift small,.shell .sheet-person,.shell .sheet-person span,.shell .sheet-shift-name,.shell .sheet-hours,.shell .sheet-note,.shell .roster-duty>b,.shell .roster-duty small,.shell .on-call,.shell .on-call small{color:#152536!important}.shell .off,.shell .roster-off,.shell .sheet-no-shift{color:#48596b}.shell .shift.planned,.shell .roster-duty.unavailable{opacity:1}.shell[data-appearance=night] .shift,.shell[data-appearance=night] .sheet-entry,.shell[data-appearance=night] .roster-duty{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#e1ebe7!important}.shell[data-appearance=night] .shift.night{background:#e0e5f2!important}.shell[data-appearance=night] .shift.swing{background:#eee5ce!important}.shell[data-appearance=night] .roster-oncall,.shell[data-appearance=night] .sheet-hours.call,.shell[data-appearance=night] .on-call{color:#152536!important;background:#e9dfc8!important}.shell[data-appearance=night] .roster-off,.shell[data-appearance=night] .off,.shell[data-appearance=night] .sheet-no-shift{color:#48596b}.shell[data-appearance=night] .sheet-no-shift{background:#dce3ea}.shell .person-col small,.shell .roster-person small{color:#48596b}.shell[data-appearance=night] .person-col small,.shell[data-appearance=night] .roster-person small{color:#c7d4e3}.working-today-entry{border-bottom:1px solid #9aacae55;padding:4px 0}.working-today-entry:last-of-type{margin-bottom:5px}.working-today-entry small{line-height:1.5}.working-today-entry b{font-weight:800}.compact-agenda{background:#eef2f5;padding:12px}.agenda-help{color:#35485b;margin:0 0 12px;font-size:11px}.agenda-days{grid-template-columns:repeat(7,minmax(0,1fr));align-items:start;gap:8px;display:grid}.agenda-date{background:#fff;border:1px solid #c9d3dc;border-radius:8px;min-width:0;overflow:hidden}.agenda-date-head{z-index:1;background:#e4ebf0;gap:5px;padding:10px;font-size:12px;display:grid;position:sticky;top:0}.agenda-date-head>span{font-size:10px}.agenda-alert{color:#a31e16;font-size:10px;font-weight:700}.agenda-clear{color:#226149;font-size:10px}.agenda-unit h3{text-transform:uppercase;letter-spacing:.5px;color:#35485b;background:#f0f4f7;margin:0;padding:7px 9px;font-size:10px}.agenda-entry{border-bottom:1px solid #e1e6eb;padding:7px 9px}.agenda-edit{text-align:left;overflow-wrap:anywhere;width:100%;font-size:11px;line-height:1.4;color:#152536!important;background:0 0!important;border:0!important;justify-content:stretch!important;gap:4px!important;padding:0!important;display:grid!important}.agenda-edit b{font-size:11px}.agenda-edit strong{font-size:12px}.agenda-shift{color:#43576a;font-size:10px}.agenda-call{color:#3d3420;background:#f1e8ce;border-radius:3px;padding:3px 4px;font-size:10px}.agenda-entry details{margin-top:5px;font-size:10px}.agenda-entry p,.agenda-absence p{color:#35485b;white-space:pre-wrap;font-size:11px}.agenda-absence{margin:9px;font-size:11px}.agenda-absence .agenda-edit{padding:8px 0!important}.agenda-add{margin:8px;padding:5px;font-size:10px}.agenda-empty{padding:10px;font-size:11px}.agenda-day .agenda-days{grid-template-columns:1fr}.agenda-day .agenda-date{padding-bottom:8px}.agenda-day .agenda-unit{vertical-align:top;width:33.333%;padding:8px;display:inline-block}.agenda-day .agenda-date-head{align-items:center;gap:20px;display:flex}.agenda-day .agenda-edit{grid-template-columns:minmax(140px,1fr) auto}.agenda-day .agenda-shift,.agenda-day .agenda-call{grid-column:1/-1}.shell[data-appearance=night] .compact-agenda{background:#101c29}.shell[data-appearance=night] .agenda-help{color:#d3dfeb}.shell[data-appearance=night] .agenda-date{color:#152536;background:#e5ebef}.shell[data-appearance=night] .agenda-date-head{background:#cfdbe4}.shell[data-appearance=night] .agenda-unit h3{background:#d9e3e9}.shell[data-appearance=night] .agenda-entry p,.shell[data-appearance=night] .agenda-absence p{color:#35485b}@media (max-width:1050px){.agenda-days{grid-template-columns:repeat(4,minmax(0,1fr))}.agenda-day .agenda-unit{width:50%}}@media (max-width:650px){.agenda-days{grid-template-columns:repeat(2,minmax(0,1fr))}.agenda-day .agenda-unit{width:100%}.agenda-day .agenda-date-head{flex-wrap:wrap;gap:10px}}@media print{.compact-agenda{background:#fff;padding:0}.agenda-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.agenda-add,.agenda-help,.agenda-entry details{display:none}.agenda-date{break-inside:avoid}.agenda-date-head{position:static}.agenda-day .agenda-days{grid-template-columns:1fr}}.bulk-training-form{gap:18px;max-width:950px;padding:24px;display:grid}.bulk-training-form textarea{width:100%;font:inherit;border:1px solid #c8d2dc;border-radius:6px;padding:10px}.bulk-training-form fieldset{border:1px solid #c8d2dc;border-radius:8px;padding:16px}.bulk-selection-actions{gap:10px;margin:12px 0;display:flex}.bulk-participants{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-height:340px;display:grid;overflow:auto}.bulk-participants small{color:#48596b;margin-top:4px;display:block}@media (max-width:650px){.bulk-participants{grid-template-columns:1fr}}.product-brand{flex-direction:column;align-items:stretch;gap:12px;display:flex}.product-logo-surface{background:#eef2f5;border:1px solid #b9c6d0;border-radius:10px;padding:9px;line-height:0}.product-logo-surface img{object-fit:contain;width:100%;height:auto;display:block}.product-agency{text-align:center;letter-spacing:.2px!important;margin:0!important;font:600 11px/1.5 DM Sans,Arial,sans-serif!important}@media (max-width:720px){.product-brand{flex-direction:row;align-items:center}.product-logo-surface{flex-shrink:0;width:110px;padding:5px}.product-agency{text-align:left}}.bulk-date-chips{flex-wrap:wrap;gap:8px;display:flex}.bulk-date-chips button{font-size:12px}.product-logo-surface{background:#17212b;border:1px solid #3c5263;border-radius:7px;padding:0;overflow:hidden}.product-logo-surface img{width:100%;height:auto;display:block}.product-brand{gap:10px}.product-agency{font-size:10px!important}.product-brand+.workspace{margin-top:22px}.training-off-form{border-top:1px solid #d7b4b0;gap:14px;padding:20px;display:grid}.training-off-warnings{border-color:#c9594e}.training-off-form>button{justify-self:start}.training-conflict-dialog{color:#182a3d;background:#fff;border:2px solid #be3d30;border-radius:12px;width:min(600px,92vw);max-height:80vh;padding:24px;overflow:auto}.training-conflict-dialog::backdrop{background:#0c192bb3}.training-conflict-dialog p{color:#34485c;font-size:13px}.agenda-detached{background:#e6ebf1;border-left:3px solid #6b7f92;border-radius:4px;margin:8px;padding:10px}.agenda-detached .detached-reason{font-size:11px}.shell .detached-reason{white-space:normal;overflow-wrap:anywhere;border:1px solid #c66a00;border-radius:4px;padding:6px 7px;font-size:10px;font-weight:500;line-height:1.5;display:block;color:#111!important;background:#ffad42!important}.shell .detached-reason b{font-weight:800;color:#111!important}:is(.shell .roster-duty:has(.detached-reason),.shell .shift:has(.detached-reason),.shell .sheet-entry:has(.detached-reason),.shell .agenda-detached){color:#111!important;opacity:1!important;background:#ffad42!important;border-left-color:#b65c00!important}.shell .roster-duty .detached-reason,.shell .shift .detached-reason,.shell .sheet-entry .detached-reason,.shell .agenda-detached .detached-reason{border:0;border-radius:0;padding:3px 2px;background:0 0!important}.shell .agenda-detached .agenda-edit,.shell .agenda-detached .agenda-edit b{color:#111!important}.shell .sheet-entry:has(.detached-reason) .sheet-person{color:#111!important}.shell .sheet-entry:has(.detached-reason) .sheet-person span{color:#111!important}@media print{:is(.detached-reason,.roster-duty:has(.detached-reason),.shift:has(.detached-reason),.sheet-entry:has(.detached-reason),.agenda-detached){-webkit-print-color-adjust:exact;print-color-adjust:exact}}.shell .vacation-entry,.shell[data-appearance=night] .vacation-entry{border:1px solid #000;border-radius:4px;padding:6px 7px;font-size:10px;line-height:1.5;display:block;color:#fff!important;opacity:1!important;background:#000!important}.shell .vacation-entry *,.shell[data-appearance=night] .vacation-entry *{color:#fff!important}@media print{.vacation-entry{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.training-period-button{margin:14px 20px;font-weight:700}.training-off-warnings .roster-panel{border:1px solid #c7d2db;border-radius:8px;margin:10px 16px;overflow:hidden}.rotation-bulk-controls{justify-content:space-between;align-items:center;gap:15px;margin:16px 0;display:flex}.rotation-review-group th{background:#dce8ed;font-size:12px}.rotation-review-group label{color:inherit;font-weight:800}.shell[data-appearance=night] .rotation-review-group th{color:#fff!important;background:#30475a!important}.activity-change{border-top:1px solid #dbe3eb;padding:12px 0}.activity-change p{margin:5px 0;font-size:12px}.timesheet-signoff{color:#152536;background:#edf3f7;border:1px solid #bac8d5;margin:15px 0;padding:16px}.timesheet-signoff p{color:#34485b;font-size:12px}.shell .off,.shell .roster-off{border-radius:4px;min-height:55px;margin:0;padding:18px 4px;font-weight:700;display:block;color:#fff!important;background:#000!important}.shell .leave,.shell .roster-leave,.shell .sheet-leave,.shell .vacation-entry{color:#fff!important;background:#000!important}.shell .leave *,.shell .roster-leave *,.shell .sheet-leave *{color:#fff!important}.shell[data-appearance=night] .timesheet-signoff{color:#152536;background:#dce6ed}.shell .roster-cell:has(>.roster-off){color:#fff!important;background:#000!important}.shell .schedule td:has(>.off){color:#fff!important;background:#000!important}.shell .agenda-absence .vacation-entry,.shell[data-appearance=night] .agenda-absence .vacation-entry{color:#fff!important;background:#000!important}.shell .modal:has(.rotation-bulk-controls){width:min(1100px,96vw)}.shell .approved-leave-entry,.shell[data-appearance=night] .approved-leave-entry{border-radius:4px;padding:7px;font-size:11px;display:block;color:#fff!important;background:#000!important}@media print{.off,.roster-off,.leave,.roster-leave,.sheet-leave,.approved-leave-entry{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.vacation-priority-day{border-top:1px solid #d5dfe7;padding:14px 20px;font-size:12px}.vacation-priority-day>summary{cursor:pointer;line-height:1.6}.copy-shifts-panel{color:#153e34;background:#e7f5ef;border:1px solid #39897a;border-radius:10px;margin:12px 0;padding:16px}.copy-shifts-panel p{margin:8px 0}.copy-shifts-panel button{margin-right:12px}.copy-cell{-webkit-user-select:none;user-select:none;touch-action:none;cursor:crosshair}.monthly-roster .copy-source{outline-offset:-3px;outline:3px solid #246754}.monthly-roster .copy-selected{outline-offset:-3px;outline:3px solid #287caa;background:#b9dfef!important}[data-appearance=night] .copy-shifts-panel{color:#e6f6f0;background:#183b32}[data-appearance=night] .monthly-roster .copy-selected{background:#244b65!important}.coverage-neutral{color:#415669;background:#f1f5f8;border-color:#c4d0da}.shell[data-appearance=night] .coverage-neutral{color:#c7d4e3;background:#202e3d;border-color:#506074}.person-contact-trigger{cursor:help;outline-offset:3px;border-bottom:1px dotted}.person-contact-card{z-index:10000;box-sizing:border-box;color:#172c38;text-align:left;background:#fff;border:1px solid #cbd7df;border-radius:10px;width:min(304px,100vw - 16px);padding:16px;font-size:14px;line-height:1.4;position:fixed;box-shadow:0 8px 30px #102a4333}.person-contact-card>strong{margin-bottom:10px;font-size:16px;display:block}.person-contact-card dl{margin:0}.person-contact-card dl>div{grid-template-columns:105px minmax(0,1fr);gap:8px;padding:5px 0;display:grid}.person-contact-card dt{color:#506372}.person-contact-card dd{overflow-wrap:anywhere;margin:0;font-weight:600}@media print{.person-contact-card{display:none}.person-contact-trigger{border:0}}.schedule-workspace{--schedule-bg:#f3f6f9;--schedule-panel:#fff;--schedule-text:#172e44;--schedule-muted:#52677a;--schedule-border:#ccd8e2;--schedule-soft:#e8f5f0;--schedule-green:#126c61;--schedule-selected:#173e57;background:var(--schedule-bg);color:var(--schedule-text)}.schedule-workspace[data-appearance=night]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--schedule-bg:#101b28;--schedule-panel:#192737;--schedule-text:#eef4fa;--schedule-muted:#bdccda;--schedule-border:#4a6075;--schedule-soft:#203f3d;--schedule-green:#90ded0;--schedule-selected:#27556a}.schedule-workspace .content{max-width:1900px;margin:auto;padding:24px}.shell.schedule-workspace:-webkit-full-screen{background:var(--schedule-bg);width:100%;height:100%;overflow:auto}.shell.schedule-workspace:fullscreen{background:var(--schedule-bg);width:100%;height:100%;overflow:auto}.schedule-workspace .title-row{margin-bottom:16px}.schedule-workspace .title-row h1{color:var(--schedule-text);letter-spacing:0;font-size:28px}.schedule-workspace .title-row p{color:var(--schedule-muted);font-size:15px}.schedule-workspace .schedule-surface{background:var(--schedule-panel);border:1px solid var(--schedule-border);color:var(--schedule-text);overflow:visible}.schedule-controls{border-bottom:1px solid var(--schedule-border);padding:20px}.schedule-control-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;display:flex}.schedule-control-row:last-child{margin-bottom:0}.schedule-control-group{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.schedule-workspace .schedule-controls label{color:var(--schedule-text);align-items:center;gap:9px;margin:0;font-size:15px;font-weight:600;display:flex}.schedule-workspace .schedule-controls button,.schedule-workspace .schedule-controls select,.schedule-workspace .schedule-controls input,.schedule-workspace .daily-roster button{border:1px solid var(--schedule-border);background:var(--schedule-panel);min-height:44px;color:var(--schedule-text);border-radius:8px;max-width:100%;padding:10px 14px;font-size:15px}.schedule-workspace .schedule-controls select option{color:var(--schedule-text);background:var(--schedule-panel)}.schedule-workspace .schedule-controls button:hover,.schedule-workspace .daily-roster button:hover{background:var(--schedule-bg)}.schedule-workspace .schedule-controls button[aria-pressed=true]{color:#fff;background:var(--schedule-selected);border-color:var(--schedule-green)}:is(.schedule-workspace .schedule-controls button:focus-visible,.schedule-workspace .schedule-controls select:focus-visible,.schedule-workspace .schedule-controls input:focus-visible,.schedule-workspace .daily-roster button:focus-visible){outline:3px solid var(--schedule-green);outline-offset:3px}.schedule-workspace h2.schedule-range{color:var(--schedule-text);letter-spacing:0;font-size:21px;font-weight:700;line-height:1.4}.schedule-publication{background:var(--schedule-bg);color:var(--schedule-text);border-radius:6px;padding:6px 10px;font-size:14px}.schedule-publication.published{background:var(--schedule-soft);color:var(--schedule-green)}.schedule-more{border-top:1px solid var(--schedule-border);flex-wrap:wrap;align-items:center;gap:12px;margin-top:18px;padding-top:18px;display:flex}.schedule-review{color:var(--schedule-text);background:var(--schedule-panel);border:1px solid var(--schedule-border);border-radius:8px;margin:0 0 16px;padding:14px}.schedule-review>summary{cursor:pointer;font-size:15px;font-weight:600}.schedule-review .coverage-panel{margin-top:14px}.daily-roster{padding:20px}.daily-date-status{color:var(--schedule-muted);flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:22px;font-size:14px;display:flex}.daily-today{color:var(--schedule-green);background:var(--schedule-soft);border-radius:5px;padding:5px 9px;font-weight:700}.schedule-workspace .daily-unit{background:0 0;border:0;border-radius:0;margin:0 0 26px;overflow:visible}.daily-unit-heading{flex-wrap:wrap;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.schedule-workspace .daily-unit-heading h2{color:var(--schedule-text);margin:0;font-size:20px}.daily-unit-heading>span{color:var(--schedule-muted);font-size:14px}.daily-person-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:14px;display:grid}.daily-person-card{border:1px solid var(--schedule-border);background:var(--schedule-panel);min-width:0;color:var(--schedule-text);border-radius:10px;padding:18px}.daily-card-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:8px;display:flex}.schedule-workspace .daily-person-card h3{color:var(--schedule-text);overflow-wrap:anywhere;margin:0;font-size:19px;line-height:1.4}.daily-person-meta{color:var(--schedule-muted);margin-bottom:8px;font-size:14px}.daily-work-hours{letter-spacing:.2px;font-variant-numeric:tabular-nums;color:var(--schedule-text);margin:14px 0 10px;font-size:26px;font-weight:700}.daily-shift-badge{background:var(--schedule-soft);color:var(--schedule-green);border-radius:5px;padding:5px 8px;font-size:12px;font-weight:700}.daily-shift-badge.night{color:#384d7b;background:#e6ebfc}.daily-shift-badge.call{color:#704600;background:#fff0d1}.schedule-workspace[data-appearance=night] .daily-shift-badge.night{color:#c2d4ff;background:#293651}.schedule-workspace[data-appearance=night] .daily-shift-badge.call{color:#ffe0a1;background:#493b25}.daily-call-hours{color:var(--schedule-text);overflow-wrap:anywhere;padding:8px 0;font-size:14px}.daily-card-notes{border-top:1px solid var(--schedule-border);margin-top:12px;padding-top:12px;font-size:14px}.daily-card-notes summary,.daily-absence summary{cursor:pointer;color:var(--schedule-text)}.schedule-workspace .daily-card-notes p,.schedule-workspace .daily-absence p{color:var(--schedule-text);font-size:14px}.daily-absence{border:1px solid var(--schedule-border);border-radius:8px;margin:22px 0;padding:14px}.daily-edit{margin-top:14px}.agency-header-brand{align-items:center;gap:12px;min-width:0;display:flex}.agency-header-patch{object-fit:contain;flex-shrink:0;width:48px;height:48px}.agency-header-brand strong{overflow-wrap:anywhere;font-size:15px}.shell .company-title-row{grid-template-columns:minmax(0,1fr) 200px minmax(0,1fr);align-items:center;gap:22px;display:grid}.shell .company-title-row>.primary{justify-self:end}.company-masthead-logo{background:#102638;border-radius:9px;justify-self:center;width:200px;max-width:100%;overflow:hidden}.company-masthead-logo img{object-fit:contain;width:100%;height:auto;display:block}.shell .product-logo-surface.agency-patch-surface{aspect-ratio:1;width:160px;max-width:100%;box-shadow:none;background:0 0;border:0;margin:0 auto 8px}.shell .product-logo-surface.agency-patch-surface img{object-fit:contain;width:100%;height:160px;max-height:100%}.agency-patch-placeholder{min-height:145px;color:inherit;flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex}.agency-patch-placeholder span{font-size:13px}@media (max-width:1000px){.shell .company-title-row{grid-template-columns:minmax(0,1fr) 160px}.company-masthead-logo{width:160px}.shell .company-title-row>.primary{grid-column:1/-1;justify-self:start}}@media (max-width:480px){.shell .company-title-row{grid-template-columns:1fr;gap:12px}.company-masthead-logo{justify-self:start;width:170px}}.schedule-workspace .monthly-roster-scroll{max-height:70vh;overflow:auto}.schedule-workspace .monthly-roster thead th{z-index:3;position:sticky;top:0}.schedule-workspace .monthly-roster thead .roster-person{z-index:5}.schedule-workspace .monthly-roster .roster-person{min-width:190px;font-size:14px}.schedule-workspace .monthly-roster th{font-size:13px}.schedule-workspace .monthly-roster .roster-person small,.schedule-workspace .monthly-roster small{font-size:12px;line-height:1.5}.schedule-workspace .monthly-roster .roster-off{font-size:13px}.schedule-workspace .roster-view-controls{flex-wrap:wrap}.schedule-workspace .roster-view-controls button,.schedule-workspace .roster-density{font-size:13px}.schedule-workspace .roster-cell:not(.copy-cell){cursor:default}.schedule-workspace .schedule-large-text{font-size:18px}.schedule-workspace.schedule-large-text .daily-person-card h3{font-size:23px}.schedule-workspace.schedule-large-text .daily-work-hours{font-size:30px}.schedule-workspace.schedule-large-text .daily-person-meta,.schedule-workspace.schedule-large-text .daily-call-hours{font-size:17px}.schedule-workspace.schedule-large-text .monthly-roster small{font-size:15px}.schedule-workspace.schedule-large-text .monthly-roster .roster-person{font-size:17px}.shell.schedule-workspace .supervisor-call-label{white-space:normal;overflow-wrap:anywhere;line-height:1.5;font-size:12px!important}.shell.schedule-workspace[data-appearance=night] :is(.roster-duty,.sheet-entry) .supervisor-call-label{border-left-color:#d6ac60;color:#ffe0a1!important;background:#493b25!important}.shell.schedule-workspace[data-appearance=night] :is(.roster-duty,.sheet-entry) .supervisor-call-label :is(b,small,span){color:#ffe0a1!important}.schedule-workspace[data-appearance=night] .schedule-controls :is(h2,label,select,input,button),.schedule-workspace[data-appearance=night] .daily-roster :is(h2,h3),.schedule-workspace[data-appearance=night] .agency-header-brand{color:var(--schedule-text)}.schedule-workspace[data-appearance=night] .schedule-controls :is(select,input,button){background:var(--schedule-panel);border-color:var(--schedule-border)}.schedule-workspace[data-appearance=night] .schedule-controls :is(option,optgroup){color:#eef4fa;background:#192737}.schedule-workspace[data-appearance=night] .schedule-controls button[aria-pressed=true]{color:#fff;background:#27556a}.schedule-workspace[data-appearance=night] .schedule-controls button:hover{background:#2a4055}.schedule-workspace[data-appearance=night] .daily-person-card .person-contact-trigger{color:var(--schedule-text)}.shell.schedule-workspace[data-appearance=night] .schedule-controls button:not(.primary):not(.publish):not(.shift-change-banner){background:var(--schedule-panel);color:var(--schedule-text);border-color:var(--schedule-border)}.shell.schedule-workspace[data-appearance=night] .schedule-controls button[aria-pressed=true]:not(.primary):not(.publish):not(.shift-change-banner){color:#fff;background:#27556a;border-color:#90ded0}.shell.schedule-workspace[data-appearance=night] :is(.roster-duty,.sheet-entry){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#eef4fa!important;background:#21394a!important}.shell.schedule-workspace[data-appearance=night] :is(.roster-duty,.sheet-entry) :is(b,small,span,.sheet-shift-name,.sheet-hours,.sheet-note,.sheet-person){color:#eef4fa!important}.shell.schedule-workspace[data-appearance=night] :is(.roster-oncall,.sheet-hours.call){color:#ffe0a1!important;background:#493b25!important}.shell.schedule-workspace[data-appearance=night] :is(.roster-oncall,.sheet-hours.call) :is(b,small,span){color:#ffe0a1!important}@media (max-width:700px){.schedule-workspace .content{padding:16px}.schedule-controls,.daily-roster{padding:14px}.schedule-controls .schedule-control-group{width:100%}.schedule-controls .schedule-date-label{flex-wrap:wrap}.schedule-workspace .schedule-range{font-size:19px}.schedule-workspace .daily-work-hours{font-size:24px}.agency-header-brand strong{font-size:13px}.agency-header-patch{width:36px;height:36px}.schedule-control-row{gap:10px}}@media print{.schedule-workspace aside,.schedule-workspace header,.schedule-workspace .menu-toggle,.schedule-controls button,.schedule-controls input,.schedule-controls select,.schedule-more,.schedule-review,.daily-edit,.daily-add,.schedule-workspace .title-row>.primary{display:none!important}.schedule-workspace main{width:100%;margin:0}.schedule-workspace,.schedule-workspace[data-appearance=night]{--schedule-bg:#fff;--schedule-panel:#fff;--schedule-text:#111;--schedule-muted:#444;--schedule-border:#aaa;--schedule-soft:#eee;--schedule-green:#174b3e}.daily-person-card{break-inside:avoid}.schedule-workspace .monthly-roster-scroll{max-height:none;overflow:visible}.schedule-workspace .content>.schedule-surface{display:block!important}.schedule-workspace .content>.schedule-surface .schedule-controls{border:0}.schedule-workspace .schedule-surface .roster-density,.schedule-workspace .schedule-surface .roster-help{display:none!important}}.shell[data-appearance=night] label{color:#d5e1ee}.shell main .company-title-row{grid-template-columns:minmax(0,1fr) 320px minmax(0,1fr)}.shell .company-title-row .company-masthead-logo{justify-self:center;width:320px;max-width:100%}@media (max-width:1200px){.shell main .company-title-row{grid-template-columns:minmax(0,1fr) 320px}.shell .company-title-row .company-masthead-logo{width:320px}.shell main .company-title-row>.primary{grid-column:1/-1;justify-self:start}}@media (max-width:650px){.shell main .company-title-row{grid-template-columns:minmax(0,1fr);gap:16px}.shell .company-title-row .company-masthead-logo{justify-self:center;width:min(100%,320px)}}@media (min-width:721px){.shell:not(.menu-hidden)>aside{width:260px}.shell:not(.menu-hidden)>main{width:calc(100% - 260px);margin-left:260px}.shell:not(.menu-hidden)>.menu-edge-toggle{left:260px}}.shell.personnel-workspace .content{padding:44px}@media (max-width:1100px){.shell main .company-title-row{grid-template-columns:minmax(0,1fr)}.shell .company-title-row .company-masthead-logo{width:min(100%,320px)}}@media (max-width:720px){.shell.personnel-workspace .content{padding:18px}}
