:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;color:#18243a;background:#f5f7fc;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}header.top{height:75px;background:white;border-bottom:1px solid #e7eaf1;display:flex;align-items:center;justify-content:space-between;padding:0 max(20px,calc((100% - 1250px)/2));gap:16px}.brand,.topright{display:flex;align-items:center;gap:12px}.brand strong,.brand small{display:block}.brand strong{font-size:21px}.brand small{color:#778498;font-size:11px}.logo{display:grid;place-items:center;width:40px;height:40px;background:#355ee8;color:white;font-weight:900;font-size:24px;border-radius:12px}.topright{font-size:13px}.pill{background:#eef2ff;color:#354fc7;padding:6px 12px;border-radius:30px;font-weight:700}.textbtn{border:0;background:none;color:#3158cd;font-weight:700}main{max-width:1250px;margin:0 auto;padding:30px 20px 80px}.auth{max-width:490px;margin:45px auto}.auth h1{font-size:33px}.eyebrow{color:#3c60d3;font-size:11px;font-weight:800;letter-spacing:1.8px}.hero{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:23px}.hero h1{font-size:31px;margin:7px 0}.muted,.hint{color:#778498}.muted{line-height:1.45;font-size:14px}.hint{font-size:12px;line-height:1.5}.tabs{display:flex;gap:8px;border-bottom:1px solid #dbe1ee;margin:0 0 22px;overflow:auto}.tabs button{border:0;background:none;color:#66758d;font-weight:700;padding:13px 17px;white-space:nowrap}.tabs button.active{color:#3158ce;border-bottom:3px solid #3c63e3}.columns{display:grid;grid-template-columns:1.25fr .85fr;gap:22px;align-items:start}.panel{background:white;border:1px solid #e4e9f3;border-radius:16px;padding:24px;box-shadow:0 6px 24px #25345807}.panel h2{font-size:18px;margin:0 0 7px}.panel h3{font-size:15px;margin:24px 0 12px}.panelhead{display:flex;justify-content:space-between;align-items:start;gap:12px}.monthNav{display:flex;align-items:center;gap:7px;white-space:nowrap;font-size:14px}.monthNav button{border:1px solid #e1e6f0;background:#fff;width:30px;height:30px;border-radius:8px;font-size:21px}.legend{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0 14px;font-size:12px;color:#66758d}.legend span{display:flex;align-items:center;gap:5px}.dot{display:inline-block;width:8px;height:8px;border-radius:50%}.pending{background:#eca537}.approved{background:#23b584}.declined{background:#e86b76}.mine{background:#4566de}.weekdays,.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.weekdays{text-align:center;color:#8995a8;font-size:11px;margin-bottom:6px}.calendar .day{min-height:73px;border-radius:10px;padding:7px 4px;text-align:left;background:#fafbfe;border:1px solid #edf0f6;color:#27354e;overflow:hidden}.calendar .day.empty{border:0;background:none}.calendar button.day:hover{outline:2px solid #5577ec}.calendar .day.selected{background:#e7edff;border:2px solid #5675e9}.calendar .day.today{box-shadow:inset 0 0 0 1px #6c88ed}.daynum{font-weight:800;font-size:12px;margin-left:3px}.dots{display:flex;flex-wrap:wrap;gap:3px;margin:8px 1px 4px}.mini{display:block;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#76849a}.selection,.dayDetails{background:#f4f7ff;border-radius:10px;padding:12px;margin-top:15px;font-size:12px;color:#4b5a78}.dayDetails{background:#fafbfd}.detail{padding:7px 0;border-bottom:1px solid #e9edf5}.detail:last-child{border-bottom:0}label{display:block;font-weight:700;color:#3b4960;font-size:12px;margin:13px 0}input,select,textarea{display:block;border:1px solid #dce3ef;background:#fff;border-radius:9px;padding:11px;width:100%;margin-top:7px;color:#28344d;min-width:0}input:focus,select:focus,textarea:focus{outline:2px solid #9aafff;border-color:#6885eb}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.primary,.secondary,.danger,.success{border-radius:9px;padding:11px 16px;font-weight:800;border:1px solid transparent}.primary{background:#395fe0;color:white}.secondary{background:white;border-color:#dce4f4;color:#3053bf}.success{background:#e3f8ed;color:#146b46}.danger{background:#ffeaed;color:#af3047}.full{width:100%;margin-top:12px}.stack{display:grid;gap:10px}.item{padding:13px;border:1px solid #e6ebf5;border-radius:11px;background:#fcfdff;font-size:13px}.itemhead{display:flex;justify-content:space-between;align-items:start;gap:10px}.item strong{font-size:13px}.item p{margin:5px 0;color:#65738c}.status{border-radius:24px;font-size:10px;font-weight:900;padding:4px 8px;white-space:nowrap}.status.pending{background:#fff3d8;color:#9d6810}.status.approved,.status.completed{background:#e0f7ee;color:#11835b}.status.declined,.status.cancelled{background:#ffe9ec;color:#c04458}.status.open{background:#e5efff;color:#345acf}.actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:11px}.actions button{padding:7px 10px;font-size:12px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}.stat{background:white;border:1px solid #e4e9f3;border-radius:13px;padding:14px}.stat b{display:block;font-size:22px}.stat span{font-size:12px;color:#7a879b}.notice{background:#edf4ff;color:#44619d;border-radius:8px;padding:10px;font-size:12px;margin:13px 0}.error{color:#bd3349;font-size:13px}.filterrow{display:flex;justify-content:end}.filterrow label{min-width:180px}.emptyState{color:#8591a4;font-size:13px;padding:18px;text-align:center;border:1px dashed #dce4ef;border-radius:10px}#toast{position:fixed;bottom:22px;right:22px;max-width:350px;z-index:10;background:#25334a;color:white;border-radius:10px;padding:13px 18px;box-shadow:0 9px 30px #15254135;display:none}#toast.show{display:block}@media(max-width:850px){.columns{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.panel{padding:17px}.hero h1{font-size:25px}}@media(max-width:450px){main{padding:18px 11px 50px}.calendar{gap:2px}.calendar .day{min-height:59px;padding:4px 2px;border-radius:6px}.mini{display:none}.panelhead{display:block}.monthNav{justify-content:space-between;margin:13px 0}.topright #who{display:none}.two{gap:6px}.stats{gap:7px}}

