@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Nunito+Sans:wght@700;800&display=swap";:root{color:#202720;background:#fbfaf7;font-family:DM Sans,Arial,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{cursor:pointer}.logo{align-items:center;gap:10px;display:flex}.logo>span{color:#c9e99b;font-size:25px;transform:rotate(35deg)}.logo div{display:grid}.logo strong{letter-spacing:-.6px;font:800 23px Nunito Sans}.logo small{letter-spacing:1.2px;font-size:8px}.primary{color:#fff;background:#17483b;border:0;border-radius:6px;justify-content:center;align-items:center;gap:7px;padding:12px 16px;font-weight:700;display:flex}.public-page{background:#fbfaf7;min-height:100vh}.public-header{background:#fff;border-bottom:1px solid #e8e3da;justify-content:space-between;align-items:center;padding:20px 7vw;display:flex}.public-header .logo{color:#17483b}.public-header nav{align-items:center;gap:25px;display:flex}.public-header a{color:#3d493f;font-size:14px;text-decoration:none}.public-header button,.secondary{color:#24513f;background:#fff;border:1px solid #d8ddd6;border-radius:6px;align-items:center;gap:7px;padding:9px 13px;font-weight:600;display:flex}.booking-main{grid-template-columns:1fr 540px;align-items:center;gap:6vw;max-width:1260px;margin:auto;padding:58px 35px;display:grid}.booking-intro h1{color:#143f34;letter-spacing:-2px;margin:0;font:800 60px/1.06 Nunito Sans}.booking-intro h1 span{color:#51845b}.booking-intro p{color:#60675f;max-width:550px;font-size:18px;line-height:1.6}.promise{color:#385442;grid-template-columns:25px 1fr;gap:14px 6px;margin-top:28px;display:grid}.promise b{color:#4d8a59}.booking-form,.login,.modal{background:#fff;border:1px solid #e4dfd7;border-radius:10px;gap:14px;padding:26px;display:grid;box-shadow:0 14px 35px #2b3f3412}h2{color:#173f35;margin:0;font:800 25px Nunito Sans}.booking-form>p,.login p,.modal p{color:#737870;margin:-8px 0 4px;font-size:13px}label{color:#39453c;gap:6px;font-size:12px;font-weight:700;display:grid}.form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}input,select{color:#303630;background:#fff;border:1px solid #dbd8d1;border-radius:5px;outline-color:#60906a;width:100%;min-width:0;padding:10px}.label{font-size:12px;font-weight:700}.slot-grid{grid-template-columns:repeat(4,1fr);gap:7px;margin-top:7px;display:grid}.slot-grid button,.day-picker button{color:#315643;background:#fff;border:1px solid #d9ded6;border-radius:5px;padding:8px 4px;font-size:12px}.slot-grid button.selected,.day-picker button.selected{color:#fff;background:#4f875a;border-color:#4f875a}.slot-grid button:disabled{cursor:not-allowed;color:#b5b8b3;background:#f3f3f1}.book{width:100%;margin-top:4px}.book:disabled{cursor:not-allowed;opacity:.55}.confirmation{text-align:center;justify-items:center;max-width:650px;margin:140px auto;display:grid}.confirmation i{color:#2e7141;background:#e0efd5;border-radius:50%;place-items:center;width:75px;height:75px;display:grid}.confirmation h1{color:#17483b;margin-bottom:0;font:800 43px Nunito Sans}.confirmation p{color:#667066;line-height:1.6}.login-page{background:#f5f6f0;min-height:100vh;padding:28px}.back{color:#356146;background:0 0;border:0}.login{width:min(400px,100vw - 30px);margin:75px auto}.login .logo{color:#17483b;margin-bottom:12px}.login h1{color:#17483b;margin:0;font:800 31px Nunito Sans}.login em{color:#b43f31;font-size:12px}.login small{color:#7b817a;text-align:center}.admin-shell{background:#fbfaf7;grid-template-columns:222px 1fr;min-height:100vh;display:grid}.admin-side{color:#fff;background:#123f34;flex-direction:column;padding:28px 17px;display:flex}.admin-side .logo{margin:0 7px 38px}.admin-side nav{gap:7px;display:grid}.admin-side button{color:#fff;text-align:left;background:0 0;border:0;border-radius:7px;align-items:center;gap:11px;padding:12px;display:flex}.admin-side button.active{color:#17483b;background:#eef5e7}.admin-side>button{margin-top:auto}.admin-main{min-width:0;padding:29px 36px}.admin-main>header,.admin-panel header{justify-content:space-between;align-items:center;display:flex}.admin-main h1{color:#17483b;margin:0;font:800 36px Nunito Sans}.admin-main p{color:#6e756e;margin:4px 0;font-size:13px}.admin-metrics{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:23px;display:grid}.admin-metrics article{background:#fff;border:1px solid #e4dfd7;border-radius:7px;padding:17px;display:grid}.admin-metrics span{color:#687068;font-size:12px}.admin-metrics strong{color:#17483b;font:800 30px Nunito Sans}.admin-panel{background:#fff;border:1px solid #e4dfd7;border-radius:7px;margin-top:16px;overflow:hidden}.admin-panel header{border-bottom:1px solid #e4dfd7;padding:15px 17px}.worker-grid{grid-template-columns:repeat(4,1fr);gap:0;display:grid}.worker{border-right:1px solid #e9e5de;gap:10px;min-width:0;padding:15px;display:flex}.worker>b{color:#28583c;background:#dfeecf;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-size:11px;display:grid}.worker div{gap:3px;min-width:0;display:grid}.worker h3{margin:0;font-size:13px}.worker span,.worker small,.worker em{color:#727971;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-style:normal;overflow:hidden}.worker em{color:#387049}.appointments article{border-top:1px solid #eeeae5;grid-template-columns:1.3fr 1fr 1.25fr 1fr 80px;align-items:center;gap:8px;padding:11px 17px;font-size:11px;display:grid}.appointments article span{align-items:center;gap:5px;display:flex}.appointments article em{color:#2c6842;background:#e8f3df;border-radius:4px;padding:3px 7px;font-style:normal}.modal-backdrop{z-index:5;background:#123f3459;place-items:center;display:grid;position:fixed;inset:0}.modal{width:min(430px,100vw - 30px);position:relative}.close{background:0 0;border:0;position:absolute;top:12px;right:12px}.day-picker{grid-template-columns:repeat(6,1fr);gap:5px;display:grid}@media (width<=850px){.booking-main{grid-template-columns:1fr;padding-top:35px}.booking-intro h1{font-size:45px}.booking-intro p{font-size:15px}.promise{display:none}.admin-shell{grid-template-columns:72px 1fr}.admin-side{padding-inline:10px}.admin-side .logo div,.admin-side button:not(.active){font-size:0}.admin-side button{justify-content:center}.worker-grid{grid-template-columns:repeat(2,1fr)}.admin-main{padding:20px}.appointments article{grid-template-columns:1.3fr 1fr 1fr}.appointments article span:nth-of-type(2),.appointments article em{display:none}}@media (width<=520px){html,body,#root{width:100%;max-width:100%;overflow-x:hidden}.public-page,.public-header,.booking-main{width:calc(100vw - 18px);min-width:0;max-width:calc(100vw - 18px)}.public-header{gap:8px;padding:14px 15px;overflow:hidden}.public-header .logo{min-width:0}.public-header .logo>span{font-size:19px}.public-header .logo strong{white-space:nowrap;font-size:17px}.public-header .logo small{font-size:6px}.public-header nav{flex:none;gap:0}.public-header nav a{display:none}.public-header button{padding:8px;font-size:0}.public-header button svg{width:16px;height:16px}.booking-main{padding:26px 14px;display:block;overflow:hidden}.booking-intro{width:100%;max-width:100%}.booking-intro h1{font-size:38px;line-height:1.02}.booking-intro p{margin-bottom:22px;font-size:14px;line-height:1.5}.booking-form{gap:13px;width:100%;max-width:100%;padding:17px;overflow:hidden}.booking-form h2{font-size:23px}.form-grid{grid-template-columns:minmax(0,1fr);gap:11px}.slot-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:100%}.slot-grid button{min-width:0;padding:9px 2px;font-size:11px}.confirmation{margin:75px 20px}.confirmation h1{font-size:34px}.login-page{padding:17px}.login{margin:46px auto;padding:19px}.login h1{font-size:28px}.admin-shell{width:100%;max-width:100%;display:block;overflow-x:hidden}.admin-side{z-index:4;background:#123f34;width:100%;padding:10px 12px;display:block;position:sticky;top:0}.admin-side .logo{margin:0 0 9px}.admin-side .logo div{display:grid}.admin-side .logo strong{font-size:18px}.admin-side .logo small{font-size:6px}.admin-side nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;display:grid}.admin-side nav button,.admin-side nav button:not(.active){justify-content:center;gap:5px;min-width:0;padding:8px 3px;font-size:10px}.admin-side nav button svg{width:15px}.admin-side>button{display:none}.admin-main{width:100%;max-width:100%;padding:15px 12px;overflow-x:hidden}.admin-main h1{font-size:27px}.admin-main>header{gap:9px;display:grid}.admin-main>header .secondary{width:max-content;font-size:12px}.admin-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:15px}.admin-metrics article{min-width:0;padding:10px 8px}.admin-metrics span{font-size:9px;line-height:1.2}.admin-metrics strong{font-size:23px}.admin-panel{width:100%;margin-top:12px}.admin-panel header{align-items:start;gap:8px;padding:12px}.admin-panel h2{font-size:19px}.admin-panel header .primary{flex:none;padding:9px;font-size:0}.worker-grid{grid-template-columns:minmax(0,1fr)}.worker{border-bottom:1px solid #e9e5de;border-right:0;min-width:0;padding:12px}.worker div{min-width:0}.appointments article{grid-template-columns:minmax(0,1fr) auto;gap:5px 8px;padding:11px 12px;display:grid}.appointments article strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.appointments article .appointment-service,.appointments article .appointment-date,.appointments article .appointment-worker{color:#687268;min-width:0;font-size:10px;display:flex}.appointments article .appointment-date{grid-column:1}.appointments article .appointment-worker{color:#397049;grid-column:1}.appointments article em{grid-area:1/2/span 2;align-self:start;display:block}.modal{gap:12px;padding:19px}.day-picker{grid-template-columns:repeat(3,1fr)}}.form-error{color:#b43f31;font-size:12px;font-style:normal}.admin-account-grid{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.admin-account-grid article{border-right:1px solid #e9e5de;gap:10px;min-width:0;padding:13px 15px;display:flex}.admin-account-grid b{color:#28583c;background:#dfeecf;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-size:11px;display:grid}.admin-account-grid div{gap:2px;min-width:0;display:grid}.admin-account-grid strong,.admin-account-grid span,.admin-account-grid small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-account-grid strong{font-size:12px}.admin-account-grid span,.admin-account-grid small{color:#727971;font-size:10px}.admin-account-grid small{color:#397049}.panel-error{padding:0 15px;color:#b43f31!important}@media (width<=520px){.admin-account-grid{grid-template-columns:minmax(0,1fr)}.admin-account-grid article{border-bottom:1px solid #e9e5de;border-right:0}}.public-header .nav-link{color:#3d493f;background:0 0;border:0;padding:0;font-size:14px;font-weight:500}.services{background:#f3f6ef;border-top:1px solid #e8e3da;grid-template-columns:290px 1fr;gap:35px;padding:42px 7vw 55px;display:grid}.services h2{font-size:28px}.services p{color:#667066;font-size:14px;line-height:1.5}.service-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.service-grid button{text-align:left;color:#214c3c;background:#fff;border:1px solid #dce2d8;border-radius:7px;gap:10px;padding:16px;display:grid}.service-grid span{color:#578063;font-size:11px}@media (width<=520px){.public-header nav .nav-link{display:none}.services{width:calc(100vw - 18px);padding:26px 14px 38px;display:block}.service-grid{grid-template-columns:1fr 1fr;gap:7px}.service-grid button{padding:12px}.service-grid strong{font-size:13px}}.shift-grid{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.shift-grid article{border-bottom:1px solid #e9e5de;border-right:1px solid #e9e5de;gap:10px;min-width:0;padding:12px 15px;display:flex}.shift-grid b{color:#28583c;background:#dfeecf;border-radius:50%;flex:none;place-items:center;width:32px;height:32px;font-size:10px;display:grid}.shift-grid div{gap:2px;min-width:0;display:grid}.shift-grid strong,.shift-grid span,.shift-grid small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.shift-grid strong{font-size:12px}.shift-grid span,.shift-grid small{color:#727971;font-size:10px}.shift-grid small{color:#397049}@media (width<=520px){.shift-grid{grid-template-columns:minmax(0,1fr)}.shift-grid article{border-right:0}}.notifications article{background:#fbfdf9;border-top:1px solid #e9e5de;justify-content:space-between;align-items:center;gap:12px;padding:12px 15px;display:flex}.notifications article.read{background:#fff}.notifications article div{gap:3px;display:grid}.notifications article strong{font-size:12px}.notifications article span,.notifications article small{color:#687268;font-size:10px}.notifications article button{color:#286344;background:#fff;border:1px solid #d8ddd6;border-radius:5px;flex:none;padding:6px 8px;font-size:10px}.empty-note{color:#737970;padding:2px 15px 14px;font-size:12px}.worker .worker-actions{align-items:start;gap:5px;margin-left:auto;display:flex}.worker-actions button{color:#286344;background:#fff;border:1px solid #d8ddd6;border-radius:4px;padding:5px 6px;font-size:9px}.worker-actions button.danger{color:#a34335}.worker.inactive{opacity:.78;background:#f4f4f1}@media (width<=520px){.worker .worker-actions{display:flex}.worker-actions button{padding:6px 7px}}.pricing{color:#0d4f9f;background:#fff;padding:56px 7vw 0}.pricing>header{text-align:center}.pricing>header span{letter-spacing:1.2px;text-transform:uppercase;font-size:12px;font-weight:700}.pricing>header h2{color:#0d4f9f;margin:5px 0 3px;font-size:37px}.pricing>header p{color:#58718d;margin:0}.package-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:1180px;margin:28px auto 0;display:grid}.package-grid article{background:#f8fbff;border-top:4px solid #0d4f9f;border-radius:7px;grid-template-rows:1fr auto auto;gap:10px;padding:20px;display:grid;box-shadow:0 6px 18px #0d4f9f14}.package-grid small{color:#2d7891;text-transform:uppercase;font-weight:700}.package-grid h3{color:#0d4f9f;margin:3px 0;font:800 23px Nunito Sans}.package-grid p{color:#5d6f7d;margin:0;font-size:13px;line-height:1.5}.package-grid>article>strong{font-size:30px}.package-grid button{color:#0d4f9f;background:0 0;border:0;width:max-content;padding:0;font-size:12px;font-weight:700}.pricing-details{grid-template-columns:1fr 1fr;gap:14px;max-width:1180px;margin:16px auto 0;display:grid}.pricing-details aside{color:#fff;background:#0d4f9f;border-radius:7px;padding:19px 22px}.pricing-details h3{margin:0 0 8px;font:800 20px Nunito Sans}.pricing-details ul{margin:0;padding-left:18px}.pricing-details li{margin:5px 0;font-size:13px;line-height:1.35}.pricing footer{color:#fff;background:#0d4f9f;gap:3px;margin:38px -7vw 0;padding:24px 7vw;display:grid}.pricing footer strong{text-transform:uppercase;font-size:20px}.pricing footer span,.pricing footer small{font-size:13px}@media (width<=760px){.pricing{padding:38px 15px 0}.pricing>header h2{font-size:29px}.package-grid,.pricing-details{grid-template-columns:1fr}.pricing footer{margin:30px -15px 0;padding:20px 15px}.pricing footer strong{font-size:17px}}.logo>img{object-fit:cover;object-position:center;border-radius:50%;flex:none;width:48px;height:48px;box-shadow:0 1px 4px #0d344129}.admin-side .logo>img{width:54px;height:54px}.login .logo>img{width:66px;height:66px}@media (width<=520px){.public-header .logo>img{width:38px;height:38px}.admin-side .logo>img{width:39px;height:39px}}
