:root{color:#172b3a;font-synthesis:none;background:#f4f7f9;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}.shell{grid-template-columns:250px 1fr;min-height:100vh;display:grid}aside{color:#fff;background:#103957;flex-direction:column;width:250px;height:100vh;padding:28px 18px;display:flex;position:fixed}.brand{align-items:center;gap:12px;padding:0 8px 30px;display:flex}.brandmark{color:#103957;background:#fff;border-radius:12px;place-items:center;width:44px;height:44px;font-weight:900;display:grid}.brand strong,.brand small,.user strong,.user small{display:block}.brand small,.user small{opacity:.7;margin-top:3px}nav{gap:7px;display:grid}nav button{color:#dce8ef;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;padding:12px 14px;font-size:15px;display:flex}nav button svg{width:19px}.active,nav button:hover{color:#103957!important;background:#fff!important}.user{align-items:center;gap:10px;margin-top:auto;padding:12px 7px;display:flex}.user small{align-items:center;gap:4px;font-size:11px;display:flex}.avatar{color:#103957;background:#d9e8f0;border-radius:50%;flex:none;place-items:center;width:38px;height:38px;font-weight:800;display:grid}main{grid-column:2;width:100%;max-width:1450px;padding:48px}.hero,.sectionTitle{justify-content:space-between;align-items:flex-end;margin-bottom:30px;display:flex}.eyebrow{letter-spacing:1.5px;color:#638092;margin:0 0 7px;font-size:12px;font-weight:800}h1{color:#12344b;margin:0 0 7px;font-size:31px}h2{margin:0;font-size:17px}p{color:#68808f;margin:4px 0;line-height:1.5}.primary{color:#fff;cursor:pointer;background:#123b5d;border:0;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:12px 17px;font-weight:700;display:flex}.primary:disabled{opacity:.5}.outline{color:#173b53;cursor:pointer;background:#fff;border:1px solid #cbd8df;border-radius:9px;justify-content:center;align-items:center;gap:5px;padding:10px 13px;font-weight:700;display:flex}.stats{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:18px;display:grid}.card{background:#fff;border:1px solid #e3e9ed;border-radius:14px;padding:21px;box-shadow:0 2px 10px #19364809}.stat span,.stat small{color:#708694;display:block}.stat strong{color:#173b53;margin:10px 0 5px;font-size:24px;display:block}.grid2{grid-template-columns:1fr 1fr;gap:18px;display:grid}.cardhead{justify-content:space-between;align-items:center;gap:20px;display:flex}.cardhead svg{color:#66879a}.ruleList{gap:10px;margin:22px 0;display:grid}.ruleList span{color:#456779;align-items:center;gap:8px;font-size:13px;display:flex}.ruleList svg{color:#43815c;width:17px}.empty{text-align:center;color:#81929d;padding:55px 20px}.requestList{margin-top:12px}.request{border-bottom:1px solid #edf1f3;justify-content:space-between;gap:15px;padding:14px 0;display:flex}.request:last-child{border:0}.request small{color:#758b98;text-transform:capitalize;margin-top:5px;display:block}.team{grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:18px;display:grid}.person{grid-template-columns:auto 1fr;align-items:center;gap:11px;display:grid}.person small{color:#78909e;margin-top:3px;font-size:12px;display:block}.person .pill{grid-column:1/-1;width:max-content}.pill{color:#35754d;background:#edf8f1;border-radius:999px;align-items:center;padding:5px 9px;font-size:11px;font-weight:700;display:inline-flex}.pill.pending{color:#8a6513;background:#fff6df}.pill.warn{color:#a34d38;background:#fff0ec}.legend{gap:7px;display:flex}.week,.month{grid-template-columns:repeat(7,1fr);display:grid}.week{border-bottom:1px solid #e6ecef;margin-top:22px}.week span{text-align:center;color:#8295a0;padding:10px;font-size:11px;font-weight:700}.month{border-left:1px solid #edf1f3}.day{background:#fff;border-bottom:1px solid #edf1f3;border-right:1px solid #edf1f3;min-height:105px;padding:9px}.day.blank{background:#fafbfc}.day b{color:#547181;font-size:12px}.day.today b{color:#fff;background:#123b5d;border-radius:50%;place-items:center;width:25px;height:25px;display:grid}.event{background:#edf8f1;border-left:3px solid #43815c;border-radius:5px;margin-top:8px;padding:6px;font-size:10px}.event.pendingEvent{background:#fff6df;border-color:#c89b32}.event strong,.event span{display:block}.event span{color:#647985;margin-top:2px}.adminGrid{grid-template-columns:repeat(3,1fr);gap:15px;display:grid}.adminItem{text-align:left;cursor:pointer;border:1px solid #e3e9ed;grid-template-columns:auto 1fr auto;align-items:start;column-gap:12px;display:grid}.adminIcon{color:#426b82;grid-row:1/4;width:21px}.adminItem strong,.adminItem span,.adminItem small{grid-column:2}.adminItem span{color:#31566d;margin:7px 0 3px}.adminItem small{color:#8195a1}.adminItem .arrow{color:#8195a1;grid-area:1/3/4;align-self:center}.adminPreview{margin-top:18px}.employeeTable{margin-top:14px}.employeeRow{border-top:1px solid #edf1f3;grid-template-columns:auto 1.5fr 1fr 1fr auto auto;align-items:center;gap:12px;padding:12px 0;display:grid}.employeeRow small{color:#7c919d;margin-top:3px;display:block}.employeeRow>span{color:#567384;font-size:13px}.iconBtn{color:#688493;cursor:pointer;background:0 0;border:0;place-items:center;padding:5px;display:grid}.iconBtn svg{width:19px}.approval{grid-template-columns:1fr auto;gap:15px;display:grid}.approval>div:first-child{align-items:center;gap:12px;display:flex}.availability{color:#35754d;background:#edf8f1;border-radius:9px;grid-column:1/-1;align-items:center;gap:8px;padding:11px;font-size:13px;display:flex}.approvalActions{grid-column:1/-1;justify-content:flex-end;gap:8px;display:flex}.muted{color:#8a9aa3;font-weight:400}.modalBackdrop{z-index:50;background:#0d25347a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:17px;width:min(620px,100%);max-height:92vh;padding:25px;overflow:auto;box-shadow:0 20px 70px #0a223040}.modalHead{justify-content:space-between;align-items:start;margin-bottom:20px;display:flex}.modal label{color:#506d7e;margin:16px 0;font-size:12px;font-weight:700;display:block}.modal input[type=date],.modal input[type=time],textarea{color:#183b51;background:#fff;border:1px solid #ccd9e0;border-radius:9px;width:100%;margin-top:7px;padding:11px}textarea{resize:vertical;min-height:75px}.seg{background:#f1f5f7;border-radius:10px;gap:6px;margin-top:7px;padding:4px;display:flex}.seg button{color:#587382;cursor:pointer;background:0 0;border:0;border-radius:7px;flex:1;padding:9px}.seg button.selected{color:#153c55;background:#fff;font-weight:800;box-shadow:0 1px 4px #1e3a491a}.twoFields{grid-template-columns:1fr 1fr;gap:12px;display:grid}.check{background:#f7f9fa;border-radius:10px;align-items:flex-start;gap:10px;padding:12px;display:flex!important}.check input{margin-top:3px}.check strong,.check small{display:block}.check small{color:#80929c;margin-top:3px;font-weight:400}.calc{background:#eef5f8;border-radius:10px;align-items:center;gap:11px;padding:13px;display:flex}.calc svg{color:#426b82}.calc div{flex:1}.calc small,.calc strong{display:block}.calc small{color:#708793}.calc strong{color:#173e57;margin-top:2px}.notice{color:#80631c;background:#fff8e8;border-radius:9px;align-items:flex-start;gap:9px;margin-top:12px;padding:11px;font-size:12px;display:flex}.notice svg{flex:none;width:17px}.modalActions{justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.mobileNav{display:none}@media (width<=900px){.shell{display:block}aside{display:none}main{padding:28px 18px 90px}.hero,.sectionTitle{align-items:flex-start;gap:20px}.hero{flex-direction:column}.stats,.grid2,.adminGrid{grid-template-columns:1fr}.team{grid-template-columns:1fr 1fr}.mobileNav{z-index:10;background:#fff;border-top:1px solid #dde6eb;grid-template-columns:repeat(4,1fr);padding:8px 5px;display:grid;position:fixed;bottom:0;left:0;right:0}.mobileNav button{color:#496878;background:#fff;border:0;place-items:center;gap:3px;font-size:10px;display:grid}.mobileNav svg{width:19px}.mobileActive{font-weight:800;color:#103957!important}.calendar{overflow:auto}.week,.month{min-width:700px}.employeeRow{grid-template-columns:auto 1fr auto}.employeeRow>span:not(.pill){display:none}}@media (width<=560px){h1{font-size:26px}.team,.twoFields{grid-template-columns:1fr}.approvalActions{display:grid}.modal{padding:20px}.sectionTitle{flex-direction:column}.employeeRow .pill{display:none}}.adminTitle{margin-top:24px}.compact{padding:7px 10px}.field{color:#506d7e;margin:16px 0;font-size:12px;font-weight:700;display:block}.field input,.balanceRow input{color:#183b51;background:#fff;border:1px solid #ccd9e0;border-radius:9px;width:100%;margin-top:7px;padding:10px}.balanceTable{margin-top:16px}.balanceRow{border-top:1px solid #edf1f3;grid-template-columns:1.2fr repeat(3,1fr) auto;align-items:end;gap:12px;padding:14px 0;display:grid}.balanceRow label{color:#6f8490;font-size:11px}.holidayGrid{grid-template-columns:repeat(2,1fr);gap:0 22px;margin-top:18px;display:grid}.holiday{border-top:1px solid #edf1f3;justify-content:space-between;gap:15px;padding:12px 0;display:flex}.holiday span{color:#718793;font-size:12px}.auditItem{background:#f7f9fa;border-radius:10px;align-items:center;gap:12px;margin-top:18px;padding:15px;display:flex}.auditItem svg{color:#55778a}.auditItem small{color:#7c919d;margin-top:4px;display:block}@media (width<=900px){.balanceRow{grid-template-columns:1fr 1fr}.balanceRow>strong{grid-column:1/-1}.holidayGrid{grid-template-columns:1fr}}.inlineActions{grid-column:1/-1;gap:12px;display:flex}.textBtn{color:#35647e;cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;font-weight:700}.textBtn.danger{color:#a04d43}.requestActions{grid-template-columns:1fr auto;display:grid}.decision{align-items:center;gap:14px;display:flex}.decision>svg{color:#43815c}.decision>div{flex:1}.previewList{margin:18px 0}.previewRow{border-top:1px solid #edf1f3;grid-template-columns:1fr 1fr auto;gap:10px;padding:11px 0;font-size:13px;display:grid}.previewRow span{color:#68808f}.smallModal{max-width:520px}.modal select{color:#183b51;background:#fff;border:1px solid #ccd9e0;border-radius:9px;width:100%;margin-top:7px;padding:11px}.balanceSimple{grid-template-columns:1.3fr 1fr .7fr auto}.balanceValue{color:#183b51;align-self:center;font-weight:800}.ledger{margin-top:24px}.ledger h3{margin-bottom:8px}.ledgerRow{border-top:1px solid #edf1f3;grid-template-columns:1fr .5fr 2fr;gap:12px;padding:10px 0;font-size:13px;display:grid}.positive{color:#367554;font-weight:800}.negative{color:#a04d43;font-weight:800}.adjustHint{color:#6c818d;align-items:center;gap:8px;margin:-3px 0 15px;font-size:12px;display:flex}@media (width<=700px){.balanceSimple,.ledgerRow{grid-template-columns:1fr}.balanceSimple>*{width:100%}}.loginPage{background:#f3f7f8;place-items:center;min-height:100vh;padding:24px;display:grid}.loginCard{background:#fff;border:1px solid #dfe8ec;border-radius:18px;width:min(440px,100%);padding:34px;box-shadow:0 18px 55px #1a3b4d17}.loginCard .brandmark{margin-bottom:28px}.loginCard h1{margin:4px 0 8px}.loginCard form{gap:18px;margin:25px 0 18px;display:grid}.loginCard label{gap:7px;font-size:13px;font-weight:700;display:grid}.loginCard input{font:inherit;border:1px solid #ccd9e0;border-radius:9px;padding:12px}.approvalReason{color:#506d7e;grid-column:1/-1;font-size:13px}.approval{margin-bottom:16px}.field select{border:1px solid #ccd9e0;border-radius:9px;margin-left:12px;padding:10px}.mobileNav{grid-auto-flow:column}.mobileNav button{min-width:0}button:disabled{cursor:wait;opacity:.6}main>.notice,main>.availability{margin-bottom:18px}.adminTabs,.inlineButtons{flex-wrap:wrap;gap:8px;margin:18px 0;display:flex}.adminForm{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;margin-bottom:18px;display:grid}.adminForm .field select{width:100%;margin:7px 0 0}.adminForm textarea{display:block}.adminForm button{width:max-content;margin:12px 0}.adminForm input[type=checkbox]{width:auto;margin-left:12px}@media (width<=700px){.adminForm{grid-template-columns:1fr}}.plainFields{border:0;min-width:0;margin:0;padding:0}.offlineBanner{text-align:center;color:#80631c;background:#fff8e8;padding:10px}.shell{grid-template-columns:250px minmax(0,1fr)}.shell main{min-width:0}.loginLayout{grid-template-columns:1fr 440px;align-items:center;gap:64px;width:min(980px,100%);display:grid}.loginIntro h2{margin:12px 0 20px;font-size:42px;line-height:1.15}.loginIntro p{margin:12px 0}.loginIntro{padding:32px}.loginLayout .loginCard{width:100%}.adminForm>h2,.adminForm>p{grid-column:1/-1}.inlineButtons textarea{max-width:240px}.request{flex-wrap:wrap}.calendar .day{overflow-wrap:anywhere;min-width:0}@media (width>=901px) and (width<=1200px){.shell main{padding:32px 24px}.team{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.loginLayout{max-width:440px;display:block}.loginIntro{display:none}.mobileNav{grid-auto-flow:initial}.mobileNav button{padding:4px 1px}.adminTabs{gap:6px}}.approvalBatch{margin-bottom:12px}.approvalBatch button,.approval .check{margin-top:12px}.day.weekendDay{background:#f4f6f8}.day.holidayDay{background:#eaf3fb}.holidayLabel{color:#244f70;margin-top:8px;font-size:11px;font-weight:700}.holidayLabel span{margin-top:4px;font-size:10px;font-weight:400;display:block}.day>small{color:#7b8c97;margin-top:8px;font-size:10px;display:block}.loginCard label.rememberChoice{align-items:center;gap:8px;display:flex}.rememberChoice input{width:auto}.loginCard>.outline{width:100%;margin-bottom:8px}.loginCard>.muted{font-size:12px}.loginCard .textBtn{margin:10px 0;display:block}.calendarDate{color:#547181;cursor:pointer;background:0 0;border:0;border-radius:50%;padding:4px 7px;font-weight:700}.calendarDate:hover:not(:disabled){background:#dcebf5}.calendarDate:disabled{cursor:default;opacity:.6}.day.today .calendarDate{color:#fff;background:#123b5d}.calendar .day{position:relative}.calendarDate:not(:disabled):after{content:"";border-radius:2px;position:absolute;inset:0}.calendarDate:focus-visible{outline-offset:2px;outline:2px solid #123b5d}
