.sidebar-bottom{margin-top:auto}.topbar{height:46px}.content{padding:22px}.page-heading{margin-bottom:18px}.page-heading h1{font-size:26px;margin:0}.day-overview{margin-bottom:16px;display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px}.selected-date{display:flex;align-items:center;gap:5px}.selected-date button{padding:5px 10px;font-size:18px}.selected-date input{padding:7px;font-size:12px}.selected-date strong{font-size:12px;margin-left:8px;font-weight:600}.day-counts{display:flex;gap:6px;flex-wrap:wrap}.day-counts button{font-size:11px;padding:9px 10px;font-weight:500;display:flex;gap:12px;align-items:center}.day-counts b{font-size:12px}.day-counts button.active{background:#e3eee5;border-color:#91b49d;color:#245d41}.day-counts .has-conflicts{color:#a64038;background:#fff0ec}.planner-layout{grid-template-columns:minmax(0,1fr) 205px;gap:14px}.panel-head{padding:10px 12px;flex-wrap:wrap}.team-tabs{display:flex;gap:4px}.team-tabs button{font-size:11px;padding:7px 10px;border-color:transparent;background:transparent;color:#819080}.team-tabs button.active{background:#174f3b;color:white}.toolbar{padding:9px 12px}.toolbar strong{font-size:11px;font-weight:600;margin-left:5px}.toolbar strong .muted{font-weight:400;margin-left:9px}.filters{padding:9px 12px;gap:9px}.calendar-wrap{max-height:calc(100vh - 330px);min-height:160px}.calendar .row-label{width:180px;min-width:180px;max-width:180px;padding:10px}.calendar th.day,.calendar td.daycell{width:78px;min-width:78px}.calendar th.day{padding:0}.calendar th.day button{border:0;border-radius:0;background:transparent;padding:7px 3px;display:block;position:relative;width:100%;font-size:9px;font-weight:400;color:#798a79;min-height:52px}.calendar th.day button b{margin-top:4px;font-size:12px}.calendar th.day button i{font-style:normal;font-size:7px;color:#2f8055;position:absolute;top:2px;right:3px}.calendar .selected-day{background:#edf5ec}.calendar th.day.selected-day{background:#d4e8d4;box-shadow:inset 0 -3px #376f4c}.calendar td.selected-day{border-left:1px solid #bbd2b8;border-right:1px solid #bbd2b8}.calendar td.daycell{height:77px;padding:4px;vertical-align:top}.cell-content{min-height:39px}.add-person{display:block;text-align:center;color:#a3b09e;font-size:9px;padding:11px 1px;opacity:.45}.daycell:hover .add-person,.selected-day .add-person{opacity:1}.booking{padding:5px 3px;font-size:9px}.need-stepper{display:flex;align-items:center;justify-content:space-between;gap:1px;background:#f2f5ef;border-radius:5px;padding:2px;color:#83927c;font-size:9px}.need-stepper>span{display:flex;gap:3px;align-items:center;white-space:nowrap}.need-stepper b{font-weight:600}.need-stepper button{width:20px;height:20px;min-width:20px;padding:0;border:0;background:transparent;color:#6f8267;font-size:15px;font-weight:500;line-height:18px}.need-stepper button:hover{background:#dcebd6}.need-stepper button:disabled{opacity:.2;cursor:default}.need-stepper.shortage{background:#fff1d6;color:#8e681f}.need-stepper.shortage button{color:#966d23}.need-stepper.shortage button:hover{background:#eedaae}.group-row th{background:#eef2e9;text-align:left;padding:0;height:33px}.group-row button{border:0;border-radius:0;background:transparent;padding:8px 11px;font-size:10px;position:sticky;left:0;color:#576b4d;letter-spacing:.2px}.group-row span{font-size:9px;font-weight:400;margin-left:8px;color:#849278}.row-team{padding:3px 5px;font-size:9px;margin-top:7px;max-width:115px;background:#fafbf8;border-color:#e5eadf}.legend{padding:10px 12px;gap:13px}.staff-selected-date{display:flex;align-items:center;justify-content:space-between;padding:11px 14px;font-size:10px;color:#7f8e79}.staff-selected-date button{padding:0 5px;border:0;font-size:17px}.staff-list{max-height:calc(100vh - 368px);padding:0 8px 8px}.person{width:100%;text-align:left;border:0;border-radius:5px;background:white;border-bottom:1px solid #eef2e9;padding:9px 6px;gap:8px}.person.picked{background:#e9f2e2;box-shadow:inset 0 0 0 1px #8daf7a}.person .handle{font-size:16px}.person strong{font-size:10px}.person small{font-size:9px}.staff-bottom{padding:10px}.quick-date{font-size:12px;color:#647b5d}.list-table .row-team{font-size:11px;max-width:130px;margin:0;padding:7px}.login-screen.login-minimal{display:grid;grid-template-columns:1fr;place-items:center;min-height:100svh;padding:30px 18px;background:radial-gradient(ellipse at 50% 0,#e2ebdb,transparent 65%),#f2f5ee}.login-minimal .login-form{width:400px;max-width:100%;background:#fff;padding:38px;margin:0;border:1px solid #e1e7dc;border-radius:17px;box-shadow:0 20px 60px #29422a0c}.login-minimal .login-wordmark{font-size:27px;gap:10px}.login-minimal .login-wordmark b{color:#71916a}.login-minimal .login-wordmark .brand-mark{background:#194c38;color:#e0edc5;width:41px;height:41px}.login-company{font-size:10px;color:#87947e;margin:13px 0 32px}.login-minimal h1{font-size:25px;margin-bottom:25px;font-weight:600;letter-spacing:-.7px}.login-minimal #login-name{margin-bottom:21px}.login-minimal .login-form>label{font-size:11px}.login-minimal .login-form>button.primary{margin-top:25px}
@media(min-width:1700px){.calendar .row-label{width:210px;min-width:210px;max-width:210px}.calendar th.day,.calendar td.daycell{width:92px;min-width:92px}}
@media(max-width:1100px){.selected-date strong{display:none}.planner-layout{grid-template-columns:minmax(0,1fr) 175px}.team-tabs button{padding:7px}.toggle button{padding:6px 9px}.content{padding:18px}.day-counts button{font-size:10px;gap:8px}.calendar-wrap{max-height:calc(100vh - 350px)}}
@media(max-width:950px){.planner-layout{grid-template-columns:minmax(0,1fr)}.staff-panel{display:block}.staff-list{display:flex;overflow:auto;max-height:150px;gap:6px}.person{min-width:150px;max-width:180px;border:1px solid #e3e9dd}.staff-selected-date{padding:7px 14px}.staff-bottom{display:none}.calendar-wrap{max-height:55vh}.heading-actions{flex-direction:row}}
@media(max-width:620px){.content{padding:17px 10px}.page-heading{margin-bottom:14px}.page-heading h1{font-size:22px}.heading-actions{gap:5px}.heading-actions button{padding:8px;font-size:9px}.day-overview{gap:10px;margin-bottom:12px}.selected-date strong{display:block;font-size:10px}.day-counts{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:5px}.day-counts button{justify-content:space-between;padding:8px}.calendar .row-label{width:135px;min-width:135px;max-width:135px;padding:8px}.calendar th.day,.calendar td.daycell{width:78px;min-width:78px}.toolbar strong .muted{display:none}.team-tabs button{padding:7px 6px;font-size:10px}.panel-head{gap:8px}.filters input[type=search]{min-width:120px}.filters select{max-width:155px}.login-minimal .login-form{padding:29px;max-width:380px}}
