:root{color:#31232a;font-synthesis:none;text-rendering:optimizelegibility;background:#fff9f7;font-family:Inter,ui-rounded,SF Pro Rounded,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:#fff9f7;min-width:320px}button,input,textarea,select{font:inherit}button{-webkit-tap-highlight-color:transparent}.app-shell{min-height:100dvh;padding-bottom:calc(92px + env(safe-area-inset-bottom))}.page{width:min(100%,680px);padding:calc(28px + env(safe-area-inset-top)) 20px 32px;margin:0 auto}.page__header{margin:0 0 30px}.eyebrow{color:#a94762;letter-spacing:.08em;text-transform:uppercase;margin:0 0 5px;font-size:.82rem;font-weight:750}h1{letter-spacing:-.045em;margin:0;font-size:clamp(2rem,9vw,2.65rem);line-height:1.05}.empty-card{background:#fff;border:1px solid #f0dce1;border-radius:22px;padding:28px 24px;box-shadow:0 8px 30px #652f4012}.empty-card__mark{color:#fff;background:#a94762;border-radius:15px;place-items:center;width:46px;height:46px;margin-bottom:18px;font-size:1.4rem;display:grid}.empty-card h2{margin:0 0 9px;font-size:1.18rem}.empty-card p{color:#705c64;margin:0;line-height:1.55}.bottom-nav{z-index:5;min-height:calc(72px + env(safe-area-inset-bottom));padding:9px 8px calc(9px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffdfcf0;border-top:1px solid #efdfdf;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-nav__item{color:#79656d;border-radius:13px;align-content:center;place-items:center;gap:3px;min-height:52px;font-size:.68rem;font-weight:650;text-decoration:none;display:grid}.bottom-nav__item.active{color:#a94762;background:#fceff1}.add-button{z-index:6;right:21px;bottom:calc(82px + env(safe-area-inset-bottom));color:#fff;background:#a94762;border:0;border-radius:50%;place-items:center;width:58px;height:58px;display:grid;position:fixed;box-shadow:0 8px 22px #7e2a4359}.add-button:disabled{opacity:.42}.network-notice{z-index:10;top:calc(10px + env(safe-area-inset-top));color:#602b08;text-align:center;background:#fff0c5;border-radius:12px;margin:0;padding:11px 14px;font-size:.9rem;font-weight:650;position:fixed;left:14px;right:14px;box-shadow:0 6px 20px #48300a1f}.fatal-error{max-width:600px;margin:0 auto;padding:40px 24px}.fatal-error p{color:#705c64;line-height:1.6}.auth-page{min-height:100dvh;padding:max(24px, env(safe-area-inset-top)) 20px max(24px, env(safe-area-inset-bottom));background:radial-gradient(circle at 15% 10%,#f9e2e8,#0000 34%),#fff9f7;place-items:center;display:grid}.auth-card{background:#fff;border:1px solid #f0dce1;border-radius:24px;width:min(100%,430px);padding:32px 25px;box-shadow:0 14px 40px #652f401a}.auth-card h1{font-size:2.05rem}.brand-mark{color:#fff;background:#a94762;border-radius:16px;place-items:center;width:50px;height:50px;margin-bottom:24px;font-size:1.45rem;display:grid}.auth-intro{color:#705c64;margin:13px 0 25px;line-height:1.5}.auth-form{gap:17px;display:grid}.auth-form label{color:#4a3940;gap:7px;font-size:.9rem;font-weight:700;display:grid}.auth-form input,.auth-form select,.auth-form textarea{color:#31232a;background:#fff;border:1px solid #ddc9cf;border-radius:12px;outline-color:#a94762;width:100%;min-height:48px;padding:10px 12px}.auth-form textarea{resize:vertical;min-height:auto}.primary-button{color:#fff;background:#a94762;border:0;border-radius:13px;min-height:50px;font-weight:750}.primary-button:disabled{opacity:.65}.text-link{color:#8a3851;margin-top:23px;font-size:.9rem;font-weight:700;display:inline-block}.form-error{color:#a2253e;margin:0;font-size:.9rem}.success-message{color:#2b5a45;background:#e5f3ea;border-radius:12px;margin:20px 0 0;padding:13px;line-height:1.5}.loading-message{color:#705c64;font-weight:700}.settings-card{background:#fff;border:1px solid #f0dce1;border-radius:18px;margin-top:16px;padding:12px 18px}.settings-card__title{color:#a94762;letter-spacing:.08em;text-transform:uppercase;margin:8px 0 11px;font-size:.76rem;font-weight:800}.settings-card__identity{color:#705c64;margin:8px 0 13px;font-size:.9rem}.settings-action{color:#4a3940;text-align:left;background:0 0;border:0;border-top:1px solid #f2e5e7;align-items:center;gap:11px;width:100%;min-height:47px;padding:0;font-weight:700;display:flex}.settings-action--featured{border-top:0;min-height:66px}.settings-action__icon{color:#a94762;background:#fceff1;border-radius:12px;flex:0 0 38px;place-items:center;width:38px;height:38px;display:grid}.settings-action small{color:#705c64;margin-top:3px;font-size:.77rem;font-weight:500;display:block}.settings-action__chevron{color:#9a7e87;margin-left:auto}.settings-action--danger{color:#a2253e}.client-search{color:#8a737b;background:#fff;border:1px solid #ddc9cf;border-radius:13px;align-items:center;gap:9px;margin-bottom:12px;padding:0 13px;display:flex}.client-search input{background:0 0;border:0;outline:0;width:100%;min-height:47px}.client-list{gap:9px;margin-top:18px;display:grid}.client-row{color:#31232a;background:#fff;border:1px solid #f0dce1;border-radius:15px;align-items:stretch;display:flex;overflow:hidden}.client-row button{color:inherit;text-align:left;background:0 0;border:0;flex:1;gap:4px;padding:16px;display:grid}.client-row span,.empty-list{color:#705c64;font-size:.9rem}.client-call{color:#a94762;border-left:1px solid #f0dce1;place-items:center;width:55px;display:grid}.primary-button{justify-content:center;align-items:center;gap:8px;width:100%;display:flex}.page-title-row{align-items:center;gap:8px;display:flex}.back-button{color:#8a3851;background:#fceff1;border:0;border-radius:13px;flex:0 0 43px;place-items:center;width:43px;height:43px;padding:0;display:grid}.back-button:active{background:#f6dde3}.field-optional{color:#8a737b;font-weight:500}.secondary-button{background:#fff;border:1px solid #ddc9cf;border-radius:13px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:47px;font-weight:750;display:flex}.secondary-button--danger{color:#a2253e;border-color:#eccbd3;margin-top:4px}.services-message{margin:12px 0}.services-empty{margin-top:18px}.services-empty .primary-button{margin-top:22px}.service-list{gap:9px;margin-top:18px;display:grid}.service-row{background:#fff;border:1px solid #f0dce1;border-radius:15px;min-height:70px;display:flex;overflow:hidden}.service-row__order{background:snow;border-right:1px solid #f3e6e8;grid-template-columns:1fr;width:38px;display:grid}.service-row__order button{color:#a94762;background:0 0;border:0;place-items:center;padding:0;display:grid}.service-row__order button:disabled{color:#d9c7cc}.service-row__main{color:#31232a;text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:11px;min-width:0;padding:12px 13px;display:flex}.service-row__label{align-items:center;gap:8px;min-width:0;display:flex}.service-row__label strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.service-abbreviation{color:#8a3851;background:#fceff1;border-radius:7px;flex:none;align-items:center;min-height:24px;padding:0 7px;font-size:.72rem;font-weight:800;display:inline-flex}.service-row__price{color:#705c64;flex:none;margin-left:auto;font-size:.92rem;font-weight:700}.add-menu{z-index:7;right:21px;bottom:calc(149px + env(safe-area-inset-bottom));background:#fff;border:1px solid #efdde2;border-radius:16px;gap:7px;min-width:190px;padding:8px;display:grid;position:fixed;box-shadow:0 12px 30px #652f402e}.add-menu button{color:#4a3940;text-align:left;background:0 0;border:0;border-radius:10px;min-height:43px;padding:0 12px;font-weight:700}.add-menu button:hover{background:#fceff1}.schedule-switch{grid-template-columns:48px 1fr 48px;align-items:center;gap:8px;display:grid}.schedule-switch .secondary-button{min-height:48px}.schedule-period{color:#31232a;text-align:center;text-transform:capitalize;background:0 0;border:0;min-height:48px;font-weight:800}.today-button{color:#8a3851;background:#fceff1;border:0;border-radius:9px;margin:8px auto 14px;padding:7px 12px;font-size:.82rem;font-weight:750;display:block}.filter-row{scrollbar-width:none;gap:8px;margin:0 -20px 17px;padding:0 20px 5px;display:flex;overflow-x:auto}.filter-chip{color:#705c64;background:#fff;border:1px solid #dfcdd2;border-radius:18px;flex:none;min-height:35px;padding:0 12px;font-size:.82rem;font-weight:700}.filter-chip.active{color:#fff;background:#a94762;border-color:#a94762}.pending-card{color:#684a09;background:#fff7da;border:1px solid #ecd8a8;border-radius:15px;gap:11px;margin-bottom:17px;padding:14px;display:flex}.pending-card div{gap:3px;display:grid}.pending-card span{font-size:.82rem}.pending-card button{color:inherit;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;padding:6px 0 0;font-weight:750;display:flex}.week-list{gap:19px;display:grid}.schedule-day{padding-top:3px}.schedule-day__heading{color:#31232a;text-align:left;text-transform:capitalize;background:0 0;border:0;gap:3px;width:100%;margin-bottom:9px;padding:0;display:grid}.schedule-day__heading:enabled{cursor:pointer}.schedule-day__heading span{font-size:1.08rem;font-weight:800}.schedule-day__heading small{color:#705c64;font-size:.79rem}.schedule-items{gap:8px;display:grid}.schedule-item{background:#fff;border-left:5px solid #a94762;border-radius:13px;min-height:66px;display:flex;overflow:hidden;box-shadow:0 3px 12px #652f400f}.schedule-item--shared{border-color:#6b74a8}.schedule-item--unavailable{border-color:#b47729}.schedule-item--errand{border-color:#4f8a6c}.schedule-item.is-complete{opacity:.52}.schedule-item__main{color:#31232a;text-align:left;background:0 0;border:0;flex:1;grid-template-columns:86px minmax(0,1fr) 18px;align-items:center;gap:8px;min-width:0;padding:10px 11px;display:grid}.schedule-item__time{color:#705c64;font-size:.78rem;font-weight:700}.schedule-item__main span:nth-child(2){gap:3px;min-width:0;display:grid}.schedule-item__main strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.schedule-item__main small{color:#705c64;font-size:.75rem}.schedule-item__actions{border-left:1px solid #f0e2e5;flex-direction:column;width:42px;display:flex}.schedule-item__actions button{color:#397057;background:0 0;border:0;flex:1;place-items:center;display:grid}.time-fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}.checkbox-label{align-items:center;gap:9px!important;display:flex!important}.checkbox-label input{width:20px!important;min-height:20px!important;padding:0!important}.now-marker{color:#a2253e;align-items:center;gap:8px;margin:3px 0;font-size:.76rem;font-weight:800;display:flex}.now-marker:after{content:"";background:#dc8295;flex:1;height:1px}.now-marker span{background:#c95370;border-radius:50%;width:8px;height:8px}.schedule-item--appointment{background:#fffafb;border-color:#a94762}.schedule-item--appointment.is-alert{background:#fff6ed;border-color:#c66b30}.appointment-state{color:#8a3851;background:#fce1e7;border-radius:6px;width:fit-content;margin-top:2px;padding:2px 6px;font-size:.67rem;font-style:normal;font-weight:800;display:inline-flex}.schedule-item--appointment.is-alert .appointment-state{color:#8c4e16;background:#fee3bf}.schedule-item--appointment.is-realized{opacity:.52;filter:grayscale(.35)}.schedule-item--appointment.is-realized .appointment-state{color:#446353;background:#dcece2}.schedule-item__time--stacked{line-height:1.55}.create-choice{gap:11px;display:grid}.create-choice button{color:#31232a;text-align:left;background:#fff;border:1px solid #f0dce1;border-radius:16px;align-items:center;gap:14px;min-height:82px;padding:16px;display:flex;box-shadow:0 5px 17px #652f400d}.create-choice button>svg{color:#a94762;background:#fceff1;border-radius:13px;width:43px;height:43px;padding:11px}.create-choice button:nth-child(2)>svg{color:#9b641e;background:#fff3df}.create-choice button:nth-child(3)>svg{color:#397057;background:#e9f5ed}.create-choice button:active{background:#fceff1}.create-choice span{gap:4px;display:grid}.create-choice small{color:#705c64;font-size:.85rem}.event-kind-choice{border:0;grid-template-columns:1fr 1fr;gap:10px;margin:0;padding:0;display:grid}.event-kind-choice legend{color:#4a3940;grid-column:1/-1;padding:0;font-size:.9rem;font-weight:700}.event-kind-choice label{display:block!important}.event-kind-choice input{opacity:0;position:absolute}.event-kind-choice label span{color:#705c64;background:#fff;border:1px solid #ddc9cf;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:50px;font-weight:700;display:flex}.event-kind-choice input:checked+span{color:#8a3851;background:#fceff1;border-color:#a94762;box-shadow:inset 0 0 0 1px #a94762}.event-kind-choice input:focus-visible+span{outline-offset:2px;outline:2px solid #a94762}.selection-list{background:#fff;border:1px solid #f0dce1;border-radius:13px;max-height:190px;display:grid;overflow-y:auto}.selection-list button{color:#31232a;text-align:left;background:0 0;border:0;border-bottom:1px solid #f4e9eb;gap:2px;min-height:50px;padding:10px 12px;font-weight:700;display:grid}.selection-list button:last-child{border-bottom:0}.selection-list small{color:#705c64;font-weight:500}.inline-add{color:#8a3851;background:0 0;border:0;justify-content:flex-start;align-items:center;gap:7px;width:fit-content;min-height:35px;padding:0;font-size:.88rem;font-weight:750;display:inline-flex}.quick-client{background:#fceff1;border-radius:13px;gap:9px;padding:13px;display:grid}.quick-client input{background:#fff!important;min-height:43px!important}.field-hint{color:#705c64;margin:-10px 0 0;font-size:.8rem;line-height:1.35}.appointment-lines{background:#fff;border:1px solid #f0dce1;border-radius:16px;gap:10px;padding:15px;display:grid}.appointment-lines>div:first-child{justify-content:space-between;align-items:center;gap:10px;display:flex}.appointment-lines>div:first-child span{color:#705c64;font-size:.86rem;font-weight:700}.service-search{gap:5px!important;font-size:.82rem!important}.service-search input{min-height:42px!important}.service-picker{border:1px solid #eddce1;border-radius:12px;max-height:185px;display:grid;overflow-y:auto}.service-picker button{color:#31232a;text-align:left;background:#fff;border:0;border-bottom:1px solid #f3e6e8;justify-content:space-between;align-items:center;gap:10px;min-height:50px;padding:9px 11px;display:flex}.service-picker button:last-child{border-bottom:0}.service-picker button span{align-items:center;gap:7px;display:flex}.service-picker button small{color:#8a3851;background:#fceff1;border-radius:5px;padding:3px 5px;font-size:.67rem}.service-picker button b{color:#705c64;flex:none;font-size:.85rem}.service-picker p{color:#705c64;margin:12px;font-size:.85rem}.appointment-line{grid-template-columns:minmax(0,.75fr) 98px 52px 36px;align-items:center;gap:7px;display:grid}.appointment-line input{border:1px solid #ddc9cf;border-radius:10px;min-width:0;min-height:42px;padding:8px}.appointment-line button{color:#a2253e;background:#fceff1;border:0;border-radius:9px;place-items:center;width:36px;height:36px;padding:0;display:grid}.appointment-detail{gap:14px;display:grid}.appointment-detail__heading{background:#fff;border:1px solid #f0dce1;border-radius:16px;justify-content:space-between;align-items:center;gap:13px;padding:16px;display:flex}.appointment-detail__heading>div:first-child,.appointment-detail__grid div,.appointment-detail__note{gap:4px;display:grid}.appointment-detail__actions{align-items:center;gap:8px;display:flex}.appointment-detail span{color:#837078;font-size:.78rem;font-weight:700}.appointment-detail__heading .primary-button{width:auto;min-width:96px;min-height:42px;padding:0 14px}.detail-status{border-radius:8px;align-items:center;min-height:28px;padding:0 9px;font-size:.75rem;font-style:normal;font-weight:800;display:inline-flex}.detail-status--planned{color:#8a3851;background:#fce1e7}.detail-status--completed{color:#446353;background:#dcece2}.appointment-detail__grid{background:#f0e2e5;border:1px solid #f0dce1;border-radius:16px;grid-template-columns:1fr 1fr;gap:1px;display:grid;overflow:hidden}.appointment-detail__grid div{background:#f8f4f5;min-height:55px;padding:11px 13px}.appointment-detail__grid .appointment-detail__address{grid-column:1/-1}.appointment-detail__grid strong{color:#67575d;font-weight:650}.appointment-detail__lines{background:#f0e2e5;border:1px solid #f0dce1;border-radius:16px;gap:1px;display:grid;overflow:hidden}.appointment-detail__lines>div{background:#fff;justify-content:space-between;padding:13px 14px;display:flex}.appointment-detail__lines>div span{color:#705c64}.appointment-detail__lines p{color:#67575d;background:#f8f4f5;grid-template-columns:1fr auto auto;gap:13px;margin:0;padding:11px 14px;display:grid}.appointment-detail__lines p span{font-size:.85rem}.appointment-detail__note{color:#67575d;background:#f8f4f5;border-radius:16px;padding:14px}.appointment-detail__note p{margin:0;line-height:1.45}.completion-detail{background:#d8e8df;border:1px solid #d8e8df;border-radius:16px;gap:1px;display:grid;overflow:hidden}.completion-detail div{background:#f2faf5;justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;display:flex}.completion-detail span{color:#4b7860;font-size:.78rem;font-weight:700}.completion-detail strong{color:#355d47}.total-card{color:#6b263c;background:#fceff1;border-radius:14px;justify-content:space-between;align-items:center;margin:0;padding:15px;display:flex}.total-card strong{font-size:1.18rem}.payment-choice{border:0;grid-template-columns:1fr 1fr;gap:9px;margin:0;padding:0;display:grid}.payment-choice legend{color:#4a3940;grid-column:1/-1;padding:0;font-size:.9rem;font-weight:700}.payment-choice label{display:block!important}.payment-choice input{opacity:0;position:absolute}.payment-choice label span{color:#705c64;background:#fff;border:1px solid #ddc9cf;border-radius:12px;justify-content:center;align-items:center;min-height:47px;font-size:.87rem;font-weight:700;display:flex}.payment-choice input:checked+span{color:#8a3851;background:#fceff1;border-color:#a94762;box-shadow:inset 0 0 0 1px #a94762}.payment-choice input:focus-visible+span{outline-offset:2px;outline:2px solid #a94762}@media (width>=700px){.bottom-nav{border-left:1px solid #efdfdf;border-right:1px solid #efdfdf;border-radius:18px 18px 0 0;width:100%;max-width:680px;margin:0 auto;right:auto}.add-button{right:max(24px,50% - 320px)}}.app-shell:has(.auth-form) .add-button{display:none}.stats-grid{grid-template-columns:1fr 1fr;gap:9px;display:grid}.stats-grid div{background:#fff;border:1px solid #f0dce1;border-radius:15px;gap:6px;min-height:92px;padding:14px;display:grid}.stats-grid span{color:#705c64;font-size:.78rem;font-weight:700}.stats-grid strong{font-size:1.12rem}.stats-list{background:#fff;border:1px solid #f0dce1;border-radius:16px;margin-top:19px;overflow:hidden}.stats-list h2{margin:0;padding:13px 14px;font-size:1rem}.stats-list p{color:#705c64;border-top:1px solid #f3e7e9;justify-content:space-between;gap:10px;margin:0;padding:11px 14px;font-size:.88rem;display:flex}.stats-list p strong{color:#4a3940;text-align:right}
