:root{--navy:#122b35;--ink:#172e37;--muted:#647780;--green:#d9f36d;--border:#dfe6e7;--paper:#f5f7f7;--white:#fff;--accent:#206354;color:var(--ink);background:var(--paper);font-synthesis:none;font-family:DM Sans,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,.button{background:var(--navy);color:#fff;cursor:pointer;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:8px;padding:11px 17px;font-weight:600;line-height:1.35;text-decoration:none;display:inline-flex}button:hover,.button:hover{filter:brightness(1.12)}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #6aaf95}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Manrope,system-ui,sans-serif}h1{letter-spacing:-1.1px;font-size:32px;line-height:1.2}h2{letter-spacing:-.5px;font-size:19px}h3{font-size:15px}p{line-height:1.6}small{color:var(--muted);font-size:12px;line-height:1.6;display:block}strong{font-weight:600}a{color:var(--accent)}.muted{color:var(--muted);font-size:14px}.eyebrow{letter-spacing:1.9px;color:var(--accent);margin-bottom:10px;font-size:10px;font-weight:800}.help{color:var(--muted);margin-top:18px;font-size:12px}.secondary{color:var(--ink);border-color:var(--border);background:#fff}.text-button{color:var(--accent);background:0 0;border-radius:4px;padding:4px 2px;font-size:13px}.icon-button{color:inherit;background:0 0;border:none;min-width:34px;min-height:34px;padding:7px}.full{width:100%;margin-top:12px}.row-between,.section-title,.toolbar,.page-heading,.dialog-head{justify-content:space-between;align-items:center;gap:16px;display:flex}.button-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.field{flex-direction:column;gap:7px;margin-bottom:18px;font-size:13px;font-weight:600;display:flex}.field input,.field select,.field textarea{min-height:43px;color:var(--ink);background:#fff;border:1px solid #ccd8da;border-radius:7px;width:100%;padding:11px 12px;font-weight:400}.field textarea{resize:vertical}.field small{font-weight:400}.checkfield{align-items:flex-start;gap:10px;margin:14px 0;font-size:13px;line-height:1.55;display:flex}.checkfield input{accent-color:var(--accent);min-width:16px;margin:4px 0}.form-grid{grid-template-columns:1fr 1fr;gap:0 14px;display:grid}.checks{flex-wrap:wrap;gap:0 20px;display:flex}.error{color:#9a3b22;background:#fff0ec;border:1px solid #ebbbac;border-radius:9px;margin-bottom:18px;padding:13px 16px;font-size:14px}.info{background:#f1f5ea;border:1px solid #dde5c7;border-radius:9px;margin-bottom:12px;padding:14px 17px;font-size:13px;line-height:1.6}.badge{white-space:nowrap;color:#637078;background:#edf1f2;border-radius:5px;align-items:center;gap:5px;padding:5px 9px;font-size:11px;font-weight:600;display:inline-flex}.badge.green{color:#28604a;background:#e6f2e3}.badge.amber{color:#906117;background:#fff0d3}.badge.red{color:#9a4632;background:#ffe6df}.empty{color:var(--muted);text-align:center;padding:30px;font-size:14px}.loading{flex-direction:column;justify-content:center;align-items:center;gap:20px;height:100vh;display:flex}.loading svg{width:44px;height:44px}.shell{min-height:100vh;display:flex}.sidebar{background:var(--navy);color:#eaf1ef;z-index:10;flex-direction:column;width:238px;padding:32px 20px;display:flex;position:fixed;inset:0 auto 0 0}.brand{letter-spacing:1px;align-items:center;gap:10px;font-family:Manrope,sans-serif;font-size:19px;font-weight:800;display:flex}.brand-mark{background:var(--green);width:38px;height:38px;color:var(--navy);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.brand small{color:#aabfbe;letter-spacing:1.7px;font-size:8px;font-weight:600}.nav-label{letter-spacing:1.6px;color:#829f9f;margin:44px 12px 13px;font-size:9px}.sidebar nav{flex-direction:column;gap:5px;display:flex}.sidebar nav button{text-align:left;color:#aec4c4;background:0 0;border:none;justify-content:flex-start;gap:12px;padding:13px 12px;font-size:13px}.sidebar nav button.selected{color:#effbdf;background:#29434a}.sidebar nav button.selected svg{color:var(--green)}.count{background:var(--green);color:var(--navy);border-radius:4px;margin-left:auto;padding:1px 6px;font-size:11px}.sidebar-bottom{flex-direction:column;gap:10px;margin-top:auto;padding:24px 12px 0;font-size:12px;display:flex}.sidebar-bottom p{color:#afc8c6;gap:8px;display:flex}.sidebar-bottom small{color:#769997;margin-bottom:16px;font-size:10px}.sidebar-bottom button{color:#bed0cf;background:0 0;border:0;justify-content:flex-start;padding:6px 0;font-size:12px}.main{width:calc(100% - 238px);min-width:0;margin-left:238px}.topbar{border-bottom:1px solid var(--border);background:#fff;justify-content:space-between;align-items:center;gap:15px;height:76px;padding:0 38px;display:flex}.breadcrumb{color:var(--muted);font-size:12px}.breadcrumb span{color:#b4c1c3;padding:0 13px}.topbar-right{align-items:center;gap:13px;font-size:12px;display:flex}.topbar-right small{font-size:10px}.avatar{color:#426038;background:#e7eddc;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-weight:700;display:flex}.notifications{position:relative}.notifications i{background:#d19a3c;border-radius:50%;width:6px;height:6px;position:absolute;top:5px;right:7px}.mobile-menu{display:none}.content{max-width:1450px;margin:auto;padding:35px 38px 20px}.page-heading{margin-bottom:28px}.page-heading p.muted{margin-top:8px}.page-heading>button{flex-shrink:0}.panel{border:1px solid var(--border);background:#fff;border-radius:13px;margin-bottom:20px;padding:24px}.panel>h2{margin-bottom:12px}.section-title{margin-bottom:22px}.two-column{grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:23px;display:grid}.clock-card{background:var(--navy);color:#fff;border-radius:14px;flex-direction:column;min-height:360px;margin-bottom:22px;padding:30px;display:flex;position:relative;overflow:hidden}.clock-card:after{content:"";pointer-events:none;border:1px solid #315159;border-radius:50%;width:350px;height:350px;position:absolute;top:0;right:-180px}.clock-card .muted,.clock-card small{color:#a2bcbc}.clock-card .eyebrow{color:var(--green)}.clock-card .clock-time,.clock-time{letter-spacing:-3px;font-variant-numeric:tabular-nums;margin:28px 0 5px;font-family:Manrope,sans-serif;font-size:66px;font-weight:500;line-height:1.2}.clock-card .clock-time span{letter-spacing:0;font-size:20px}.clock-card button{z-index:1;position:relative}.clock-card .primary,.clock-card>button,.clock-card .button-row>button:first-child{background:var(--green);color:var(--navy)}.clock-card .secondary{color:#dce9e5;background:#27444c;border-color:#416069}.clock-card .button-row{margin-top:25px}.clock-card .row-between{z-index:1;position:relative}.clock-card .status{color:#d4e3dc;font-size:12px}.clock-card .status:before{content:"";background:var(--green);border-radius:50%;width:7px;height:7px;margin-right:8px;display:inline-block}.shift-detail{border-bottom:1px solid var(--border);align-items:center;gap:12px;margin:20px 0;padding-bottom:18px;display:flex}.shift-detail svg{color:var(--accent)}.shift-time{letter-spacing:-.7px;margin:12px 0;font-size:24px;font-weight:600}.list-row{border-bottom:1px solid #edf0f1;align-items:center;gap:12px;padding:15px 0;font-size:13px;display:flex}.list-row:last-child{border-bottom:0}.list-row .badge{margin-left:auto}.metric{letter-spacing:-1px;margin:17px 0 10px;font-family:Manrope,sans-serif;font-size:32px;font-weight:700}.stat-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin:20px 0;display:grid}.stat-grid section{border:1px solid var(--border);background:#fff;border-radius:11px;padding:21px}.stat-grid p{color:var(--muted);margin-bottom:11px;font-size:11px}.stat-grid strong{letter-spacing:-.8px;font-family:Manrope,sans-serif;font-size:25px}.stat-grid section:last-child{background:#eaf0df;border-color:#dce6cd}.week-control{align-items:center;gap:12px;font-size:12px;display:flex}.toolbar{margin:18px 0}.table-wrap{padding:0;overflow:auto}table{border-collapse:collapse;white-space:nowrap;text-align:left;width:100%;font-size:13px}th{letter-spacing:.35px;color:var(--muted);border-bottom:1px solid var(--border);background:#fafbfb;padding:15px 19px;font-size:10px;font-weight:600}td{vertical-align:middle;border-bottom:1px solid #e9eded;padding:17px 19px}tr:last-child td{border-bottom:0}td strong{display:block}td small{margin-top:3px;font-size:11px}.schedule-table th,.schedule-table td{vertical-align:top;min-width:122px;padding:15px 12px}.schedule-table td:first-child,.schedule-table th:first-child{min-width:145px}.shift{color:#254737;text-align:left;white-space:normal;background:#e9f2e9;border-left:3px solid #679878;border-radius:4px;width:100%;margin-bottom:6px;padding:10px;font-size:11px;display:block}.shift small{color:#6e8979;font-size:10px}.shift.today{background:#e8f1cc}.filters{flex-wrap:wrap;align-items:end;gap:13px;display:flex}.filters .field{flex:1;min-width:130px;margin-bottom:0}.subheading{margin:28px 0 16px}.audit-list details{border-bottom:1px solid var(--border);padding:16px 0;font-size:13px}.audit-list summary{cursor:pointer}.audit-list pre{background:var(--paper);max-height:240px;padding:12px;font-size:11px;overflow:auto}.approval-card{justify-content:space-between;align-items:center;gap:20px;display:flex}.approval-card p{margin:8px 0}.notice-list article{border-bottom:1px solid var(--border);padding:16px 0;font-size:13px}.notice-list p{color:var(--muted);margin-top:5px}footer{color:#8b9a9e;letter-spacing:.3px;padding:18px 38px 28px;font-size:10px}dialog{border:1px solid var(--border);width:min(590px,100vw - 28px);max-height:90vh;color:var(--ink);border-radius:16px;padding:28px;box-shadow:0 22px 90px #071c3350}dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f2d3980}.dialog-head{margin-bottom:18px}.dialog-head h2{font-size:23px}.dialog-head .icon-button{font-size:27px;line-height:1}.dialog-actions{justify-content:flex-end;gap:10px;margin-top:25px;display:flex}.dialog-head+p{margin-bottom:23px}.segment-card{border:1px solid var(--border);border-radius:9px;margin:15px 0;padding:16px}.segment-card>.row-between{margin-bottom:16px}.segment-card .field{font-size:12px}.credential{border:1px dashed var(--accent);word-break:break-all;background:#f0f4e9;border-radius:9px;margin:20px 0;padding:16px;font-family:monospace;font-size:20px}.toast{z-index:100;background:var(--navy);color:#fff;border-radius:10px;align-items:center;gap:10px;max-width:90vw;padding:15px 22px;font-size:13px;display:flex;position:fixed;bottom:26px;left:50%;transform:translate(-50%);box-shadow:0 8px 30px #122b3533}.toast svg{color:var(--green);flex-shrink:0}.login{grid-template-columns:1fr 1fr;min-height:100vh;display:grid}.login-story{background:var(--navy);color:#f6f9eb;flex-direction:column;justify-content:space-between;padding:52px 65px;display:flex;position:relative;overflow:hidden}.login-story:after{content:"";border:1px solid #45625b;border-radius:50%;width:500px;height:500px;position:absolute;bottom:-100px;right:-350px}.login-story .brand>span:last-child{color:#9ab5ad;letter-spacing:2px;font-size:11px}.login-story h1{letter-spacing:-2.7px;margin:18px 0 24px;font-size:clamp(40px,4.5vw,66px);line-height:1.15}.login-story .eyebrow{color:var(--green)}.login-story p:not(.eyebrow){color:#b3c6c1;max-width:340px;font-size:15px;line-height:1.8}.login-story small{color:#849f98;font-size:11px}.login-form{background:#fafbfa;justify-content:center;align-items:center;padding:45px;display:flex}.login-form form{width:min(350px,100%)}.login-icon{background:#e9f0da;border-radius:15px;margin-bottom:27px;padding:16px;display:inline-flex}.login-form h2{margin-bottom:12px;font-size:30px}.login-form .muted{margin-bottom:30px}.password-screen{place-items:center;min-height:100vh;padding:25px;display:grid}.password-screen form{border:1px solid var(--border);background:#fff;border-radius:14px;max-width:450px;padding:35px}.password-screen h1{margin:20px 0 12px;font-size:27px}.password-screen p{margin-bottom:24px}@media (min-width:1500px){.content{padding-top:48px}.clock-card{min-height:390px}}@media (max-width:1100px){.sidebar{width:212px;padding:27px 14px}.main{width:calc(100% - 212px);margin-left:212px}.topbar{padding:0 25px}.content{padding:28px 24px}.two-column{grid-template-columns:1fr 1fr;gap:16px}.stat-grid{gap:10px}.stat-grid section{padding:15px}.stat-grid strong{font-size:21px}.page-heading{align-items:flex-start}.clock-card{padding:24px}.clock-card .clock-time{font-size:54px}.week-control{gap:4px}}@media (max-width:760px){.sidebar{width:245px;transition:transform .2s;transform:translate(-100%);box-shadow:5px 0 30px #122b3533}.sidebar.open{transform:translate(0)}.main{width:100%;margin-left:0}.mobile-menu{display:inline-flex}.topbar{height:65px;padding:0 15px}.breadcrumb{flex:1;font-size:11px}.breadcrumb>span{padding:0 5px}.topbar-right{gap:5px}.topbar-right>div:not(.avatar){display:none}.content{padding:24px 17px 10px}.page-heading{flex-wrap:wrap;gap:14px;margin-bottom:22px}.page-heading h1{font-size:27px}.page-heading .muted{font-size:13px}.page-heading>button{padding:9px 13px;font-size:12px}.two-column{grid-template-columns:1fr;gap:0}.panel{padding:20px}.table-wrap{padding:0}.clock-card{min-height:335px;padding:24px}.clock-card .clock-time{margin-top:26px;font-size:60px}.clock-card .button-row{gap:8px}.clock-card .button-row button{flex:1;padding:13px;font-size:13px}.stat-grid{grid-template-columns:repeat(2,1fr);gap:10px}.stat-grid strong{font-size:25px}.filters{gap:10px}.filters .field{min-width:calc(50% - 10px);font-size:12px}.filters input,.filters select{font-size:13px}.toolbar{flex-wrap:wrap;align-items:flex-start}.approval-card{flex-direction:column;align-items:flex-start}.approval-card .button-row{width:100%}.approval-card .button-row button{flex:1}footer{padding:20px 17px;font-size:9px}.login{grid-template-columns:1fr}.login-story{min-height:230px;padding:28px}.login-story .brand{font-size:16px}.login-story h1{letter-spacing:-1px;margin:20px 0 9px;font-size:32px}.login-story h1 br,.login-story .eyebrow,.login-story small,.login-story p:not(.eyebrow){display:none}.login-form{align-items:flex-start;padding:32px 28px}.login-icon{display:none}.login-form h2{font-size:25px}.login-form .muted{margin-bottom:25px;font-size:13px}dialog{padding:21px}.dialog-head h2{font-size:21px}.form-grid{grid-template-columns:1fr}.toast{justify-content:center;width:calc(100% - 30px);bottom:15px}.schedule-table{min-width:1030px}.week-control{font-size:11px}.week-control .text-button{margin-left:8px}}.clock-grid{grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr);gap:24px;display:grid}.clock-place{color:#b7ceca;align-items:center;gap:9px;margin:9px 0 20px;font-size:13px;display:flex}.clock-summary{color:#9cbbb5;border-top:1px solid #36505a;border-bottom:1px solid #36505a;gap:30px;margin:8px 0 18px;padding:20px 0;font-size:11px;display:flex}.clock-summary strong{color:#e2eee8;margin-top:7px;font-size:16px;display:block}.clock-card .full{background:var(--green);color:var(--navy);margin-top:12px}.clock-card .full.secondary{color:#fff;background:#29464e}.clock-card .text-button{color:#c3d9a0;margin-top:15px;font-size:12px}.clock-card .help{color:#9ab5af;margin-top:16px;font-size:11px}.clock-card .info{color:#d2e5c1;background:#29424b;border-color:#46614b}.big-number{letter-spacing:-1px;margin:20px 0 4px;font-family:Manrope,system-ui,sans-serif;font-size:30px;font-weight:700}.small-stats{color:var(--muted);border-top:1px solid var(--border);border-bottom:1px solid var(--border);gap:25px;margin:15px 0;padding:20px 0;font-size:11px;display:flex}.small-stats strong{color:var(--ink);margin-top:6px;font-size:16px;display:block}.next-date{color:var(--muted);margin:24px 0 8px;font-size:12px}.shift-hours{letter-spacing:-1px;font-size:23px}.clock-side .panel>.text-button{margin-top:17px}.report-forgotten{color:var(--accent);text-align:left;background:#eef2e7;border:1px solid #dfe6d3;gap:13px;width:100%;padding:17px;font-size:12px;display:flex}.report-forgotten span{flex:1}.report-forgotten small{color:#70816b;margin-top:3px;font-size:10px}.schedule-table{border:1px solid var(--border);background:#fff;border-radius:11px;overflow:auto}.schedule-table th strong{color:var(--ink);margin-top:8px;font-size:20px;display:block}.schedule-table th.today{background:#f1f5e4}.schedule-table td{height:112px}.person-dot{color:#497c64;background:#edf1e6;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;margin-right:8px;display:inline-flex}.shift-chip{color:#547043;background:#e9f1e3;border-left:3px solid #7a9c59;border-radius:5px;flex-direction:column;align-items:flex-start;gap:7px;width:100%;margin-bottom:6px;padding:10px 8px;font-size:10px;display:flex}.shift-chip:disabled{opacity:1;cursor:default}.shift-chip.site-1{color:#527e90;background:#e6eff3;border-left-color:#699fb5}.shift-chip.site-2{color:#8c744b;background:#f4eee3;border-left-color:#bd9a5c}.shift-chip strong{font-size:11px}.filters>label{flex-direction:column;flex:1;gap:7px;min-width:130px;font-size:11px;font-weight:600;display:flex}.filters input,.filters select{border:1px solid var(--border);width:100%;min-height:42px;color:var(--ink);background:#fff;border-radius:7px;padding:11px 10px;font-size:12px}.stat-grid .stat{margin:0}.stat-grid .stat span{color:var(--muted);margin-bottom:12px;font-size:11px;display:block}.stat-grid .stat strong{font-size:23px;display:block}.approval{justify-content:space-between;align-items:center;gap:20px;display:flex}.approval p{margin:8px 0;font-size:13px}.notifications>span{background:#dba742;border-radius:50%;width:6px;height:6px;position:absolute;top:4px;right:6px}.compact details{margin-top:12px;font-size:12px}.compact pre{background:var(--paper);max-height:200px;padding:15px;overflow:auto}.compact p{margin-top:9px;font-size:13px}@media (max-width:760px){.clock-grid{grid-template-columns:1fr;gap:0}.clock-card{margin-bottom:20px}.clock-card .clock-time{font-size:67px}.clock-summary strong{font-size:15px}.clock-summary{justify-content:space-between;gap:16px}.stat-grid .stat strong{font-size:21px}.filters>label{min-width:calc(50% - 10px)}.approval{flex-direction:column;align-items:flex-start}.approval .button-row{width:100%}.approval .button-row button{flex:1}.schedule-table{min-width:0}.schedule-table table{min-width:1000px}}.preview-banner{flex-direction:column;gap:3px;margin-bottom:25px;display:flex}.preview-banner span{font-size:12px}.history-values{margin:12px 0;font-size:12px}.history-values>div{border-bottom:1px solid var(--border);justify-content:space-between;gap:20px;padding:7px 0;display:flex}.history-values dt{color:var(--muted)}.history-values dd{text-align:right;margin:0}.history-part{border:1px solid var(--border);border-radius:6px;margin:10px 0;padding:10px}.compact details h3{margin-top:20px}
