:root{--booking-blue:#2869ef;--booking-panel:#191b1f;--booking-line:#2b3a4b;--booking-muted:#8b98aa}.booking-body{min-height:100vh;margin:0;background:#3d3e43;color:#f1f3f6}.booking-app{position:relative;width:min(430px,100%);min-height:100vh;margin:auto;padding-bottom:70px;background:#101113;box-shadow:0 0 0 1px #24262b,0 20px 70px rgba(0,0,0,.35)}.booking-header{height:76px;padding:0 16px;display:flex;align-items:center;gap:11px;border-bottom:1px solid #25272c}.shop-avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:var(--booking-blue);font-size:12px;font-weight:700}.booking-header>div:nth-child(2){min-width:0;flex:1}.booking-header strong,.booking-header small{display:block}.booking-header strong{font-size:16px}.booking-header small{margin-top:2px;color:#748094;font-size:10px}.booking-header>button{border:0;background:none;color:#ddd;font-size:19px}.catalog-screen,.schedule-screen,.details-screen{padding:16px}.catalog-tabs{display:grid;grid-template-columns:1fr 1fr;margin-bottom:14px;padding:3px;border-radius:9px;background:#17283a}.catalog-tabs button{height:34px;border:0;border-radius:7px;background:transparent;color:#8cabdc;font-size:13px}.catalog-tabs button.active{background:#1d1e21;color:#fff}.catalog-screen h1{margin:0 0 12px;font:700 19px var(--display)}.service-catalog,.professional-catalog{display:grid;gap:11px}.service-card,.professional-card{padding:15px;border:1px solid var(--booking-line);border-radius:12px;background:#1c1e22}.service-card-head,.service-card-foot{display:flex;align-items:center;justify-content:space-between;gap:12px}.service-card h2,.professional-card h2{margin:0;font:600 16px var(--display)}.service-card-price{color:#2d73ff;font:700 20px var(--display)}.service-duration{display:inline-flex;margin-top:10px;padding:5px 9px;border-radius:6px;background:#172b43;color:#d9e8ff;font-size:11px}.service-card-foot{margin-top:12px;padding-top:11px;border-top:1px solid #304052}.available{padding:5px 9px;border-radius:6px;background:#16ae5a;color:#fff;font-size:10px}.service-card button,.professional-card button{height:36px;padding:0 13px;border:0;border-radius:7px;background:var(--booking-blue);color:#fff;font-size:12px}.professional-card{display:flex;align-items:center;gap:12px}.professional-card .avatar{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:#243348;color:#8fbaff}.professional-card>div{flex:1}.professional-card small{display:block;margin-top:4px;color:var(--booking-muted);font-size:10px}.schedule-head{display:flex;align-items:center;gap:11px;padding-bottom:15px;border-bottom:1px solid #28313d}.schedule-head>button{width:34px;height:34px;border:1px solid #304052;border-radius:7px;background:#17191d;color:#ddd}.schedule-head>div{flex:1}.schedule-head strong,.schedule-head small{display:block}.schedule-head strong{font-size:15px}.schedule-head small{margin-top:3px;color:var(--booking-muted);font-size:10px}.schedule-head>span{color:#87a8df;font-size:10px}.selected-service{margin:16px 0;padding:13px;border:1px solid var(--booking-line);border-radius:10px;background:#181a1e}.selected-service strong,.selected-service small{display:block}.selected-service strong{font-size:14px}.selected-service small{margin-top:4px;color:#9eb8df;font-size:10px}.schedule-section{margin-top:19px}.schedule-section h2{margin:0 0 10px;font:600 14px var(--display)}.professional-picker{display:grid;grid-template-columns:1fr 1fr;gap:7px}.professional-choice{min-height:44px;padding:8px;border:1px solid #2d3948;border-radius:8px;background:#17191d;color:#bbb;font-size:11px}.professional-choice.selected{border-color:var(--booking-blue);color:#fff}.day-picker{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.day-button{height:58px;border:1px solid #303947;border-radius:8px;background:#17191d;color:#ccc}.day-button span,.day-button strong{display:block}.day-button span{font-size:9px}.day-button strong{margin-top:4px;font-size:14px}.day-button.selected{border-color:var(--booking-blue);background:var(--booking-blue);color:#fff}.time-title{display:flex;align-items:center;justify-content:space-between}.time-title span{color:#7796c4;font-size:9px}.time-groups{display:grid;gap:14px}.time-group>small{display:block;margin-bottom:7px;color:#87a8df;font-size:10px}.time-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.time-grid button{height:43px;border:1px solid #2e3c4e;border-radius:9px;background:#111214;color:#eee}.time-grid button.selected{border-color:var(--booking-blue);background:var(--booking-blue)}.continue-button{position:sticky;bottom:75px;width:100%;height:50px;margin-top:20px;border:0;border-radius:9px;background:var(--booking-blue);color:#fff;font-weight:700}.continue-button:disabled{background:#294e9b;color:#a9b9da}.booking-review{margin:16px 0;padding:14px;border:1px solid var(--booking-line);border-radius:10px;background:#181a1e}.booking-review strong,.booking-review span{display:block}.booking-review strong{font-size:15px}.booking-review span{margin-top:5px;color:#91a9cb;font-size:11px}.details-screen form{display:grid;gap:14px}.details-screen label{display:grid;gap:7px;color:#aab0bb;font-size:11px}.details-screen input{height:49px;padding:0 12px;border:1px solid #303b49;border-radius:8px;background:#17191d;color:#fff;font-size:14px}.details-screen form p{min-height:16px;margin:0;color:#e27d77;font-size:11px}.details-screen form button{height:51px;border:0;border-radius:9px;background:var(--booking-blue);color:#fff;font-weight:700}.booking-success{padding:80px 24px;text-align:center}.booking-success>span{width:58px;height:58px;display:grid;place-items:center;margin:auto;border-radius:50%;background:#173e2c;color:#73dba7;font-size:25px}.booking-success h2{font:700 27px var(--display)}.booking-success p{color:#8a94a3}.booking-success button{height:44px;padding:0 16px;border:1px solid #364253;border-radius:8px;background:transparent;color:#ddd}.booking-nav{position:absolute;left:0;right:0;bottom:0;height:64px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #27313d;background:#191c21}.booking-nav button{display:grid;place-items:center;border:0;background:none;color:#65758c;font-size:15px}.booking-nav button span{font-size:8px}.booking-nav button.active{color:#2e75ff;box-shadow:inset 0 2px #2e75ff}@media(min-width:600px){.booking-app{min-height:900px;margin-block:28px;border-radius:12px;overflow:hidden}.booking-nav{position:absolute}}@media(max-width:370px){.time-grid{grid-template-columns:repeat(3,1fr)}.day-picker{gap:4px}.catalog-screen,.schedule-screen,.details-screen{padding-inline:12px}}
/* Public profile, customer area and memberships */
.catalog-tabs{grid-template-columns:repeat(4,1fr);border-radius:5px}.catalog-tabs button{padding:0 4px;border-radius:3px;font-size:10px}.membership-catalog{display:grid;gap:10px}.membership-card{padding:18px;border:1px solid #3b3420;background:#18191b}.membership-card>small,.shop-about section>small{color:#ffc400;font-size:8px;letter-spacing:.18em}.membership-card h2{margin:8px 0 3px;font:700 19px var(--display)}.membership-card>strong{display:block;color:#ffc400;font:700 25px var(--display)}.membership-card>strong em{color:#929292;font-size:10px;font-style:normal}.membership-card p{color:#aaa;font-size:11px;line-height:1.6}.membership-card ul{display:grid;gap:7px;margin:14px 0;padding:14px 0 0;border-top:1px solid #303033;list-style:none;font-size:11px}.membership-card a,.contact-shop{display:flex;align-items:center;justify-content:center;min-height:44px;margin-top:16px;background:#ffc400;color:#111;text-decoration:none;font-weight:700}.shop-about>h1{margin-top:0}.about-description{color:#aaa;line-height:1.65}.shop-about section{padding:17px 0;border-bottom:1px solid #292b2f}.shop-about section p{margin:9px 0 0;color:#ddd;font-size:12px}.about-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.about-chips span{padding:7px 9px;border:1px solid #3b3520;background:#201e15;color:#e7d993;font-size:10px}.hours-list{display:grid;gap:7px;margin:11px 0 0;padding:0;list-style:none}.hours-list li{display:flex;justify-content:space-between;color:#aaa;font-size:10px}.hours-list strong{color:#eee;font-weight:500}.empty-public{display:grid;place-items:center;min-height:190px;padding:25px;text-align:center;border:1px solid #292b2f;color:#aaa}.empty-public strong{color:#eee}.empty-public span{max-width:260px;margin-top:7px;font-size:11px}.client-screen{padding:16px}.client-access{display:grid;gap:12px;padding-top:24px}.client-access h1{margin:0;font:700 22px var(--display)}.client-access p{margin:0 0 8px;color:#999;font-size:11px}.client-access label{display:grid;gap:7px;color:#aaa;font-size:10px}.client-access input{height:50px;padding:0 13px;border:1px solid #37383c;background:#191a1d;color:#fff}.client-access button{height:48px;border:0;background:#ffc400;color:#111;font-weight:700}.client-access small{color:#ef7770}.client-profile{display:flex;align-items:center;gap:11px;padding:20px 0;border-bottom:1px solid #292b2f}.client-profile>span{width:43px;height:43px;display:grid;place-items:center;border-radius:50%;background:#ffc400;color:#111;font-weight:700}.client-profile>div{min-width:0;flex:1}.client-profile strong,.client-profile small{display:block}.client-profile small{margin-top:3px;color:#999;font-size:9px}.client-profile button{border:0;background:none;color:#ffc400}.client-filters{display:grid;grid-template-columns:1fr 1fr;margin:18px 0;border-bottom:1px solid #303136}.client-filters button{height:40px;border:0;background:none;color:#888}.client-filters button.active{color:#ffc400;box-shadow:inset 0 -2px #ffc400}.client-appointments{display:grid;gap:1px}.client-appointments article{display:grid;grid-template-columns:62px 1fr;gap:12px;padding:15px 0;border-bottom:1px solid #292b2f}.client-appointments time strong,.client-appointments time span,.client-appointments article div>*{display:block}.client-appointments time strong{font-size:14px;text-transform:uppercase}.client-appointments time span{margin-top:4px;color:#ffc400;font-size:11px}.client-appointments article div>strong{font-size:13px}.client-appointments article div>span{margin-top:4px;color:#999;font-size:10px}.client-appointments article div>small{width:max-content;margin-top:8px;padding:4px 6px;border:1px solid #496c5c;color:#75d2a8;font-size:8px}.booking-header svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.6}

/* Resumo do expediente na página pública. */
.shop-about .hours-list{gap:0;margin-top:12px;border-top:1px solid #25272b}
.shop-about .hours-list li{align-items:center;min-height:31px;padding:6px 0;border-bottom:1px solid #202226;font-size:11px}
.shop-about .hours-list li:last-child{border-bottom:0}
.shop-about .hours-list span{color:#9b9da3}
.shop-about .hours-list strong{color:#f0f0f1;font-variant-numeric:tabular-nums}