.holidayDot{background:#9b5ce5}.calendar .day:has(.holidayDot){border-color:#d9c6fc;background:#faf6ff}


/* TeamTime modern staffing console refresh */
:root{--ink:#17263d;--navy:#14233d;--accent:#5865e8;--sky:#edf2ff;--stroke:#e4e9f2;--muted:#738098;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#f3f6fb}
body{background:#f3f6fb} .top{height:80px!important;background:#fff!important;box-shadow:0 1px 0 #e8edf5;position:sticky;top:0;z-index:8}
.brand .logo{background:linear-gradient(135deg,#6b68f9,#339ce9);box-shadow:0 8px 22px #425edf36;border-radius:13px!important}
.brand strong{letter-spacing:-.8px;font-size:22px}.brand small{text-transform:uppercase;letter-spacing:1.3px;font-weight:750}
main{max-width:1500px;padding:30px 34px 90px}.hero{background:linear-gradient(113deg,#192b4b 0%,#283e71 62%,#5e60b4 100%);color:white;padding:32px 34px;border-radius:23px;margin-bottom:24px;min-height:160px;position:relative;overflow:hidden;box-shadow:0 12px 30px #19294918}
.hero:after{content:"";position:absolute;right:-45px;top:-110px;width:360px;height:360px;border-radius:50%;border:55px solid #ffffff10;pointer-events:none}.hero .muted{color:#ccd6f5!important}.hero .eyebrow{color:#a9c0ff}.hero h1{font-size:clamp(26px,3vw,38px);letter-spacing:-1.5px}.heroActions{position:relative;z-index:1}.heroActions button{background:#ffffff18;color:#fff;border-color:#ffffff55}
.panel{border:1px solid #e3eaf3;border-radius:19px;padding:25px;box-shadow:0 10px 25px #1e36520a}.panel h2{font-size:18px;letter-spacing:-.45px}.panel h3{font-size:14px}.muted,.hint{color:#73829a}.stats{gap:16px}.stat{padding:23px;border-radius:18px;border:1px solid #e3eaf4;box-shadow:0 7px 20px #1b345109;position:relative;overflow:hidden}.stat:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#7687ed}.stat:nth-child(2):before{background:#f1ae52}.stat:nth-child(3):before{background:#38bc9b}.stat:nth-child(4):before{background:#ac84e9}.stat b{font-size:30px;letter-spacing:-1px}.stat span{font-weight:650;color:#7d889d}
.primary{background:linear-gradient(135deg,#5363e8,#6979ec);box-shadow:0 5px 12px #5565e625;color:#fff}.primary:hover{filter:brightness(1.04)}.secondary{background:#f6f8ff;color:#4358b9}.panelhead{align-items:center}.calendar .day{min-height:89px;background:#fff;border-color:#edf0f6}.calendar .day:hover{background:#f4f7ff}.calendar .day.selected{background:#ebeeff}.weekdays{font-size:12px;font-weight:750}.status{font-size:11px;padding:5px 10px}.item{background:white;border-color:#e9edf4;border-radius:12px;padding:16px}.item:hover{border-color:#cfd9f5}.auth{max-width:520px;margin-top:8vh;padding:40px}.auth h1{font-size:35px;letter-spacing:-1.2px}.notice{border:1px solid #dce7ff}.pill{background:#edf0ff;color:#525dbe}.eyebrow{font-weight:900;letter-spacing:2px;color:#6474cb}
.featureStrip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:24px}.featureButton{border:1px solid #e2e8f4;background:#fff;border-radius:16px;padding:18px;text-align:left;display:flex;gap:13px;align-items:center;box-shadow:0 5px 15px #21395708;transition:transform .12s,border-color .12s}.featureButton:hover{transform:translateY(-2px);border-color:#a4b1f7}.featureIcon{font-size:22px;display:grid;place-items:center;width:43px;height:43px;border-radius:12px;background:#edf1ff}.featureCopy{display:flex;flex-direction:column;gap:3px}.featureCopy strong{font-size:13px;color:#273752}.featureCopy small{font-size:11px;color:#8290a7}.dashboardIntro{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:1.5px;margin:12px 0;color:#8794ac}
@media(min-width:1150px){.top{padding:0 35px!important}.top .brand{width:240px}.tabs{position:fixed;left:0;top:80px;bottom:0;width:239px;display:flex;flex-direction:column;gap:5px;padding:32px 13px;background:#152541;box-shadow:none;border:0;margin:0;z-index:7;overflow-y:auto;overflow-x:hidden}.tabs:before{content:"WORKSPACE";font-size:10px;color:#8296bc;font-weight:900;letter-spacing:2px;margin:0 15px 13px}.tabs button{border:0!important;text-align:left;border-radius:10px;color:#bac7dc;padding:15px!important;white-space:normal;font-size:13px}.tabs button.active{background:linear-gradient(90deg,#5966e4,#6c7bd4);color:#fff!important;box-shadow:0 6px 17px #131f3840}.tabs button:hover:not(.active){background:#263c5b;color:white}.top:before{content:"";background:#152541;position:absolute;left:0;top:0;width:239px;height:80px;z-index:-1}.top .brand strong{color:#fff}.top .brand small{color:#a8b9da}main{margin-left:239px;max-width:none;padding:30px 35px 80px}.columns{grid-template-columns:minmax(0,1.2fr) minmax(325px,.86fr)}}
@media(max-width:1149px){.tabs{gap:7px;margin-bottom:24px}.tabs button{border-radius:10px 10px 0 0}.featureStrip{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){main{padding:16px 12px 65px}.hero{padding:25px 20px;min-height:0}.hero h1{font-size:27px}.featureStrip{grid-template-columns:1fr;gap:8px}.featureButton{padding:12px}.columns{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.stat{padding:15px}.stat b{font-size:25px}.calendar .day{min-height:68px}.top{padding:0 12px!important}}

.manager-schedule{margin:22px 0}.manager-schedule .day{min-height:90px;text-align:left}.staff-badges{display:grid;gap:3px;margin-top:4px}.staff-badges span{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;border-radius:5px;padding:2px 4px;background:#f3e7ff;color:#6541a5}.staff-badges .leaveApproved{background:#e1f6e9;color:#13693c}.staff-badges .leavePending{background:#fff3d3;color:#81540b}.staff-badges .assigned{background:#dceeff;color:#145890}.staff-day-active{outline:2px solid #756aff}.google-sync{margin:16px 0}.google-sync .actions{flex-wrap:wrap}
