@import url('../vendor/fonts.css');
:root{--bg:#f6f7f5;--panel:#fff;--ink:#172b2b;--muted:#788481;--line:#e7ece8;--green:#2b5d4c;--orange:#eb9b64;--serif:Georgia,'Times New Roman',serif;--sans:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #cf935e;outline-offset:3px}img{max-width:100%;box-shadow:0 8px 28px #12382b1a;filter:drop-shadow(0 0 9px #dba5731c)}.app-shell{display:flex;min-height:100vh}.sidebar{width:245px;position:fixed;inset:0 auto 0 0;background:#112326;color:#d2ddda;padding:34px 22px;z-index:20;display:flex;flex-direction:column}.brand{display:flex;gap:11px;align-items:center;font-weight:600;font-size:16px;letter-spacing:-.5px}.logo-box{background:#fff;border-radius:9px;padding:8px;width:49px;height:44px;display:flex;align-items:center;box-shadow:0 0 20px #c9ad7130}.logo-box img{width:100%;height:auto}.brand small{display:block;letter-spacing:1.6px;font-size:8px;color:#90a7a2;margin-top:5px;font-weight:500}.workspace-label{font-size:9px;letter-spacing:1.8px;color:#7c9690;margin:49px 14px 14px;display:flex;justify-content:space-between}.sidebar nav{display:grid;gap:6px}.sidebar nav a{display:flex;gap:13px;align-items:center;padding:12px 14px;font-size:12px;border-radius:8px;color:#aabbb6;transition:.2s}.sidebar nav a>span{width:21px;font-size:21px;line-height:1}.sidebar nav a b{margin-left:auto;background:#46685a;font-weight:500;font-size:9px;border-radius:4px;padding:2px 5px}.sidebar nav a.active,.sidebar nav a:hover{background:#2a433f;color:#eff6f0}.sidebar nav a.active{box-shadow:inset 3px 0 #dcab80}.sidebar-bottom{margin-top:auto;padding:38px 14px 0;font-size:11px;position:relative}.security-dot{width:6px;height:6px;border-radius:50%;background:#86c49d;display:inline-block;margin-right:6px;box-shadow:0 0 12px #74ad82}.sidebar-bottom p{color:#839a93;font-size:10px;line-height:1.8}.sidebar-line{height:1px;background:#2a3d39;margin:22px 0}.sidebar-bottom>small{font-size:8px;letter-spacing:1.5px;color:#718880}.main-shell{margin-left:245px;width:calc(100% - 245px)}.topbar{height:88px;padding:0 42px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;background:#ffffffab}.breadcrumb{font-size:11px;color:#8b9591}.breadcrumb span{margin:0 14px;color:#c3cdc7}.breadcrumb strong{color:#42534d;font-weight:500}.topbar-right{display:flex;align-items:center;gap:12px}.local-pill{font-size:10px;padding:7px 12px;border:1px solid #dfe7e0;border-radius:30px;margin-right:16px;color:#65746a}.local-pill i{display:inline-block;width:5px;height:5px;background:#759a7d;border-radius:50%;margin-right:5px}.avatar{background:#e9e6dc;color:#726550;border:3px solid white;box-shadow:0 0 0 1px #e3e6df;border-radius:50%;width:37px;height:37px;display:grid;place-items:center;font-family:var(--serif);font-size:18px}.identity{display:grid;font-size:11px}.identity small{font-size:9px;color:var(--muted);margin-top:2px}.icon-btn{border:0;background:transparent;color:#6c7b73;padding:5px 7px;font-size:18px}.menu-toggle{display:none}main{padding:34px 42px 0;max-width:1620px;margin:0 auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:29px}.eyebrow{font-size:9px;font-weight:600;letter-spacing:2px;color:#6e8376}.eyebrow.light{color:#a5bfb1}h1,h2,h3,p{margin-top:0}h1{font-size:36px;font-weight:400;letter-spacing:-1.3px;margin:7px 0 8px;line-height:1.2}h1 em{font-family:var(--serif);font-weight:400;color:#48725a}h2{font-size:18px;letter-spacing:-.5px;font-weight:500;margin-bottom:0}h3{font-weight:500}p.muted{font-size:12px;margin:0}.muted{color:var(--muted)}.period-picker{display:flex;align-items:center;border:1px solid #dfe5df;background:#fff;border-radius:7px;padding:2px 9px}.period-picker input{border:0;font-size:11px;padding:10px 4px;background:transparent}.hero-grid{display:grid;grid-template-columns:1.36fr 1fr;gap:22px}.payroll-hero{padding:28px 31px;border-radius:13px;background:linear-gradient(120deg,#163c36,#234d3d);color:white;position:relative;overflow:hidden;min-height:264px;box-shadow:0 8px 20px #25453912}.hero-top{display:flex;justify-content:space-between;align-items:center;position:relative;z-index:2}.status{font-size:9px;letter-spacing:.2px;color:#49795e;background:#edf4ec;border-radius:30px;display:inline-block;padding:5px 9px;white-space:nowrap}.status.dark{color:#c4d5c7;background:#ffffff12;border:1px solid #ffffff18}.payroll-hero>p{font-size:12px;color:#b8cdbf;margin:21px 0 5px;position:relative;z-index:2}.hero-amount{font-size:38px;letter-spacing:-1.5px;font-weight:500;position:relative;z-index:2;line-height:1.2}.hero-amount>span{font-size:10px;letter-spacing:.7px;color:#a8bdae;margin-left:13px}.payroll-hero .hero-caption{margin:10px 0 20px;font-size:10px;color:#9eb8a5}.hero-caption span{padding:0 8px}.hero-rule{height:1px;background:#ffffff20}.hero-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:19px;position:relative;z-index:2}.hero-bottom small{font-size:8px;letter-spacing:1.3px;color:#9db7a6;display:block}.hero-bottom strong{font-size:14px;font-weight:500;display:block;margin-top:4px}.button{display:inline-flex;align-items:center;justify-content:center;gap:15px;padding:11px 17px;border-radius:7px;border:1px solid #dde4dc;background:#fff;font-weight:500;font-size:11px;transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-2px);box-shadow:0 6px 18px #253e2915}.button.primary{background:#234f40;color:#fff;border-color:#234f40}.button.orange{background:#efb184;color:#26352b;border:0}.button.full{width:100%;justify-content:space-between}.hero-orbit{position:absolute;border:1px solid #ffffff09;width:280px;height:280px;border-radius:50%;right:-85px;top:-65px}.orbit-two{width:345px;height:345px;right:-116px;top:-96px}.office-card{position:relative;border-radius:13px;overflow:hidden;min-height:264px}.office-card>img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform 1s}.office-card:hover>img{transform:scale(1.04)}.media-glow{box-shadow:0 10px 24px #1b3d2d1c,0 0 22px #c9af7720;transition:box-shadow .4s,transform .4s}.media-glow:hover{box-shadow:0 15px 32px #1b3d2d2b,0 0 30px #b3924a33}.office-overlay{position:absolute;inset:0;padding:26px;background:linear-gradient(0deg,#101e1ae0,transparent 150%);color:white;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end}.glass-pill{font-size:8px;letter-spacing:1.8px;border:1px solid #ffffff45;border-radius:30px;padding:5px 9px;margin-bottom:auto;background:#ffffff0d;backdrop-filter:blur(10px)}.office-overlay h2{font-size:29px;font-family:var(--serif);font-weight:400;line-height:1.08;margin-bottom:10px}.office-overlay p{font-size:10px;color:#e0e4d9;margin:0}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:23px 0}.stat-card{background:white;border:1px solid var(--line);border-radius:11px;padding:18px 21px 20px}.stat-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.stat-icon{width:33px;height:33px;border-radius:8px;display:grid;place-items:center;font-size:19px}.mint{background:#eaf0e9;color:#5f8067}.blue{background:#e9eff1;color:#667f8a}.peach{background:#faf0e5;color:#b58c64}.lilac{background:#eeeaf5;color:#9a85ad}.stat-card p{font-size:11px;color:#738176;margin:0 0 4px}.stat-card h3{font-size:23px;letter-spacing:-.6px;margin:0 0 7px}.stat-card small{color:#91a094;font-size:9px}.lower-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:22px;margin-bottom:23px}.panel{border:1px solid var(--line);background:#fff;border-radius:11px;margin-bottom:23px;overflow:hidden}.lower-grid .panel{margin-bottom:0}.panel-heading{display:flex;align-items:center;justify-content:space-between;padding:23px 25px 19px;gap:15px}.panel-heading h2{margin-top:5px}.subtle-tag{border:1px solid var(--line);font-size:9px;color:#91a091;border-radius:5px;padding:5px 8px}.breakdown{display:flex;align-items:center;gap:32px;padding:10px 28px 29px}.donut{width:145px;height:145px;flex:0 0 145px;background:conic-gradient(#527967 0 82%,#dea775 82% 93%,#abbab0 93% 100%);border-radius:50%;padding:16px;transform:rotate(25deg)}.donut>div{height:100%;border-radius:50%;background:white;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(-25deg)}.donut strong{font-size:29px;font-weight:500;letter-spacing:-1px;line-height:1.3}.donut small{font-size:8px;color:#8f9b93}.donut small:first-child{letter-spacing:1px;font-size:7px}.legend{flex:1}.legend>div{display:flex;justify-content:space-between;gap:10px;margin:14px 0;font-size:10px}.legend strong{font-size:10px;font-weight:500;white-space:nowrap}.legend>div>span{color:#78887d;white-space:nowrap}.legend-dot{display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:8px}.green{background:#527967}.orange-dot{background:#dea775}.slate{background:#abbab0}.fineprint{font-size:10px;color:#8c9990;line-height:1.8}.legend .fineprint{font-size:8px;border-top:1px solid var(--line);padding-top:14px;margin-bottom:0}.team-card{border:1px solid #e7e7d9;background:#f0f0e6;border-radius:11px;display:flex;position:relative;overflow:hidden;min-height:250px}.team-copy{position:relative;z-index:2;padding:23px;max-width:64%}.team-copy .eyebrow{font-size:8px}.team-copy h2{font-family:var(--serif);font-size:25px;line-height:1.15;margin:12px 0}.team-copy p{font-size:10px;color:#859080;max-width:155px}.team-copy>a{display:block;font-size:10px;color:#4a6551;margin-top:22px}.team-copy>a span{margin-left:10px}.team-card>img{position:absolute;right:-45px;bottom:0;width:55%;height:100%;object-fit:cover;object-position:55% center;mask-image:linear-gradient(90deg,transparent,black 40%);box-shadow:0 0 30px #a8884b35}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:11px;white-space:nowrap}th{text-align:left;background:#fafbf9;font-size:8px;font-weight:500;letter-spacing:1px;text-transform:uppercase;color:#8a968c;padding:12px 24px;border-block:1px solid var(--line)}td{padding:15px 24px;border-bottom:1px solid #f0f2ee;color:#708075}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fbfcf9}td strong{color:#45594a;font-weight:500}.person{display:flex;align-items:center;gap:11px}.initial{display:grid;place-items:center;width:33px;height:33px;background:#eef0e7;border:1px solid #e3e7d9;border-radius:50%;font-family:var(--serif);font-size:15px;color:#7d8c71}.person small,.cell-small{display:block;font-size:9px;color:#9aa296;margin-top:4px}.text-link{font-size:10px;font-weight:500;color:#50705b}.text-button{border:0;background:transparent;padding:5px;font-size:10px;color:#50705b}.danger{color:#a45845}.empty{text-align:center;padding:45px;color:#8d9b8f}.count-badge{padding:4px 7px;border-radius:5px;font-size:10px;background:#edf1e8;margin-left:7px}footer{display:flex;justify-content:space-between;font-size:8px;color:#829083;border-top:1px solid var(--line);padding:22px 0 25px;margin-top:33px;gap:15px}footer .muted{color:#adb6ab}.notice{padding:14px 18px;border:1px solid #e8d7b7;border-radius:8px;background:#faf5e9;color:#8a724d;font-size:11px;margin-bottom:23px}.notice a{float:right;text-decoration:underline}label{display:grid;gap:7px;color:#607262;font-size:11px;margin-bottom:17px}input,select,textarea{width:100%;border:1px solid #dce3d8;border-radius:6px;background:#fff;padding:11px 12px;font-size:12px;color:#354a38;min-height:40px}.table-search{max-width:270px;font-size:10px;background:#f8faf7}.form-panel{padding:26px}.form-panel h2{margin-bottom:24px}.form-panel>p{font-size:12px;line-height:1.8}summary{cursor:pointer;font-size:13px;font-weight:500}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 20px}.form-panel[open]>form{margin-top:24px}.form-end{grid-column:1/-1;margin-top:8px}.form-message{font-size:11px;color:#a45a40;white-space:normal;margin:12px 0 0}.checkbox{display:flex;align-items:center;line-height:1.7}.checkbox input{width:16px;min-height:16px;flex-shrink:0;accent-color:#28593e}.inline{display:inline-block;margin:0}.runs{display:flex;gap:15px;overflow:auto}.run-card{padding:20px;min-width:220px;display:grid;gap:12px}.run-card form{margin-top:8px}.auth-shell{display:grid;grid-template-columns:1fr 1fr;min-height:100vh;background:#fcfcf9}.auth-story{background:#142e2a;color:#fff;padding:45px 65px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.auth-story>.brand{align-self:flex-start}.auth-story>small{letter-spacing:2px;font-size:9px;color:#8da99a;margin-top:30px}.auth-message{max-width:520px;margin:45px auto 0}.auth-message h1{font-size:58px;font-family:var(--serif);letter-spacing:-1.5px;line-height:1.09;margin:20px 0}.auth-message h1 em{color:#dbb38e}.auth-message>p{font-size:13px;line-height:1.9;color:#a8beb0;max-width:360px}.auth-photo{margin-top:30px;border-radius:12px;overflow:hidden;position:relative;height:175px}.auth-photo img{width:100%;height:100%;object-fit:cover;object-position:center 40%;opacity:.8}.auth-photo span{position:absolute;inset:auto 0 0;padding:30px 20px 16px;background:linear-gradient(transparent,#142e2abc);font-family:var(--serif);font-style:italic;font-size:19px}.auth-form{padding:50px 70px;display:grid;place-items:center}.auth-form-inner{width:100%;max-width:410px}.auth-form h2{font-size:30px;font-weight:400;line-height:1.2;margin:16px 0}.auth-form p.muted{line-height:1.8;margin-bottom:27px}.step-label{font-size:9px;letter-spacing:1.4px;color:#8a998b;margin:24px 0 15px;display:flex;align-items:center;gap:10px}.step-label span{background:#edf1e8;border-radius:50%;padding:5px 6px;font-size:8px}.auth-form .button{margin-top:9px;padding:14px 18px}.auth-form .fineprint{margin-top:22px}.auth-form .text-link{display:block;margin-top:20px}#toast{position:fixed;right:24px;bottom:25px;z-index:100;background:#203d30;color:white;max-width:400px;padding:17px 23px;border-radius:9px;box-shadow:0 10px 50px #122f3530;transform:translateY(150%);transition:.3s;font-size:12px}#toast.visible{transform:translateY(0)}.reveal{opacity:0;transform:translateY(10px);transition:opacity .5s,transform .5s}.reveal.revealed{opacity:1;transform:translateY(0)}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0)}
@media(min-width:1500px){main{padding-top:45px}.hero-grid{grid-template-columns:1.4fr 1fr}.payroll-hero,.office-card{min-height:290px}.hero-amount{font-size:47px}.hero-bottom{margin-top:25px}.stat-card{padding:24px}.stat-card h3{font-size:28px}.lower-grid{min-height:280px}.breakdown{padding-top:28px}.team-copy{padding:29px}.team-copy h2{font-size:30px}}
@media(max-width:1150px){.sidebar{width:215px;padding-inline:16px}.main-shell{margin-left:215px;width:calc(100% - 215px)}main{padding:28px 25px 0}.topbar{padding:0 25px}.hero-amount{font-size:31px}.stat-card{padding:15px}.stat-card h3{font-size:20px}.breakdown{gap:16px;padding:15px}.donut{width:110px;height:110px;flex-basis:110px;padding:12px}.donut strong{font-size:23px}.legend>div{font-size:9px}.legend strong{font-size:9px}.local-pill{display:none}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-story{padding:40px}.auth-form{padding:40px}.auth-message h1{font-size:46px}}
@media(max-width:850px){.sidebar{transform:translateX(-100%);transition:.3s}.sidebar.is-open{transform:translateX(0);box-shadow:20px 0 50px #10201930}.main-shell{margin-left:0;width:100%}.menu-toggle{display:block}.topbar{height:70px}.breadcrumb{margin-right:auto;margin-left:15px}.stats-grid{gap:10px}.hero-grid{gap:15px}.lower-grid{gap:15px}.auth-story{padding:35px}.auth-message h1{font-size:39px}.auth-form{padding:35px}.auth-form h2{font-size:26px}}
@media(max-width:600px){main{padding:25px 17px 0}.topbar{padding:0 15px}.identity{display:none}.page-heading{align-items:flex-start;flex-wrap:wrap;gap:15px}h1{font-size:30px}.page-heading>div{width:100%}.hero-grid,.lower-grid{grid-template-columns:1fr}.office-card{min-height:210px}.payroll-hero{padding:24px}.hero-amount{font-size:34px}.stats-grid{grid-template-columns:1fr 1fr}.stat-card h3{font-size:21px}.stat-card small{font-size:8px}.lower-grid .team-card{min-height:230px}.team-card>img{right:0;width:60%;object-position:center}.breakdown{padding:15px 25px 25px;gap:25px}.donut{width:125px;height:125px;flex-basis:125px}.legend>div{font-size:10px}.panel-heading{padding:20px;flex-wrap:wrap}.panel-heading h2{font-size:17px}.form-grid{grid-template-columns:1fr}.form-panel{padding:21px}.table-search{max-width:none}.auth-shell{display:flex;flex-direction:column}.auth-story{padding:25px}.auth-message{margin:30px 0 0}.auth-message h1{font-size:40px}.auth-message h1 br:last-of-type{display:none}.auth-photo,.auth-story>small{display:none}.auth-message>p{font-size:12px}.auth-form{padding:40px 25px}.auth-form h2{font-size:29px}footer{font-size:8px;flex-direction:column}.notice a{float:none;display:block;margin-top:7px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}
/* Ring reflects the actual selected-period ratio; an empty period stays neutral. */
.donut{position:relative;background:none;transform:none;padding:16px}.donut svg{position:absolute;inset:0;width:100%;height:100%}.donut>div{position:relative;transform:none}
.sidebar-close{display:none}@media(max-width:850px){.sidebar-close{display:block;position:absolute;right:5px;top:4px;color:#c3d8cb;font-size:27px;padding:2px 9px}}
.sidebar{overflow-y:auto}.workspace-label{margin-top:26px}.sidebar-bottom{padding-top:22px}.office-map{height:360px;margin:22px 0;border:1px solid var(--line);border-radius:12px;z-index:1}.download-grid{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}.import-error td{background:#fff0eb;color:#9b3c24}.credential-card{padding:16px;background:#f1f5ef;margin:12px 0;border-radius:9px;overflow-wrap:anywhere}#server-clock{font-size:19px;color:#38624c;margin:18px 0}.leaflet-container{font:12px var(--sans)}[hidden]{display:none!important}#import-preview .table-wrap{max-height:450px;margin-bottom:20px}.geo-form .button{font-size:15px;padding:18px}.sidebar nav a{padding:9px 14px}@media(max-width:600px){.office-map{height:300px}.download-grid .button{width:100%}}

.auth-form .admin-eyebrow{color:#b45309}
.code-form{display:grid;gap:14px;margin-top:8px}
code.copy-url{user-select:all}
.impersonate-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;background:#fff4e5;border:1px solid #f5c27a;color:#7a4300;border-radius:12px;padding:12px 16px;margin-bottom:18px}
.impersonate-bar form{margin:0}
.button.danger{background:#b42318;border-color:#b42318;color:#fff}
.button.small{padding:6px 12px;font-size:13px}
.row-actions{display:flex;flex-wrap:wrap;gap:6px}
.row-actions form{margin:0}
tr.row-inactive td{opacity:.6}
.status-pill{display:inline-block;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:600}
.status-pill.ok{background:#e6f4ea;color:#1e6b34}
.status-pill.off{background:#f1f1f1;color:#666}
.danger-zone{border:1px solid #f3c7c3}
