@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap";body{margin:0}:root{color:#23332f;font-synthesis:none;--ink:#23332f;--muted:#72817a;--line:#e4eae6;--green:#245c4b;--red:#a53d36;background:#edf1ee;font-family:DM Sans,sans-serif}*{box-sizing:border-box}body{background:linear-gradient(145deg,#f3f6f3,#e8efeb);min-width:320px;margin:0}button,input,select{font:inherit}button{cursor:pointer;color:#385448;background:#fff;border:1px solid #d5e0d9;border-radius:4px;padding:6px 10px;font-size:12px;font-weight:700}button:hover{background:#eef5f0;border-color:#9ab8a7}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:2px solid #47886a}input,select{min-width:0;color:var(--ink);background:#fff;border:1px solid #dce5df;border-radius:4px;padding:7px 9px;font-size:12px}input::placeholder{color:#98a59e}main{flex-direction:column;gap:14px;max-width:1920px;height:100dvh;margin:auto;padding:18px 24px 20px;display:flex}.topbar{flex:none;align-items:center;gap:20px;min-height:46px;display:flex}.brand{align-items:center;gap:10px;display:flex}.brand-mark{object-fit:contain;border-radius:5px;width:48px;height:48px;display:block}h1,h2{margin:0;font-family:Manrope,sans-serif}h1{color:#1d3830;font-size:19px;font-weight:800;line-height:1.1}.brand-subtitle,.eyebrow{color:#89978e;font-size:9px;font-weight:700}.brand-subtitle{margin-top:4px;display:block}.connection{color:#66776e;margin-left:auto;font-size:11px;font-weight:600}.connection-dot{background:#69a774;border-radius:50%;width:7px;height:7px;margin-right:6px;display:inline-block}.connection-divider{color:#c1ccc4;margin:0 5px}.topbar>button{color:#fff;background:#245c4b;border-color:#245c4b;padding:9px 13px}.topbar>button:hover{background:#34745f}.error,.note{border-radius:4px;flex:none;margin:0;padding:8px 12px;font-size:12px}.error{color:#92372e;background:#fbe9e6}.note{color:#305c45;background:#e4f2e9}.metrics{background:#fff;border:1px solid #e0e8e2;border-radius:6px;flex:none;grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.metric{border-right:1px solid var(--line);flex-direction:column-reverse;gap:4px;min-width:0;padding:12px 18px;display:flex}.metric:last-child{border-right:0}.metric .value{color:#243f34;font-family:Manrope,sans-serif;font-size:22px;font-weight:800;line-height:1.15}.metric .muted{font-size:11px;font-weight:600}.metric:nth-child(3) .value{color:#a25348}.metric:nth-child(5) .value{color:#ae7a30}.muted{color:var(--muted)}.workspace{flex:1;grid-template-rows:minmax(0,1fr) minmax(0,1fr);grid-template-columns:minmax(220px,1fr) minmax(0,2fr) minmax(240px,1.15fr);gap:12px;min-height:0;display:grid}.panel{background:#fff;border:1px solid #e0e8e2;border-radius:6px;flex-direction:column;min-width:0;min-height:0;padding:14px;display:flex}.workers-panel{grid-area:1/1}.push-panel{grid-area:2/1}.shifts-panel{grid-area:1/2/2/4}.messages-panel{grid-area:2/2}.events-panel{grid-area:2/3}.section-heading{flex:none;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.eyebrow{color:#86968d;margin-bottom:4px;display:block}h2{color:#273e34;font-size:15px;font-weight:800;line-height:1.2}.count{color:#65796c;background:#eef4ef;border-radius:4px;padding:4px 7px;font-size:11px;font-weight:700}.tag{color:#997337;background:#fbf3e3;border-radius:4px;padding:5px 7px;font-size:9px;font-weight:700}.cards{margin:0;padding:0;list-style:none}.cards li{color:#78877e;overflow-wrap:anywhere;border-bottom:1px solid #eef2ef;padding:10px 0;font-size:11px;line-height:1.6}.cards li:first-child{padding-top:2px}.cards li strong{color:#2e443a;font-size:12px}.scroll-content{flex:1;min-height:0;overflow:auto}.push-panel>select{width:100%;margin-bottom:10px}.row{flex:none;gap:6px;margin-bottom:10px;display:flex}.row input{flex:1}.row button{white-space:nowrap}.shifts-panel form button{color:#fff;background:#245c4b;border-color:#245c4b}.shifts-panel form button:hover{background:#34745f}.table-scroll{flex:1;min-height:0;overflow:auto}table{border-collapse:collapse;width:100%;font-size:11px}th,td{text-align:left;vertical-align:top;border-bottom:1px solid #edf1ee;padding:8px}th{z-index:1;color:#8a9a90;white-space:nowrap;background:#f7f9f7;font-size:10px;font-weight:700;position:sticky;top:0}td{color:#52665a;line-height:1.4}td:first-child{color:#2f473a;font-weight:600}.shifts-panel table{min-width:650px}.messages-panel table{min-width:680px}.events-panel table{min-width:320px}.actions{flex-wrap:wrap;gap:4px;min-width:160px;display:flex}.actions button,.events-panel td button{padding:4px 6px;font-size:10px}.badge{color:#64746a;white-space:nowrap;background:#edf1ee;border-radius:4px;padding:3px 6px;font-size:10px;font-weight:700;display:inline-block}.badge.Booked,.badge.queued{color:#567390;background:#edf3fa}.badge.Confirmed,.badge.delivered{color:#3c7951;background:#e6f4ea}.badge.Changed,.badge.retrying{color:#a27735;background:#fbf2dd}.badge.Cancelled,.badge.failed,.badge.bounced{color:#a34a3d;background:#faeae7}@media (width<=1050px){main{height:auto;min-height:100dvh}.workspace{grid-template-rows:auto;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.workers-panel,.push-panel,.shifts-panel,.messages-panel,.events-panel{grid-area:auto;min-height:220px}.shifts-panel,.messages-panel{grid-column:span 2}.table-scroll,.scroll-content{max-height:320px}}@media (width<=600px){main{gap:12px;padding:14px}.topbar{flex-wrap:wrap;gap:10px}.connection{order:3;width:100%;margin:0}.topbar>button{margin-left:auto}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.metric{border-bottom:1px solid var(--line);padding:10px 12px}.metric:nth-child(2n){border-right:0}.metric:last-child{border-bottom:0;grid-column:span 2}.workspace{flex-direction:column;display:flex}.panel{min-height:180px}.shifts-panel{min-height:260px}.row{flex-wrap:wrap}.shifts-panel .row input{flex:40%}.shifts-panel .row input[type=datetime-local]{flex-basis:60%}}.worker-app{color:#23332f;background:#f4f6f4;min-height:100dvh;font-family:DM Sans,sans-serif}.worker-header{background:#fff;border-bottom:1px solid #e6ebe7;height:72px}.worker-header-inner{justify-content:space-between;align-items:center;max-width:1440px;height:100%;margin:0 auto;padding:0 42px;display:flex}.worker-brand{color:#1d3830;align-items:center;gap:11px;font-family:Manrope,sans-serif;font-size:17px;font-weight:800;text-decoration:none;display:flex}.worker-brand img{object-fit:contain;width:52px;height:52px}.worker-brand small{color:#829287;margin-top:3px;font:700 9px DM Sans,sans-serif;display:block}.worker-account{align-items:center;gap:9px;font-size:12px;font-weight:700;display:flex}.account-dot{color:#2a6850;background:#dfede4;border-radius:50%;place-items:center;width:34px;height:34px;font-weight:700;display:grid}.worker-shell{grid-template-columns:220px minmax(0,1fr);max-width:1440px;min-height:calc(100dvh - 72px);margin:0 auto;display:grid}.worker-sidebar{background:#fff;border-right:1px solid #e6ebe7;flex-direction:column;padding:36px 20px;display:flex}.sidebar-label,.worker-overline{color:#899a8f;font-size:10px;font-weight:700}.sidebar-label{margin-bottom:15px;padding:0 12px}.sidebar-current{color:#245c4b;background:#eaf3ed;border-radius:5px;align-items:center;gap:10px;padding:11px 12px;font-size:13px;font-weight:700;display:flex}.sidebar-current svg:last-child{margin-left:auto}.sidebar-footer{color:#8a9a8f;border-top:1px solid #e9eeea;flex-direction:column;gap:8px;margin-top:auto;padding:18px 12px 0;font-size:11px;line-height:1.5;display:flex}.sidebar-footer strong{color:#395d4b;font-family:Manrope,sans-serif;font-size:15px}.sidebar-symbol{color:#b98542;font-size:22px}.worker-app .worker-main{width:100%;min-width:0;max-width:1100px;height:auto;margin:0 auto;padding:34px 52px 25px;display:block}.worker-breadcrumb{color:#a0aea5;align-items:center;gap:8px;font-size:10px;font-weight:700;display:flex}.worker-breadcrumb span{color:#4b745e}.worker-heading{justify-content:space-between;align-items:center;margin:30px 0 26px;display:flex}.worker-heading h1{color:#1d3930;margin:8px 0 7px;font-size:32px}.worker-heading p{color:#75867b;margin:0;font-size:13px}.worker-heading-icon{color:#4c8062;background:#e4eee6;border-radius:50%;place-items:center;width:48px;height:48px;display:grid}.worker-alert,.worker-notice{border-radius:5px;margin:0 0 16px;padding:12px 14px;font-size:13px}.worker-alert{color:#a03830;background:#fbeae7}.worker-notice{color:#286441;background:#e4f2e8;align-items:center;gap:8px;display:flex}.worker-stats{background:#fff;border:1px solid #e4ebe5;border-radius:6px;grid-template-columns:repeat(3,1fr);display:grid}.worker-stats>div{border-right:1px solid #edf1ed;padding:18px 22px}.worker-stats>div:last-child{border-right:0}.worker-stats span,.worker-stats small,.worker-stats strong{display:block}.worker-stats span{color:#8a9a90;font-size:10px;font-weight:700}.worker-stats strong{color:#274c3a;margin:7px 0 2px;font:800 24px Manrope,sans-serif}.worker-stats small{color:#8b9b91;font-size:11px}.worker-stats>div:nth-child(2) strong{color:#b27b32}.attention{background:#fff9ed;border:1px solid #f1e2c2;border-radius:6px;align-items:center;gap:13px;margin-top:18px;padding:15px 17px;display:flex}.attention-icon{color:#ae7b35;background:#f8ebd1;border-radius:50%;flex:none;place-items:center;width:36px;height:36px;display:grid}.attention strong,.attention span{display:block}.attention strong{color:#795b31;font-size:12px}.attention span{color:#9c8565;margin-top:3px;font-size:11px}.attention button{color:#94692f;white-space:nowrap;background:0 0;border:0;align-items:center;gap:5px;margin-left:auto;display:flex}.jobs-section{margin-top:35px}.jobs-title{justify-content:space-between;align-items:end;display:flex}.jobs-title h2{margin-top:5px;font-size:19px}.jobs-title>span{color:#91a096;font-size:11px}.worker-tabs{border-bottom:1px solid #dfe7e0;gap:24px;margin-top:19px;display:flex;overflow-x:auto}.worker-tabs button{color:#8b9a90;background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;flex:none;padding:10px 0;font-size:12px}.worker-tabs button.active{color:#245c4b;border-color:#34785a}.worker-tabs button span{color:#9eada3;margin-left:3px;font-size:10px}.job-list{flex-direction:column;gap:10px;padding-top:14px;display:flex}.job-row{background:#fff;border:1px solid #e4ebe5;border-radius:6px;align-items:center;gap:18px;padding:16px 18px;display:flex}.job-date{color:#4c7960;background:#edf4ee;border-radius:5px;flex-direction:column;flex:none;justify-content:center;align-items:center;width:54px;height:58px;display:flex}.job-date span{font-size:10px;font-weight:700}.job-date strong{color:#315d43;font:800 21px Manrope,sans-serif}.job-details{flex:1;min-width:0}.job-heading{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.job-heading h3{color:#30493a;overflow-wrap:anywhere;margin:0;font:800 14px Manrope,sans-serif}.job-status{color:#6d8073;background:#f0f3f0;border-radius:4px;padding:4px 7px;font-size:10px;font-weight:700}.status-booked,.status-changed{color:#a47631;background:#fff2d9}.status-confirmed{color:#397c52;background:#e4f3e8}.status-cancelled{color:#a34a3d;background:#faeae7}.job-location,.job-meta,.job-meta span{align-items:center;gap:5px;display:flex}.job-location{color:#7e9084;overflow-wrap:anywhere;margin-top:5px;font-size:11px}.job-meta{color:#72867a;flex-wrap:wrap;gap:15px;margin-top:9px;font-size:11px}.job-meta svg,.job-location svg{color:#99ad9f;flex:none}.job-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.worker-app button.worker-primary{color:#fff;background:#276247;border-color:#276247}.worker-app button.worker-primary:hover{background:#347b59}.worker-app button.worker-danger{color:#a53d36;background:0 0;border-color:#d7aaa4}.worker-app button.worker-danger:hover{background:#fdf2ef}.worker-empty{color:#8da095;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:160px;font-size:12px;display:flex}.worker-empty strong{color:#54705f;font-size:13px}.worker-footer{color:#98a89e;border-top:1px solid #e4ebe5;margin-top:42px;padding-top:18px;font-size:11px;font-weight:700}.worker-footer span{float:right;font-weight:400}.dialog-backdrop{z-index:20;background:#192d228c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.worker-dialog{background:#fff;border-radius:6px;width:min(100%,430px);padding:26px;position:relative;box-shadow:0 18px 60px #10271d33}.worker-dialog h2{margin:10px 0 15px;font-size:20px}.worker-dialog p{color:#718578;margin:6px 0;font-size:13px}.worker-dialog .dialog-close{color:#8b9a90;border:0;place-items:center;padding:4px;display:grid;position:absolute;top:16px;right:16px}.dialog-actions{justify-content:end;gap:8px;margin-top:25px;display:flex}@media (width<=800px){.worker-shell{display:block}.worker-sidebar{display:none}.worker-app .worker-main{padding:28px 24px}.worker-header-inner{padding:0 24px}}@media (width<=520px){.worker-header-inner{padding:0 15px}.worker-account>span:last-child{display:none}.worker-app .worker-main{padding:23px 15px}.worker-heading{margin:24px 0}.worker-heading h1{font-size:26px}.worker-heading-icon{display:none}.worker-stats>div{padding:14px 10px}.worker-stats span{font-size:9px}.worker-stats small{font-size:10px}.attention{flex-wrap:wrap}.attention>div:nth-child(2){flex:1}.attention button{margin-left:48px}.worker-tabs{gap:18px}.job-row{flex-wrap:wrap;align-items:flex-start;gap:12px}.job-details{flex:calc(100% - 70px)}.job-actions{width:100%;padding-left:66px}}
