:root{color:#17201b;--green:#1d4935;--lime:#dff26a;--line:#e2e5df;--row-h:72px;background:#f5f5f1;font-family:DM Sans,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.app{grid-template-columns:230px 1fr;min-height:100vh;display:grid}aside{color:#fff;background:#173d2e;flex-direction:column;width:230px;padding:28px 18px;display:flex;position:fixed;inset:0 auto 0 0}.brand{border-bottom:1px solid #ffffff1c;align-items:center;gap:12px;padding:0 10px 28px;display:flex}.brand>span{background:var(--lime);color:#173d2e;border-radius:12px;place-items:center;width:42px;height:42px;display:grid}.brand b{font:700 25px Playfair Display}.brand small{color:#fff9;letter-spacing:2px;text-transform:uppercase;font-size:10px;display:block}nav{gap:7px;margin-top:26px;display:grid}nav button{color:#ffffffb5;text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:12px;padding:12px;display:flex}nav svg{width:19px}nav button.active,nav button:hover{color:#fff;background:#ffffff13}aside footer{color:#ffffff70;margin-top:auto;padding:10px;font-size:11px}main{grid-column:2;min-width:0;padding:34px}header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}header p,.modalhead p{color:#6d786f;letter-spacing:1.8px;margin:0 0 5px;font-size:11px;font-weight:700}h1{text-transform:capitalize;margin:0;font:700 31px Playfair Display}button{border:1px solid var(--line);color:#29342e;background:#fff;border-radius:8px;padding:9px 13px}button svg{vertical-align:middle;width:17px;height:17px}.primary{background:var(--green);color:#fff;border-color:var(--green);align-items:center;gap:8px;display:flex}.datebar{border:1px solid var(--line);background:#fff;border-radius:12px;flex-wrap:wrap;align-items:center;gap:13px;margin-bottom:15px;padding:12px 15px;display:flex}.navbuttons,.segments{gap:5px;display:flex}.navbuttons input{border:1px solid var(--line);border-radius:7px;padding:7px}.segments{background:#f1f2ee;border-radius:8px;margin-left:auto;padding:3px}.segments button{background:0 0;border:0}.segments .selected,.quickdates .selected{color:var(--green);background:#fff;font-weight:700;box-shadow:0 1px 3px #0002}.quickdates{border-top:1px solid var(--line);gap:5px;width:100%;padding-top:8px;display:flex;overflow:auto}.quickdates button{min-width:40px;padding:7px 9px}.schedule{border:1px solid var(--line);background:#fff;border-radius:12px;max-height:calc(100vh - 195px);overflow:auto}.grid{grid-template-columns:92px repeat(var(--cols),minmax(145px,1fr));min-width:max-content;display:grid}.head{z-index:10;border-bottom:1px solid var(--line);background:#fafaf7;position:sticky;top:0}.timehead,.barberhead{align-items:center;gap:9px;height:64px;padding:13px;display:flex}.timehead{text-transform:uppercase;color:#758078;letter-spacing:1px;justify-content:center;font-size:11px}.barberhead{border-left:1px solid var(--line)}.barberhead>span,.avatar{width:32px;height:32px;color:var(--green);background:#dceae2;border-radius:50%;place-items:center;font-weight:700;display:grid}.barberhead small{color:#999}.row{height:var(--row-h);border-bottom:1px solid #eceeea}.row.offhours{background:#f8f8f5}.time{background:inherit;z-index:4;color:#566159;flex-direction:column;justify-content:center;align-items:center;font-size:12px;display:flex;position:sticky;left:0}.time small{color:#879188;letter-spacing:1px;margin-top:5px;font-size:8px}.slot{border-left:1px solid #eceeea;min-width:145px;position:relative}.slot:not(.covered):hover{background:#f7faed}.add{opacity:0;color:#9fa79f;margin:auto;position:absolute;inset:0}.slot:hover .add{opacity:1}.covered{border-top-color:#0000}.appointment{z-index:5;text-align:left;color:#163e2d;background:#e5eee8;border:0;border-left:3px solid #4f775e;border-radius:6px;flex-direction:column;align-items:flex-start;width:calc(100% - 8px);padding:9px;display:flex;position:absolute;inset:4px}.appointment b{font-size:13px}.appointment span{color:#536a5b;font-size:11px}.appointment small{color:#75867a;margin-top:auto;font-size:9px}.overlay{z-index:50;background:#0b1f16aa;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:16px;width:min(650px,100%);max-height:95vh;overflow:auto;box-shadow:0 25px 80px #0005}.modal.small{width:min(470px,100%)}.modalhead{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:23px 25px;display:flex}.modalhead h2{margin:0;font:700 24px Playfair Display}.modalhead button{border:0;padding:5px}.form{grid-template-columns:1fr 1fr;gap:16px;padding:22px 25px;display:grid}.form.one{grid-template-columns:1fr}.form label,.settingsform label{color:#566159;gap:7px;font-size:12px;font-weight:600;display:grid}.form .wide{grid-column:1/-1}.form input,.form select,.form textarea,.settingsform input,.settingsform select{color:#17201b;background:#fff;border:1px solid #d8ddd8;border-radius:8px;width:100%;padding:11px}.form textarea{resize:vertical;min-height:75px}.check{align-items:center;grid-template-columns:auto 1fr!important;display:flex!important}.check input{width:auto!important}.error{color:#a6372c;background:#fff0ee;border-radius:7px;margin:0 25px;padding:10px;font-size:12px}.modalactions{border-top:1px solid var(--line);align-items:center;gap:9px;padding:17px 25px;display:flex}.modalactions span{flex:1}.danger{color:#ad3027;border-color:#efc9c5;gap:6px;display:flex}.card{border:1px solid var(--line);background:#fff;border-radius:12px}.listtitle{border-bottom:1px solid var(--line);justify-content:space-between;padding:20px;display:flex}.listtitle span{color:#7d867f;font-size:12px}.listrow{border-bottom:1px solid #eceeea;grid-template-columns:40px 1fr auto auto;align-items:center;gap:13px;padding:15px 20px;display:grid}.listrow small{color:#8a928c;font-size:11px;display:block}.status{background:#eee;border-radius:20px;padding:5px 8px;font-size:10px}.rowactions{gap:5px;display:flex}.rowactions button{padding:7px}.servicegrid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px;display:grid}.servicecard{text-align:left;grid-template-columns:43px 1fr auto;align-items:center;gap:12px;padding:18px;display:grid}.servicecard:hover{border-color:#90a698;box-shadow:0 4px 16px #243b2d12}.serviceicon{width:42px;height:42px;color:var(--green);background:#e8eee9;border-radius:10px;place-items:center;display:grid}.servicecard small{color:#7d867f;display:block}.servicecard strong{color:var(--green)}.servicecard i{background:#eee;border-radius:20px;grid-column:2;width:max-content;padding:4px 7px;font-size:10px;font-style:normal}.settingsform{grid-template-columns:2fr 1fr 1fr;align-items:center;gap:24px;max-width:900px;padding:25px;display:grid}.settingsform h3{margin:0 0 5px}.settingsform p{color:#7c867f;margin:0;font-size:12px}.settingsform hr{border:0;border-top:1px solid var(--line);grid-column:1/-1;width:100%}@media (width<=800px){.app{display:block}aside{width:100%;height:auto;padding:14px;position:static}.brand{border:0;padding:0}.brand small,aside footer{display:none}nav{margin-top:12px;display:flex;overflow:auto}nav button{white-space:nowrap}main{padding:20px}.settingsform{grid-template-columns:1fr}.settingsform hr{grid-column:auto}.form{grid-template-columns:1fr}.form .wide{grid-column:auto}.schedule{max-height:70vh}}.barberhead>div{gap:2px;display:grid}.barberhead .dailytotal{color:#287047;font-size:10px;font-weight:700;display:block}.earningsfilters{align-items:end;gap:14px;margin-bottom:16px;padding:14px 16px;display:flex}.earningsfilters .segments{margin:0 auto 0 0}.earningsfilters label{color:#6c766f;text-transform:uppercase;letter-spacing:.6px;gap:5px;font-size:10px;font-weight:700;display:grid}.earningsfilters input,.earningsfilters select{border:1px solid var(--line);color:#243129;background:#fff;border-radius:7px;padding:8px}.summarygrid{grid-template-columns:1.25fr 1fr 1fr;gap:14px;margin-bottom:14px;display:grid}.summarycard{border:1px solid var(--line);background:#fff;border-radius:12px;gap:5px;padding:20px;display:grid}.summarycard.main{background:var(--green);color:#fff;border-color:var(--green)}.summarycard small{letter-spacing:1px;color:#7e8981;font-size:10px;font-weight:700}.summarycard.main small,.summarycard.main span{color:#ffffffa3}.summarycard strong{color:var(--green);font:700 29px Playfair Display}.summarycard span{color:#838c85;font-size:11px}.earningslayout{grid-template-columns:minmax(0,1.7fr) minmax(260px,.8fr);gap:14px;display:grid}.barberstat{border:0;border-bottom:1px solid var(--line);text-align:left;border-radius:0;grid-template-columns:40px minmax(140px,1fr) minmax(90px,.35fr) minmax(100px,.4fr);align-items:center;gap:12px;width:100%;padding:16px 20px;display:grid}.barberstat:hover,.payoverview button:hover{background:#f8faf5}.barberstat small,.payoverview small{color:#818a83;font-size:10px;display:block}.barberstat strong{color:var(--green);margin-top:3px;display:block}.barberstatmain i{background:#edf0ec;border-radius:4px;height:4px;margin-top:9px;display:block;overflow:hidden}.barberstatmain i span{background:#9bad56;border-radius:4px;height:100%;display:block}.payoverview .listtitle svg{color:var(--green)}.payoverview>button{border:0;border-bottom:1px solid var(--line);text-align:left;border-radius:0;justify-content:space-between;align-items:center;width:100%;padding:16px 18px;display:flex}.payoverview>button strong{color:var(--green);text-align:right;max-width:150px;font-size:11px}.empty{color:#7d867f;padding:25px}.percentinput{position:relative}.percentinput input{padding-right:38px!important}.percentinput span{color:#718078;position:absolute;top:11px;right:13px}.hint{color:#667069;background:#f4f7ef;border-radius:8px;margin:0;padding:12px;font-size:11px;line-height:1.5}.hint svg{vertical-align:middle;width:15px;margin-right:4px}.compensationform{gap:14px}@media (width<=1000px){.earningsfilters{flex-wrap:wrap;align-items:stretch}.earningsfilters .segments{width:100%;overflow:auto}.summarygrid,.earningslayout{grid-template-columns:1fr}}@media (width<=800px){.barberstat{grid-template-columns:38px 1fr}.barberstat>div:nth-last-child(-n+2){padding-left:50px}.earningsfilters label{flex:1;min-width:130px}}:root{--row-h:44px}.app{grid-template-columns:194px 1fr}aside{width:194px;padding-left:14px;padding-right:14px}main{padding:18px 24px}main>header{margin-bottom:10px}main>header h1{font-size:27px;line-height:1.08}main>header p{margin-bottom:2px}.datebar{min-height:42px;margin-bottom:8px;padding:6px 10px}.datebar button{padding:6px 10px}.datebar .navbuttons input{padding:5px 7px}.datebar .quickdates{padding-top:5px}.schedule{height:calc(100vh - 126px);max-height:none}.schedule .grid{grid-template-columns:78px repeat(var(--cols),minmax(128px,1fr))}.schedule .timehead,.schedule .barberhead{height:44px;padding:5px 9px}.schedule .barberhead>span{flex:none;width:29px;height:29px;font-size:12px}.schedule .barberhead b{font-size:12px;line-height:1.1}.schedule .barberhead .dailytotal{font-size:9px;line-height:1.1}.schedule .time{font-size:11px}.schedule .time small{margin-top:2px}.schedule .row{border-bottom-color:#d8ded8;transition:background .1s}.schedule .row.fullhour{border-top:2px solid #b7c2ba}.schedule .row:hover .time{color:#173d2e;background:#dbead9;font-weight:700;box-shadow:inset -3px 0 #86a06a}.schedule .slot{transition:background .1s,box-shadow .1s}.schedule .slot:not(.covered):not(:has(.appointment)){cursor:pointer}.schedule .slot:not(.covered):not(:has(.appointment)):hover:after{content:attr(data-time);color:#fff;z-index:2;background:#173d2e;border-radius:10px;padding:2px 6px;font-size:8px;font-weight:700;position:absolute;top:4px;right:5px}.schedule .appointment{padding:4px 7px}.schedule .appointment b{font-size:12px;line-height:1.15}.schedule .appointment span{font-size:10px;line-height:1.1}.schedule .appointment small{display:none}@media (width>=1400px){main{padding-left:28px;padding-right:28px}.schedule .grid{grid-template-columns:82px repeat(var(--cols),minmax(150px,1fr))}}@media (width<=800px){:root{--row-h:44px}.app{display:block}aside{width:100%}main{padding:12px}.schedule{height:calc(100vh - 205px);max-height:none}.schedule .grid{grid-template-columns:70px repeat(var(--cols),minmax(122px,1fr))}}.headeractions{align-items:center;gap:8px;display:flex}.finishtrigger{align-items:center;gap:7px;display:flex;position:relative}.finishtrigger i{color:#173d2e;background:#dce95d;border-radius:10px;place-items:center;min-width:19px;height:19px;font-size:10px;font-style:normal;font-weight:800;display:grid}.finishpanel{z-index:40;color:#17201b;background:#f7f8f4;flex-direction:column;width:min(390px,100vw);padding:0;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-12px 0 40px #10251a30}.finishhead{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:start;padding:20px;display:flex}.finishhead p{letter-spacing:1.5px;color:#6f7b72;margin:0 0 3px;font-size:9px;font-weight:800}.finishhead h2{margin:0;font:700 24px Playfair Display,serif}.finishhead small{color:#7a847d;text-transform:capitalize;margin-top:4px;display:block}.finishhead>button{border:0;padding:5px}.finishbody{padding:12px;overflow:auto}.finishcard{border:1px solid var(--line);background:#fff;border-radius:10px;margin-bottom:9px;overflow:hidden}.finishcard.due{border-color:#aab67b}.finishsummary{text-align:left;border:0;border-radius:0;grid-template-columns:31px 1fr auto;align-items:center;gap:9px;width:100%;padding:12px;display:grid}.finishsummary:hover{background:#f7f9f4}.finishsummary>span:nth-child(2){min-width:0}.finishsummary b{font-size:12px;display:block}.finishsummary small{color:#7d877f;white-space:nowrap;text-overflow:ellipsis;font-size:9px;display:block;overflow:hidden}.finishsummary>strong{color:#55705f;font-size:10px}.finishstatus{color:#688070;background:#eef1ed;border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.finishstatus svg{width:15px}.completed .finishstatus{color:#287044;background:#e2f1e5}.no_show .finishstatus{color:#9b4a40;background:#f3e7e5}.finishdetails{border-top:1px solid var(--line);background:#fbfcfa;padding:13px}.finishquestion{margin:0 0 9px;font-size:11px;font-weight:700}.attendance{grid-template-columns:1fr 1fr;gap:7px;display:grid}.attendance button{justify-content:center;align-items:center;gap:5px;font-size:10px;display:flex}.attendance button.selected{color:#28613b;background:#e7f2e8;border-color:#497a58}.attendance button.selected.no{color:#914139;background:#f8eae8;border-color:#ae6960}.finishsection{margin-top:14px}.finishsection>label,.tipfield{color:#5f6b63;margin-bottom:6px;font-size:10px;font-weight:700;display:block}.addservice{grid-template-columns:1fr auto;gap:6px;display:grid}.addservice select,.tipfield input{background:#fff;border:1px solid #d8ddd8;border-radius:7px;width:100%;padding:8px}.addservice button{padding:6px;font-size:9px}.addservice svg{width:12px}.extraitem{border-bottom:1px solid #e8ebe7;grid-template-columns:1fr auto 25px;align-items:center;gap:7px;padding:7px 3px;font-size:10px;display:grid}.extraitem button{color:#9b493f;border:0;padding:3px}.extraitem svg{width:12px}.tipfield{margin-top:12px}.tipfield input{margin-top:6px}.finishtotal,.closedsummary span{justify-content:space-between;align-items:center;display:flex}.finishtotal{border-top:1px solid var(--line);margin-top:12px;padding-top:10px;font-size:11px}.finishtotal strong{color:var(--green);font:700 18px Playfair Display}.finishsave{background:var(--green);border-color:var(--green);color:#fff;width:100%;margin-top:11px}.finishsave.noshow{background:#8e4941;border-color:#8e4941}.closedsummary{color:#69746c;gap:6px;font-size:10px;display:grid}.closedsummary b{color:#27352c}.reopen{width:100%;margin-top:12px;font-size:10px}.finishempty{text-align:center;color:#7d877f;justify-items:center;gap:7px;padding:45px 20px;display:grid}.finishempty svg{color:#91a098;width:32px;height:32px}.finishempty b{color:#455249}.finishempty span{max-width:230px;font-size:11px}.appointment.no_show{opacity:.78;background:#f0e8e6;border-left-color:#9b5148}.appointment.no_show b{text-decoration:line-through}.appointment.completed:after{content:"✓";color:#2e7946;font-weight:800;position:absolute;top:3px;right:5px}.appointment.no_show:after{content:"No vino";color:#94483f;font-size:8px;font-weight:800;position:absolute;top:4px;right:5px}@media (width<=800px){.finishpanel{width:100%}.headeractions{gap:5px}.finishtrigger{font-size:0}.finishtrigger svg{width:17px}}.finishpanel{left:auto}:root{--green:#202020;--lime:#d8d8d8;--line:#d5d5d5;color:#1b1b1b;background:#f1f1f1}body{color:#1b1b1b;background:#f1f1f1}aside{color:#202020;background:#f8f8f8;border-right:1px solid #d7d7d7}.brand{border-bottom:1px solid #ddd;padding:0 4px 18px;display:block}.brand img{object-fit:contain;object-position:center;background:#050505;border-radius:9px;width:100%;height:125px;display:block}nav button{color:#595959}nav button:hover,nav button.active{color:#111;background:#e5e5e5}nav button.active{box-shadow:inset 3px 0 #222}aside footer{color:#777}.primary{color:#fff;background:#202020;border-color:#202020}.schedule .barberhead>span,.avatar{color:#222;background:#e2e2e2}.schedule .barberhead .dailytotal{color:#4e4e4e}.schedule .row.fullhour{border-top-color:#a9a9a9}.schedule .row:hover{background:#ededed!important}.schedule .row:hover .time{color:#111;background:#d9d9d9;box-shadow:inset -3px 0 #4b4b4b}.schedule .slot:not(.covered):not(:has(.appointment)):hover{box-shadow:inset 0 0 0 2px #777;background:#dedede!important}.schedule .slot:not(.covered):not(:has(.appointment)):hover:after{background:#202020}.appointment{color:#1f1f1f;background:#e3e3e3;border-left-color:#666}.appointment span{color:#555}.appointment.completed{background:#d7d7d7;border-left-color:#222}.appointment.completed:after{color:#222}.appointment.no_show{background:#ececec;border-left-color:#777}.appointment.no_show:after{color:#555}.summarycard.main{background:#202020;border-color:#202020}.summarycard.main strong{color:#fff}.serviceicon{color:#222;background:#e2e2e2}.status.on,.servicecard i.on{color:#252525;background:#e2e2e2}.finishtrigger.attention{color:#222;background:#ededed;border-color:#777}.finishtrigger i{color:#fff;background:#333}.finishpanel{background:#f3f3f3}.finishstatus,.completed .finishstatus,.no_show .finishstatus{color:#333;background:#e2e2e2}.attendance button.selected,.attendance button.selected.no{color:#222;background:#dedede;border-color:#555}.hint{background:#ededed}.finishtotal strong,.servicecard strong,.barberstat strong,.payoverview>button strong{color:#222}.barberstatmain i span{background:#555}.error{color:#222;background:#e5e5e5;border-left:3px solid #333}.danger{color:#333;border-color:#aaa}@media (width<=800px){.brand{border:0;width:105px;padding:0}.brand img{height:58px}}.earningslock{place-items:center;min-height:calc(100vh - 36px);padding:20px;display:grid}.lockcard{border:1px solid var(--line);text-align:center;background:#fff;border-radius:16px;justify-items:center;width:min(390px,100%);padding:28px;display:grid;box-shadow:0 12px 45px #00000012}.lockcard>img{object-fit:cover;background:#050505;border-radius:50%;width:94px;height:94px;margin-bottom:-20px}.lockicon{color:#fff;z-index:2;background:#202020;border:4px solid #fff;border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.lockicon svg{width:19px}.lockcard>p{letter-spacing:1.7px;color:#737373;margin:14px 0 3px;font-size:9px;font-weight:800}.lockcard>h1{font-size:30px}.lockcard>small{color:#707070;max-width:290px;margin:7px 0 21px;line-height:1.5}.lockcard>label{text-align:left;color:#555;width:100%;font-size:11px;font-weight:700}.passwordfield{margin-top:7px;position:relative}.passwordfield input{background:#fff;border:1px solid #cfcfcf;border-radius:8px;width:100%;padding:11px 42px 11px 12px}.passwordfield button{background:0 0;border:0;padding:7px;position:absolute;top:3px;right:4px}.authsubmit{justify-content:center;width:100%;margin-top:12px}.autherror{text-align:left;background:#ededed;border-left:3px solid #222;width:100%;margin-top:9px;padding:9px;font-size:11px}.lockcard>em{color:#8a8a8a;margin-top:14px;font-size:9px;font-style:normal}.earningsheaderactions{gap:7px;display:flex}.earningsheaderactions button{align-items:center;gap:6px;display:flex}@media (width<=800px){.earningslock{min-height:65vh;padding:8px}.lockcard{padding:22px}.earningsheaderactions button{font-size:0}.earningsheaderactions svg{width:17px}}.posmetrics{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px;display:grid}.posmetrics>div{border:1px solid var(--line);background:#fff;border-radius:10px;padding:12px 15px}.posmetrics small{color:#777;letter-spacing:1px;font-size:9px;font-weight:800;display:block}.posmetrics strong{font:700 22px Playfair Display,serif}.poslayout{grid-template-columns:minmax(0,1fr) 330px;gap:12px;height:calc(100vh - 150px);display:grid}.productarea{flex-direction:column;display:flex;overflow:hidden}.producttoolbar{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:11px;display:flex}.producttoolbar>span{color:#777;margin-left:auto;font-size:10px}.searchbox{flex:1;max-width:390px;position:relative}.searchbox svg{color:#777;width:15px;position:absolute;top:9px;left:10px}.searchbox input{border:1px solid #d0d0d0;border-radius:8px;width:100%;padding:8px 10px 8px 33px}.productcatalog{grid-template-columns:repeat(auto-fill,minmax(145px,1fr));align-content:start;gap:9px;padding:12px;display:grid;overflow:auto}.producttile{text-align:left;grid-template-columns:36px 1fr;gap:3px 8px;min-height:100px;padding:12px;display:grid;position:relative}.producttile:hover{background:#f3f3f3;border-color:#777}.producttile:disabled{opacity:.55}.productglyph{background:#e4e4e4;border-radius:8px;grid-row:1/3;place-items:center;width:34px;height:34px;display:grid}.productglyph svg{width:16px}.producttile b{font-size:11px}.producttile strong{font-size:13px}.producttile small{color:#777;grid-column:1/3;margin-top:auto;font-size:9px}.producttile small.low,.inventoryrow .low{color:#222;font-weight:800}.producttile i{color:#fff;background:#222;border-radius:50%;place-items:center;width:21px;height:21px;display:grid;position:absolute;bottom:8px;right:8px}.producttile i svg{width:12px}.cartpanel{color:#222;border-right:1px solid var(--line);background:#fff;flex-direction:column;width:auto;padding:0;display:flex;position:static;overflow:hidden}.carttitle{border-bottom:1px solid var(--line);justify-content:space-between;padding:13px;display:flex}.carttitle span{align-items:center;gap:7px;font-weight:700;display:flex}.carttitle svg{width:17px}.carttitle small{color:#777}.cartitems{flex:1;overflow:auto}.cartitem{border-bottom:1px solid #e7e7e7;grid-template-columns:1fr auto;gap:6px;padding:11px;display:grid}.cartitem b,.cartitem small{display:block}.cartitem b{font-size:11px}.cartitem small{color:#777;font-size:9px}.quantity{align-items:center;gap:6px;display:flex}.quantity button,.cartremove{width:25px;height:25px;padding:3px}.quantity svg,.cartremove svg{width:12px}.cartremove{color:#555;justify-self:end}.emptycart,.posempty{text-align:center;color:#888;justify-items:center;gap:7px;padding:35px 20px;font-size:10px;display:grid}.emptycart svg,.posempty svg{width:30px;height:30px}.posempty{grid-column:1/-1}.posempty b{color:#555}.checkout{border-top:1px solid var(--line);gap:9px;padding:12px;display:grid}.checkout label{color:#666;font-size:9px;font-weight:800}.checkout select,.checkout input{border:1px solid #d0d0d0;border-radius:7px;width:100%;margin-top:5px;padding:8px}.paymentmethods{grid-template-columns:repeat(3,1fr);gap:5px;display:grid}.paymentmethods button{justify-items:center;gap:2px;padding:7px 3px;font-size:8px;display:grid}.paymentmethods button.selected{background:#dedede;border-color:#555}.paymentmethods svg{width:15px}.postotal,.change{justify-content:space-between;align-items:center;display:flex}.postotal{border-top:1px solid var(--line);padding-top:9px}.postotal strong{font:700 23px Playfair Display,serif}.change{font-size:10px}.charge{justify-content:center;width:100%}.poserror{background:#ededed;border-left:3px solid #222;margin:0;padding:8px;font-size:9px}.saletoast{z-index:45;color:#fff;background:#222;border-radius:9px;align-items:center;gap:9px;padding:11px 12px;font-size:11px;display:flex;position:fixed;bottom:20px;right:20px;box-shadow:0 8px 25px #0004}.saletoast>span{color:#222;background:#fff;border-radius:50%;place-items:center;width:20px;height:20px;display:grid}.saletoast button{color:#fff;background:0 0;border:0;padding:2px}.productmanager{grid-template-columns:1fr;width:min(900px,95vw);display:grid}.managerbody{min-height:350px;padding:16px}.newproduct{margin-bottom:12px}.inventorylist{border:1px solid var(--line);border-radius:9px;overflow:hidden}.inventoryhead,.inventoryrow{grid-template-columns:1fr 100px 90px 80px;align-items:center;gap:10px;display:grid}.inventoryhead{color:#777;background:#eee;padding:8px 12px;font-size:9px;font-weight:800}.inventoryrow{border:0;border-bottom:1px solid var(--line);text-align:left;border-radius:0;width:100%;padding:10px 12px}.inventoryrow small{color:#888;font-size:9px;display:block}.inventoryrow i{font-size:9px;font-style:normal}.inventoryrow i.active{font-weight:800}.editproduct{border-top:1px solid var(--line);background:#fafafa}.editproduct h3{margin:0;padding:14px 22px 0}@media (width<=1000px){.poslayout{grid-template-columns:1fr;height:auto}.cartpanel{min-height:350px}.productarea{min-height:400px}}@media (width<=700px){.posmetrics{grid-template-columns:1fr}.productcatalog{grid-template-columns:repeat(2,1fr)}.inventoryhead,.inventoryrow{grid-template-columns:1fr 70px 55px}.inventoryhead span:last-child,.inventoryrow i{display:none}}.syncfooter{flex-direction:column;gap:8px;display:flex}.syncbutton{color:#242424;text-align:left;background:#fff;border:1px solid #d4d4d4;border-radius:10px;align-items:center;gap:8px;width:100%;padding:10px;font-size:12px;display:flex}.syncbutton i{background:#9a9a9a;border-radius:50%;width:8px;height:8px;margin-left:auto}.syncbutton i.online{background:#218c4a;box-shadow:0 0 0 3px #dff5e8}.syncbutton i.offline,.syncbutton i.error{background:#c74a3c}.cloudmodal{width:min(520px,100vw - 32px)}.cloudintro,.cloudsuccess{align-items:flex-start;gap:15px;margin:8px 0 22px;display:flex}.cloudintro>span,.cloudsuccess>svg{color:#111;background:#ededed;border-radius:14px;place-items:center;width:46px;min-width:46px;height:46px;padding:11px;display:grid}.cloudintro>span.offline{color:#a43b31}.cloudintro svg{width:24px}.cloudintro b,.cloudsuccess b{font-size:16px;display:block}.cloudintro p,.cloudsuccess small{color:#666;margin:6px 0 0;line-height:1.5;display:block}.cloudsuccess span{color:#444;margin-top:4px;display:block}.cloudnote,.cloudmessage{color:#444;background:#f2f2f2;border-radius:10px;margin:10px 0;padding:12px 14px;font-size:13px}.cloudmodal .modalactions{margin-top:20px}.cloudpage{place-items:center;min-height:calc(100vh - 70px);padding:24px;display:grid}.cloudembedded{border:1px solid var(--line);max-height:none;box-shadow:0 18px 60px #00000018}.cloudembedded .modalhead{background:#fafafa}.mobilebarbers{display:none}@media (width<=800px){body{overflow-x:hidden}.app{min-height:100dvh;display:block}aside{z-index:60;background:#fafafa;border:0;border-top:1px solid #cfcfcf;flex-direction:row;align-items:center;width:100%;height:68px;padding:6px 7px;display:flex;position:fixed;inset:auto 0 0;box-shadow:0 -5px 20px #00000012}.brand{display:none}nav{scrollbar-width:none;gap:2px;width:calc(100% - 48px);margin:0;display:flex;overflow-x:auto}nav::-webkit-scrollbar{display:none}nav button{text-align:center;white-space:nowrap;border-radius:8px;flex-direction:column;justify-content:center;gap:2px;min-width:53px;height:54px;padding:4px 3px;font-size:9px;display:flex}nav button>span{font-size:17px;line-height:18px}nav button svg{width:19px;height:19px}aside footer{flex:0 0 44px;width:44px;margin:0 0 0 4px;padding:0;display:block}.syncfooter{display:block}.syncbutton{background:0 0;border:0;place-items:center;width:44px;height:54px;padding:0;font-size:0;display:grid;position:relative}.syncbutton:before{content:"☁";color:#444;font-size:21px;line-height:1}.syncbutton i{width:9px;height:9px;margin:0;position:absolute;top:8px;right:7px}main{width:100%;min-height:100dvh;padding:10px 10px 82px;overflow:hidden}main>header{align-items:flex-end;gap:8px;margin-bottom:8px}main>header h1{max-width:205px;font-size:21px;line-height:1.05}main>header p{font-size:9px}.headeractions{gap:5px}.headeractions button{height:42px;padding:8px 10px}.headeractions .primary{justify-content:center;width:42px;padding:0;font-size:0}.datebar{gap:7px;margin-bottom:8px;padding:7px}.navbuttons{grid-template-columns:38px 48px 38px 1fr;width:100%;display:grid}.navbuttons button,.navbuttons input{width:100%;min-width:0;padding:6px 5px}.segments{width:100%;margin:0}.segments button{flex:1}.mobilebarbers{scrollbar-width:none;gap:6px;padding:0 1px 7px;display:flex;overflow-x:auto}.mobilebarbers::-webkit-scrollbar{display:none}.mobilebarbers button{text-align:left;background:#fff;gap:2px;min-width:105px;padding:8px 10px;display:grid}.mobilebarbers button b{font-size:11px}.mobilebarbers button small{color:#777;font-size:9px}.mobilebarbers button.selected{color:#fff;background:#202020;border-color:#202020}.mobilebarbers button.selected small{color:#d7d7d7}.schedule{width:100%;height:calc(100dvh - 238px);min-height:360px;max-height:none;overflow:auto}.schedule .grid{grid-template-columns:62px minmax(0,1fr);width:100%;min-width:0}.schedule .timehead,.schedule .barberhead{height:42px}.schedule .barberhead{padding:5px 8px}.schedule .slot{min-width:0}.schedule .slot:not(.covered):not(:has(.appointment)) .add{opacity:.32;width:16px;height:16px}.schedule .slot:not(.covered):not(:has(.appointment)):active{box-shadow:inset 0 0 0 2px #777;background:#dedede!important}.schedule .appointment{padding:5px 8px}.schedule .appointment small{display:block}.overlay{z-index:100;place-items:stretch stretch;padding:0}.overlay>.modal{border-radius:0;flex-direction:column;width:100%;height:100dvh;max-height:100dvh;display:flex;overflow:hidden}.overlay>.modal>.modalhead{flex:none;padding:17px 18px}.overlay>.modal>.form{flex:auto;align-content:start;padding:17px 18px;overflow-y:auto}.overlay>.modal>.error{flex:none;margin:0 18px 8px}.overlay>.modal>.modalactions{padding:13px 18px calc(13px + env(safe-area-inset-bottom));background:#fff;flex:none;box-shadow:0 -5px 18px #00000012}.overlay>.modal>.modalactions button{min-height:44px}.finishpanel{z-index:90}.cloudpage{align-items:start;min-height:calc(100dvh - 92px);padding:0}.cloudembedded{width:100%;box-shadow:none;border-radius:12px}.cloudmodal .modalhead,.cloudmodal .form{padding:17px}.cloudmodal .modalactions{flex-wrap:wrap;padding:14px 17px}.cloudmodal .modalactions button{white-space:nowrap;flex:1;justify-content:center}.cloudintro,.cloudsuccess{margin:4px 17px 18px}.cloudnote,.cloudmessage{margin:10px 17px}}.appointmentactionbody{align-items:center;gap:14px;padding:22px 25px;display:flex}.appointmentactionbody p{gap:4px;margin:0;display:grid}.appointmentactionbody p span{color:#777;font-size:11px}.appointmentstatus{text-transform:uppercase;letter-spacing:.5px;background:#ececec;border-radius:20px;padding:6px 9px;font-size:10px;font-weight:800}.appointmentstatus.completed{color:#222;background:#dedede}.appointmentstatus.no_show{color:#555;background:#eee}.appointmentactions .modalactions{justify-content:flex-end}.appointmentactions .modalactions button{justify-content:center;align-items:center;gap:7px;display:flex}.quickfinish{width:min(520px,100vw - 32px)}.quickfinish .modalhead small{color:#777;margin-top:5px;font-size:11px;display:block}.quickfinishbody{padding:14px;overflow:auto}.quickfinishbody .finishcard{margin:0}.quickfinishbody .finishsummary{display:none}.quickfinishbody .finishdetails{border-top:0}.finishpayment{grid-template-columns:1fr 1fr;gap:7px;margin-top:6px;display:grid}.finishpayment button{justify-content:center;align-items:center;gap:6px;font-size:10px;display:flex}.finishpayment button.selected{color:#202020;background:#dedede;border-color:#555;font-weight:700}.finishpayment svg{width:16px}@media (width<=800px){.overlay>.modal.appointmentactions{border-radius:18px 18px 0 0;align-self:end;height:auto;min-height:0;max-height:calc(100dvh - 18px)}.appointmentactions .appointmentactionbody{flex-direction:column;align-items:flex-start;gap:10px;padding:20px 18px}.appointmentactions .modalactions{grid-template-columns:1fr 1fr;display:grid}.overlay>.modal.quickfinish{border-radius:0;width:100%;height:100dvh;max-height:100dvh}.quickfinishbody{flex:1;min-height:0;padding:10px;overflow-y:auto}.quickfinishbody .finishdetails{padding:14px}}
