:root{font-family:Microsoft YaHei,PingFang SC,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#17252b;background:#f5f7f5;font-synthesis:none;font-size:14px;font-weight:400;--green:#254e40;--green-light:#e8f1ec;--line:#e5ebe7;--muted:#75807e;--canvas:#f5f7f5}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}button:focus-visible,a:focus-visible{outline:3px solid #99b9aa;outline-offset:3px}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1{font-size:28px;line-height:1.4;letter-spacing:-.7px;font-weight:700}h2{font-size:19px;line-height:1.5;font-weight:650}h3{font-size:16px}small{font-size:12px}.muted{color:var(--muted);line-height:1.8}.small-text{font-size:12px}.danger-text{color:#a44134!important}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--green);border:1px solid var(--green);color:#fff;border-radius:7px;min-height:42px;padding:10px 22px;font-size:14px;font-weight:550;line-height:1.4;white-space:nowrap;transition:background .16s,transform .16s}.button:hover:not(:disabled){background:#1c4033}.button:active:not(:disabled){transform:translateY(1px)}.button.secondary{color:var(--green);background:#fff;border-color:#426b5a}.button.secondary:hover:not(:disabled){background:#f0f5f1}.button.small{min-height:35px;padding:7px 16px;font-size:13px}.icon-button{border:0;background:transparent;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:6px;color:#58655f;flex-shrink:0}.icon-button:hover{background:var(--green-light)}.icon-button.bordered{border:1px solid #d8e1db;background:#fff}.text-button{border:0;padding:0;background:none;color:var(--green);font-size:13px;display:inline-flex;gap:5px;align-items:center;line-height:1.6}.text-button:hover{text-decoration:underline}.panel{background:#fff;border:1px solid var(--line);border-radius:12px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:18px}.app-shell{min-height:100dvh}.sidebar{position:fixed;inset:0 auto 0 0;width:208px;padding:26px 10px 20px;background:#fff;border-right:1px solid var(--line);z-index:20;display:flex;flex-direction:column}.brand{font-size:25px;font-weight:750;color:var(--green);padding:0 18px;letter-spacing:1px}.brand span{display:block;color:#8a9490;letter-spacing:0;font-size:14px;font-weight:400;margin-top:8px}.sidebar nav{margin-top:32px;display:grid;gap:8px}.sidebar nav button{height:48px;padding:0 23px;display:flex;align-items:center;gap:16px;color:#5e6965;border:0;background:transparent;border-radius:8px;text-align:left;font-weight:550;font-size:15px}.sidebar nav button.active{color:var(--green);background:var(--green-light)}.sidebar nav button:hover{background:#f0f5f1}.sidebar nav svg{width:23px;height:23px}.account{position:relative;margin-top:auto}.account-button{display:flex;align-items:center;gap:12px;width:100%;border:0;background:none;padding:10px 15px;color:#56615c;font-size:14px}.account-button>svg{margin-left:auto}.avatar{width:35px;height:35px;display:grid;place-items:center;background:#dbe8e0;border-radius:50%;color:var(--green);font-weight:650}.account-menu{position:absolute;bottom:60px;left:4px;width:218px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:8px;box-shadow:0 6px 28px #172c211a;z-index:30}.account-menu p{padding:7px 10px;font-size:12px;color:var(--muted);border-bottom:1px solid var(--line);overflow-wrap:anywhere}.account-menu button,.account-menu a{width:100%;padding:10px;border:0;background:none;display:flex;align-items:center;gap:10px;font-size:13px;border-radius:5px}.account-menu button:hover,.account-menu a:hover{background:var(--canvas)}.main-content{margin-left:208px;padding:27px 28px 18px;max-width:1800px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 21px}.page-heading p{color:#76827b;font-size:14px;line-height:1.8;margin-top:4px}.date-strip{padding:17px}.calendar-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:12px}.month-label{font-weight:650;font-size:17px;position:relative;cursor:pointer;padding:4px}.month-label input{position:absolute;inset:0;width:100%;opacity:0;cursor:pointer}.month-label input::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:100%;height:100%;cursor:pointer}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid var(--line);border-radius:8px;overflow:hidden}.day-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:70px;background:#fff;border:0;border-right:1px solid var(--line);color:#46534c;font-size:14px;font-weight:550}.day-cell:last-child{border:0}.day-cell small{font-weight:400;color:#8a948f}.day-cell.selected{background:var(--green);color:#fff;border-radius:7px}.day-cell.selected small{color:#d6e4dc}.day-cell:hover:not(.selected){background:#f5f8f5}.day-stats{padding:23px 12px 21px;display:flex;align-items:center;justify-content:space-between;gap:16px;color:#66736b;font-size:13px}.day-stats>div{display:flex;gap:28px}.day-stats strong{font-size:20px;color:#17252b;margin:0 8px;font-weight:600}.capacity{border-left:1px solid #dbe4dd;padding-left:22px}.capacity b{color:#17252b;margin:0 5px}.schedule-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(290px,1fr);gap:16px;align-items:start}.schedule-panel{padding:19px 19px 16px;min-height:500px}.check-label{font-size:12px;color:#87918b;display:flex;gap:5px;align-items:center;white-space:nowrap}.check-label input{accent-color:var(--green)}.timeline-scroll{height:485px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#d5dfd7 transparent;padding-right:5px}.timeline{position:relative;margin-top:10px}.hour-row{position:absolute;left:0;right:0;height:104px;display:flex;gap:14px}.hour-row>span{width:45px;flex-shrink:0;color:#79847e;font-size:12px;transform:translateY(-7px)}.hour-row>button{flex:1;border:0;border-top:1px solid #edf1ed;border-left:1px solid #edf1ed;background:transparent;min-width:0;text-align:center;color:#c0c9c2}.hour-row>button span{opacity:0;font-size:12px;transition:opacity .15s}.hour-row>button:hover span{opacity:1}.appointment-block{position:absolute;left:72px;right:3px;display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:5px;padding:11px 17px;background:#edf5ee;border:1px solid transparent;border-left:5px solid #6d9b76;border-radius:7px;color:#1a3226;overflow:hidden}.appointment-block:hover{filter:brightness(.985)}.appointment-block.completed{background:#edf1ee;border-left-color:#95a69b;color:#5b6b60}.appointment-block.is-selected{outline:1px solid #6b9577;outline-offset:-1px;background:#e8f2e8}.appointment-block strong{font-size:17px;line-height:1.3}.appointment-time{font-size:12px;line-height:1.4}.appointment-service{font-size:12px;color:#66796b}.appointment-block .status{position:absolute;right:12px;top:11px}.appointment-block.compact{padding:2px 10px;flex-direction:row;gap:10px;align-items:center}.appointment-block.compact .status{display:none}.appointment-block.compact strong{font-size:12px}.status{font-size:11px;line-height:1.5;padding:3px 9px;border-radius:6px;color:#437053;background:#dcecdc;white-space:nowrap;display:inline-block;font-weight:550}.status.completed{background:#e1e7e1;color:#6c7d70}.status.cancelled{background:#f1f2ef;color:#949c96}.appointment-detail{padding:19px 22px 18px;min-height:500px}.appointment-detail .panel-heading{border-bottom:1px solid var(--line);padding-bottom:17px;margin-bottom:22px}.detail-person{display:flex;flex-direction:column;gap:7px}.name-link{font-weight:650;font-size:26px;display:flex;gap:8px;align-items:center;border:0;background:none;text-align:left;padding:0;color:inherit;line-height:1.6}.name-link svg{color:#9eaaa2}.phone-link{color:#7c877f;font-size:16px;letter-spacing:.4px}.phone-link:hover{text-decoration:underline}.detail-time{font-size:25px;font-weight:600;letter-spacing:-.6px;margin:23px 0 15px}.detail-time span{font-weight:400;color:#99a49b;margin:0 2px}.detail-rows{margin:0 0 20px;font-size:14px}.detail-rows>div{display:grid;grid-template-columns:90px minmax(0,1fr);gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}dt{color:#7a867e}dd{margin:0;overflow-wrap:anywhere;line-height:1.6}.detail-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.detail-actions .button{padding-left:10px;padding-right:10px}.cancel-action{display:flex;margin:15px auto 0;color:#8a958d!important;font-size:12px}.cancelled-list{display:grid;gap:5px;margin-top:15px}.cancelled-list button{background:#f5f6f4;padding:10px;border:0;border-radius:5px;color:#859085;text-align:left}.cancelled-list .status{float:right}.mobile-agenda{display:none}.app-footer{display:flex;align-items:center;justify-content:flex-end;gap:20px;color:#9aa49e;font-size:11px;margin-top:20px}.sync-button{font-size:11px;color:#8c9991;gap:5px}.sync-dot{width:6px;height:6px;background:#86a28c;border-radius:50%}.sync-dot.offline{background:#c39650}.search-box{display:flex;align-items:center;gap:12px;background:#fff;padding:0 16px;border:1px solid var(--line);border-radius:9px;margin-bottom:16px;color:#8a958e}.search-box>input{border:0;outline:none!important;box-shadow:none!important;height:44px;padding:0;flex:1;min-width:0;background:transparent;font-size:14px}.search-box:focus-within{border-color:#90ad9a}.customer-layout{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(0,2.1fr);gap:16px;align-items:stretch}.customer-list{overflow:hidden}.customer-list .panel-heading{margin:0;padding:16px;border-bottom:1px solid var(--line)}.customer-list h2{font-size:16px}.customer-list h2 span{font-size:14px;font-weight:500}.customer-row{display:flex;width:100%;align-items:center;gap:8px;border:0;border-bottom:1px solid #f0f3f0;background:#fff;padding:16px;text-align:left;color:#5f6d63}.customer-row.selected{background:var(--green-light)}.customer-row:hover{background:#f2f6f2}.customer-row>div{min-width:0;display:flex;flex-direction:column;gap:5px}.customer-row strong{font-size:15px;color:#1c2d21;font-weight:600;overflow-wrap:anywhere}.customer-row span{font-size:12px;color:#8a948b}.customer-row small{font-size:11px;white-space:nowrap;margin-left:auto}.customer-right{display:grid;gap:14px;min-width:0}.customer-profile{padding:20px 22px 14px}.profile-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.profile-title>div{display:flex;align-items:center;gap:20px;min-width:0}.profile-title h2{font-size:26px;overflow-wrap:anywhere}.profile-title a{color:#78857a;font-size:14px;border-left:1px solid var(--line);padding-left:18px;white-space:nowrap}.profile-meta{display:grid;grid-template-columns:1fr 1fr;gap:12px 25px;margin:0 0 22px}.profile-meta>div{display:grid;grid-template-columns:70px minmax(0,1fr);gap:12px;font-size:13px}.duration-strip{background:#f4f7f4;border-radius:8px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:17px 8px;margin-bottom:14px}.duration-strip>div{padding:0 17px;border-right:1px solid #e2e9e2;display:flex;flex-direction:column;gap:7px}.duration-strip>div:last-child{border:0;color:var(--green)}.duration-strip span{font-size:12px;color:#68796d}.duration-strip strong{font-weight:650;font-size:25px;line-height:1.5;white-space:nowrap}.duration-strip small{font-size:12px;font-weight:500;margin-left:7px}.profile-actions{display:flex;gap:12px;margin:0 0 18px}.profile-actions .button{min-width:140px;min-height:38px;padding:8px 20px}.tabs{display:flex;gap:22px;border-bottom:1px solid var(--line)}.tabs button{border:0;background:none;padding:12px 4px 10px;color:#6d796e;border-bottom:2px solid transparent;font-size:14px;white-space:nowrap}.tabs button.active{color:var(--green);border-bottom-color:var(--green);font-weight:650}.history-panel{padding-top:14px;min-height:140px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:7px;scrollbar-width:thin}table{border-collapse:collapse;width:100%;font-size:12px;text-align:left;white-space:nowrap}th{font-weight:500;color:#5e6f61;background:#f1f5f2;padding:11px 12px}td{padding:12px;border-top:1px solid var(--line);color:#506154;line-height:1.6}td small{font-size:11px;color:#9ba69e}.cell-note{display:block;max-width:220px;white-space:normal}.align-right{text-align:right}.profile-foot{font-size:11px;color:#96a198;margin-top:14px}.referral-list button{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:0;padding:12px;border-bottom:1px solid var(--line);color:var(--green)}.referral-list button>div{display:flex;gap:20px;align-items:center}.referral-list span{color:#7a897e;font-size:12px}.receipts-panel{padding:17px 22px}.receipts-heading{display:flex;align-items:center;gap:18px;margin-bottom:8px}.receipts-heading h2{font-size:17px}.receipts-heading input{width:auto;max-width:155px;min-height:33px;padding:4px 9px;font-size:12px}.receipt-total{margin-left:auto;display:flex;align-items:baseline;gap:10px}.receipt-total small{color:#7a887e;font-size:11px}.receipt-total strong{font-size:24px;font-weight:650}.receipts-panel>p{margin-bottom:12px;font-size:11px}.simple-empty{padding:22px;text-align:center;color:#8f9d92;font-size:13px}.profile-back{display:none}.empty{padding:55px 20px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px}.empty-icon{color:#8fa497;width:58px;height:58px;border-radius:50%;background:#f0f5f1;display:grid;place-items:center;margin-bottom:4px}.empty h3{font-size:15px;font-weight:550;color:#607366;line-height:1.7}.empty p{font-size:12px;color:#95a297;max-width:280px;line-height:1.8}.empty .button{margin-top:8px;font-size:12px}.customer-list .empty{padding:48px 15px}.history-panel .empty{padding:22px 10px;gap:7px}.history-panel .empty-icon{display:none}.appointment-detail .empty{padding-top:70px}input:not([type=checkbox]):not([type=radio]),select,textarea{display:block;width:100%;border:1px solid #dce5de;border-radius:6px;background:#fff;color:#304a39;font-size:14px;line-height:1.5;padding:10px 12px;min-height:42px;outline:none}input::placeholder,textarea::placeholder{color:#a4afa6;font-size:13px}input:focus,select:focus,textarea:focus{border-color:#7fa78b!important;box-shadow:0 0 0 3px #cfe1d43d}input[type=checkbox],input[type=radio]{accent-color:var(--green)}textarea{resize:vertical}input[type=date],input[type=time],input[type=month]{min-width:0}.field{display:flex;flex-direction:column;gap:7px;margin:17px 0;color:#65766b;font-size:13px;line-height:1.5}.field small{color:#93a296;font-size:11px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid .field{margin-bottom:0}.label-row{display:flex;justify-content:space-between;align-items:center;gap:5px}.label-row .text-button{font-size:12px}.modal{border:1px solid var(--line);border-radius:14px;padding:0;width:500px;max-width:calc(100% - 28px);max-height:calc(100dvh - 40px);color:inherit;background:#fff;box-shadow:0 12px 70px #172c212b;overflow-y:auto}.modal::backdrop{background:#152c2580;backdrop-filter:blur(2px)}.modal-head{display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:2;background:#fff;padding:17px 22px;border-bottom:1px solid var(--line)}.modal-head h2{font-size:18px}.modal form{padding:0 22px 18px}.modal form>p:first-child{margin-top:17px;line-height:1.8}.modal-foot{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);padding-top:17px;margin-top:20px}.form-note{font-size:11px;color:#98a59b;line-height:1.8;margin-top:16px}.form-summary{display:flex;justify-content:space-between;gap:10px;background:#f1f6f2;border-radius:7px;padding:15px;margin:18px 0;font-size:12px;color:#7b8c7f}.form-summary b{display:block;color:var(--green);font-size:16px;margin-top:7px;font-weight:550}.inline-error{margin:16px 0;background:#fff3ef;border:1px solid #f0d8ce;border-radius:6px;padding:10px 12px;color:#ad5843;font-size:13px;line-height:1.8}.settlement-choices{border:0;padding:0;margin:20px 0;display:grid;grid-template-columns:1fr 1fr;gap:10px}.settlement-choices legend{font-size:13px;color:#65766b;margin-bottom:10px}.settlement-choices label{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:7px;padding:14px 10px;cursor:pointer}.settlement-choices label.selected{border-color:#89ac91;background:#f0f6f0}.settlement-choices span{display:flex;flex-direction:column;gap:5px}.settlement-choices strong{font-size:13px;font-weight:550}.settlement-choices small{color:#84968a;font-size:11px}.toast{position:fixed;bottom:28px;left:calc(50% + 104px);transform:translate(-50%);background:#254e40;color:#fff;padding:13px 22px;border-radius:8px;box-shadow:0 4px 24px #254e4026;z-index:100;display:flex;align-items:center;gap:9px;font-size:13px;max-width:calc(100% - 30px);line-height:1.7}.connection-warning{display:flex;align-items:center;gap:10px;background:#fff8e9;color:#92723c;font-size:12px;padding:12px;border-radius:6px;margin-bottom:18px;line-height:1.7}.auth-page{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:28px 20px}.auth-card{width:400px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:35px 32px 24px;box-shadow:0 10px 40px #34543c06}.auth-brand{font-size:29px;color:var(--green);font-weight:750;letter-spacing:1px}.auth-caption{color:#92a096;font-size:12px;line-height:1.8;margin-top:8px;margin-bottom:32px}.auth-heading{display:flex;align-items:center;gap:9px;color:var(--green);margin-bottom:9px}.auth-heading h1{font-size:21px;font-weight:600;letter-spacing:0}.auth-card>.muted{font-size:12px;margin-bottom:20px}.auth-submit{width:100%;margin-top:8px}.auth-foot{text-align:center;color:#a6b0a8;font-size:11px;margin-top:24px;line-height:1.8}.setup-card{width:690px}.setup-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.setup-grid fieldset{border:0;padding:0;margin:0;min-width:0}.setup-grid fieldset+fieldset{border-left:1px solid var(--line);padding-left:24px}.setup-grid legend{color:var(--green);font-size:14px;font-weight:550;padding:0}.loading-screen{min-height:100dvh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px;color:var(--green)}.loading-screen p{font-size:13px;color:#84968b}@media(min-width:1550px){.main-content{padding:32px 40px}.timeline-scroll{height:590px}.schedule-panel,.appointment-detail{min-height:540px}}@media(max-width:1190px){.main-content{padding:24px 20px}.schedule-layout{grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr)}.appointment-detail{padding:18px}.customer-layout{grid-template-columns:minmax(215px,.75fr) minmax(0,1.65fr)}.customer-row{padding:14px 12px;flex-wrap:wrap}.customer-row small{font-size:10px}.customer-row>svg{display:none}.customer-profile{padding:18px}.profile-title>div{gap:10px}.profile-title h2{font-size:23px}.profile-title a{font-size:12px;padding-left:10px}.profile-meta{column-gap:15px}.duration-strip>div{padding:0 10px}.duration-strip strong{font-size:22px}.duration-strip small{font-size:10px;margin-left:4px}.receipts-panel{padding:17px}.receipt-total{gap:8px;flex-wrap:wrap;justify-content:flex-end}.receipts-heading{gap:12px}.receipts-heading h2{white-space:nowrap;font-size:15px}.receipts-heading input{max-width:135px}.receipt-total strong{font-size:20px}}@media(max-width:950px){.sidebar{width:170px}.brand{padding:0 12px;font-size:23px}.sidebar nav button{padding:0 15px;gap:12px;font-size:14px}.main-content{margin-left:170px;padding:23px 18px}.schedule-layout{grid-template-columns:minmax(0,1fr)}.appointment-detail{min-height:0}.appointment-detail .panel-heading{margin-bottom:15px}.detail-person{display:inline-flex}.detail-time{float:right;margin:15px 0}.detail-rows{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;margin-top:10px}.detail-actions{max-width:400px}.cancel-action{margin:14px 0 0}.day-stats>div{gap:10px}.capacity{font-size:11px;padding-left:10px}.customer-layout{grid-template-columns:1fr}.customer-list{max-height:260px;overflow:auto}.customer-row{flex-wrap:nowrap}.customer-row>svg{display:block}.customer-profile{padding:20px}.profile-title a{font-size:14px}.duration-strip strong{font-size:27px}.receipt-total{flex-wrap:nowrap}.toast{left:calc(50% + 85px)}.timeline-scroll{height:440px}}@media(max-width:640px){:root{font-size:14px}.sidebar{inset:auto 0 0;width:auto;height:67px;padding:0 5px;border:0;border-top:1px solid var(--line);flex-direction:row;background:#fff;align-items:center;box-shadow:0 -3px 15px #254e4005;padding-bottom:env(safe-area-inset-bottom,0px);height:calc(67px + env(safe-area-inset-bottom,0px))}.brand{display:none}.sidebar nav{margin:0;display:flex;gap:4px;flex:1;align-items:center;justify-content:space-around}.sidebar nav button{display:flex;flex-direction:column;gap:4px;height:54px;padding:5px 12px;min-width:90px;font-size:11px;border-radius:6px;font-weight:500}.sidebar nav button.active{background:none;color:var(--green);font-weight:650}.sidebar nav svg{width:21px;height:21px}.account{margin:0 12px 0 0}.account-button{width:40px;padding:0}.account-button>.avatar{width:32px;height:32px;font-size:13px}.account-button>span:not(.avatar),.account-button>svg{display:none}.account-menu{left:auto;right:0;bottom:54px;width:205px}.main-content{margin-left:0;padding:24px 16px 98px}.page-heading{gap:10px;margin-bottom:19px;align-items:flex-start}.page-heading h1{font-size:25px;letter-spacing:-.3px}.page-heading p{font-size:11px;max-width:230px;margin-top:5px}.page-heading>.button{min-height:37px;font-size:12px;padding:8px 12px;gap:5px;margin-top:1px}.page-heading>.button svg{width:15px;height:15px}.date-strip{padding:12px 10px;border-radius:9px}.calendar-toolbar{gap:10px;margin-bottom:13px}.month-label{font-size:15px}.calendar-toolbar .icon-button{width:30px;height:30px}.calendar-toolbar .button{margin-left:auto;min-height:30px;font-size:12px;padding:5px 12px}.week-grid{border:0;border-radius:5px;gap:2px}.day-cell{border:0;min-height:62px;font-size:12px;gap:6px;border-radius:6px}.day-cell small{font-size:10px}.day-stats{padding:18px 2px 16px;font-size:11px;display:block}.day-stats>div{justify-content:space-between;gap:4px}.day-stats strong{font-size:18px;margin:0 5px}.capacity{display:block;margin-top:12px;padding:0;border:0;color:#a1aca3;font-size:10px}.schedule-layout{gap:14px}.schedule-panel{padding:17px 14px 10px;min-height:0;border-radius:9px}.panel-heading h2{font-size:16px}.panel-heading{margin-bottom:12px}.check-label{font-size:10px}.desktop-timeline{display:none}.mobile-agenda{display:grid}.agenda-item{display:flex;align-items:center;gap:13px;border:0;border-bottom:1px solid var(--line);background:#fff;padding:17px 0;text-align:left;min-width:0;border-radius:0;color:#274535}.agenda-item:last-child{border-bottom:0}.agenda-item.is-selected{background:#f2f7f2;margin:0 -6px;padding-left:6px;padding-right:6px;border-radius:6px}.agenda-time{display:flex;flex-direction:column;gap:7px;font-size:14px;color:#53705b;flex-shrink:0}.agenda-time small{color:#a2afa4;font-size:11px}.agenda-info{display:flex;flex:1;flex-direction:column;gap:7px;min-width:0}.agenda-info strong{font-weight:600;font-size:15px;overflow-wrap:anywhere}.agenda-info>span{font-size:11px;color:#8b9b8e}.agenda-item>.status{font-size:10px;padding:3px 7px;flex-shrink:0}.agenda-item.cancelled{opacity:.55}.appointment-detail{padding:17px 16px;border-radius:9px}.appointment-detail .panel-heading{padding-bottom:12px;margin-bottom:15px}.name-link{font-size:22px}.phone-link{font-size:14px}.detail-time{font-size:20px;letter-spacing:-.6px;float:none;margin:18px 0 5px}.detail-rows{grid-template-columns:1fr;margin-top:7px;margin-bottom:18px}.detail-rows>div{grid-template-columns:84px 1fr;padding:11px 0;font-size:13px}.detail-actions{max-width:none;gap:10px}.detail-actions .button{font-size:13px;min-height:40px}.cancel-action{margin:14px auto 0;font-size:11px}.app-footer{justify-content:center;margin-top:20px;flex-wrap:wrap;gap:8px;font-size:10px}.app-footer>span{display:none}.sync-button{font-size:10px}.search-box{padding:0 12px;gap:9px;margin-bottom:14px}.search-box>input{height:43px;font-size:13px;min-height:43px}.search-box svg{width:18px}.customer-layout{display:block}.customer-list{max-height:none;border-radius:9px}.customer-list .panel-heading{padding:15px}.customer-row{padding:17px 15px}.customer-row>div{gap:6px}.customer-row strong{font-size:15px}.customer-row span{font-size:12px}.customer-row small{font-size:11px}.customer-right,.show-profile .customer-list{display:none}.show-profile .customer-right{display:grid}.profile-back{display:flex;margin:0 0 18px;font-size:12px}.customer-profile{padding:16px;border-radius:9px}.profile-title{align-items:flex-start;margin-bottom:18px}.profile-title>div{display:flex;flex-direction:column;align-items:flex-start;gap:5px}.profile-title h2{font-size:24px}.profile-title a{border:0;padding:0;font-size:13px;color:#89978c}.profile-title>.button{font-size:11px;min-height:30px;padding:5px 12px}.profile-meta{grid-template-columns:1fr;gap:10px;margin-bottom:20px}.profile-meta>div{font-size:12px;grid-template-columns:65px 1fr;gap:10px}.profile-meta>div:nth-child(2){order:3}.profile-meta>div:nth-child(4){order:4}.duration-strip{padding:14px 0;margin-bottom:14px}.duration-strip>div{padding:0 12px;gap:5px}.duration-strip span{font-size:10px}.duration-strip strong{font-size:23px;white-space:normal}.duration-strip small{font-size:10px;margin-left:4px;display:block}.profile-actions{gap:10px;margin-bottom:14px}.profile-actions .button{flex:1;min-width:0;font-size:12px;min-height:37px;padding:8px}.tabs{gap:20px}.tabs button{font-size:12px;padding:11px 3px}.history-panel{padding-top:12px;min-height:135px}th,td{padding:10px 8px;font-size:11px}.profile-foot{font-size:10px;line-height:1.7}.receipts-panel{border-radius:9px;padding:16px}.receipts-heading{flex-wrap:wrap;justify-content:space-between;gap:8px;margin-bottom:10px}.receipts-heading h2{font-size:16px}.receipts-heading input{width:140px;max-width:150px;font-size:12px;min-height:33px;padding:5px 8px}.receipt-total{margin:5px 0 0;width:100%;justify-content:space-between}.receipt-total small{font-size:11px}.receipt-total strong{font-size:26px}.receipts-panel>p{font-size:10px;line-height:1.8}.empty{padding:43px 12px;gap:9px}.empty p{font-size:11px;line-height:1.9}.empty h3{font-size:14px}.appointment-detail .empty{padding:32px 12px}.modal{max-width:calc(100% - 24px);max-height:calc(100dvh - 30px);border-radius:12px}.modal-head{padding:15px 17px}.modal-head h2{font-size:17px}.modal form{padding:0 17px 17px}.form-grid{gap:12px}.field{font-size:12px;gap:7px;margin:16px 0}input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px;padding:10px;min-height:44px}input::placeholder,textarea::placeholder{font-size:12px}.field small,.label-row .text-button{font-size:10px}.settlement-choices{gap:8px}.settlement-choices label{padding:12px 8px;gap:5px}.settlement-choices strong{font-size:12px}.settlement-choices small{font-size:10px}.form-summary{padding:13px;font-size:11px}.form-summary b{font-size:15px}.modal-foot .button{font-size:13px;padding:9px 18px}.toast{left:50%;bottom:calc(83px + env(safe-area-inset-bottom,0px));font-size:12px;padding:12px 16px;min-width:220px;justify-content:center}.connection-warning{font-size:11px;display:block}.connection-warning button{margin-left:8px}.auth-page{padding:20px 15px;align-items:center}.auth-card{padding:28px 22px 23px;border-radius:12px;width:100%}.auth-brand{font-size:27px}.auth-heading h1{font-size:20px}.setup-grid{gap:20px;grid-template-columns:1fr}.setup-grid fieldset+fieldset{border-left:0;border-top:1px solid var(--line);padding:20px 0 0}.setup-card .auth-caption{margin-bottom:24px}.setup-card{max-width:430px}.auth-foot{font-size:10px}}.search-box input[type=search]:not(:disabled){border:0;background:transparent;box-shadow:none!important;outline:none;padding:0;min-height:44px}.customer-right{grid-template-columns:minmax(0,1fr)}.customer-profile,.receipts-panel{min-width:0}.profile-title>.button{flex-shrink:0}.day-stats>div>span{white-space:nowrap}.appointment-detail{scroll-margin-top:16px}.profile-title .contact-text{color:#78857a;font-size:14px;border-left:1px solid var(--line);padding-left:18px;white-space:nowrap}.profile-note{grid-column:1 / -1}.customer-number{font-size:12px;color:#8b998f;line-height:1.7}@media(max-width:640px){.profile-title .contact-text{border:0;padding:0;font-size:13px}.profile-meta>div:nth-child(n){order:initial}}.referrer-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:44px;padding:10px 12px;border:1px solid #dce5de;border-radius:6px;background:#fff;color:#304a39;text-align:left;font:inherit;font-size:14px;cursor:pointer}.referrer-trigger>span{display:flex;flex-direction:column;gap:4px;min-width:0}.referrer-trigger strong{font-weight:500;overflow-wrap:anywhere}.referrer-trigger>svg{flex-shrink:0}.referrer-trigger:focus-visible,.referrer-option:focus-visible{outline:2px solid #7fa78b;outline-offset:2px}.referrer-trigger:disabled{opacity:.6;cursor:default}.referrer-picker{padding:18px 22px 22px}.referrer-picker .search-box{margin-bottom:12px}.referrer-picker input[type=search]::-webkit-search-cancel-button{appearance:none}.referrer-option{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:68px;padding:14px 16px;border:0;border-bottom:1px solid var(--line);background:#fff;color:#304a39;text-align:left;cursor:pointer}.referrer-option:last-child{border-bottom:0}.referrer-option>div{display:flex;flex-direction:column;gap:6px;min-width:0}.referrer-option strong{font-size:15px;font-weight:600;overflow-wrap:anywhere}.referrer-option span{font-size:12px;color:#84958a;overflow-wrap:anywhere}.referrer-option>svg{flex-shrink:0;color:var(--green)}.referrer-option:hover,.referrer-option.selected{background:#e8f1eb}.referrer-none{border:1px solid var(--line)!important;border-radius:8px;margin-bottom:14px}.referrer-results{border:1px solid var(--line);border-radius:8px;overflow:hidden}.referrer-results .panel-heading{padding:14px 16px;margin:0;border-bottom:1px solid var(--line)}.referrer-results h3{font-size:15px;font-weight:600}.referrer-results h3 span{font-weight:400;color:var(--green)}.referrer-results-scroll{max-height:min(320px,38dvh);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.referrer-results .simple-empty{line-height:1.8;margin:0}@media(max-width:640px){.referrer-picker{padding:16px 17px 17px}.referrer-trigger{min-height:44px;font-size:16px;padding:10px}.referrer-results-scroll{max-height:34dvh}}.report-toolbar{display:flex;align-items:flex-end;gap:12px;margin-bottom:18px}.report-toolbar label,.activity-filters label{display:flex;flex-direction:column;gap:7px;font-size:12px;color:#65766b;min-width:0}.report-toolbar input{max-width:200px}.summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.summary-card{padding:20px 16px;display:flex;flex-direction:column;gap:12px;min-width:0}.summary-card>span{font-size:13px;color:#65766b}.summary-card strong{font-size:24px;color:var(--green);overflow-wrap:anywhere}.summary-card small{font-size:11px;line-height:1.7;color:#8a998f}.summary-card:last-child{background:#e8f1eb}.report-note{font-size:12px;line-height:1.8;color:#84958a;margin:14px 0}.report-panel{padding:20px;margin-top:18px;min-width:0}.report-panel>h2{font-size:17px;margin:0 0 15px}.cell-action{display:block;margin-top:5px;font-size:12px!important}.original-record{padding:14px;background:#f2f6f3;border-radius:8px;font-size:13px;line-height:1.8}.original-record>strong{font-weight:500;color:#6a7c70}.original-record p{margin-top:4px}.voided-record td{color:#939f97}.voided-record .text-button{color:var(--green)}.activity-filters{display:grid;grid-template-columns:160px 140px 160px minmax(180px,1fr) auto;gap:12px;padding:18px;align-items:end}.activity-filters .text-button{min-height:42px;white-space:nowrap}.activity-list{display:grid;gap:12px}.activity-card{padding:18px 20px;min-width:0}.activity-card>header{display:flex;align-items:center;justify-content:space-between;gap:12px;line-height:1.8}.activity-card>header strong{font-size:15px;color:var(--green)}.activity-card>header span{font-size:12px;color:#819086}.activity-card>p{font-size:13px;color:#697b6e;margin-top:8px;line-height:1.8;overflow-wrap:anywhere}.activity-card .activity-reason{color:#314e3a;background:#f2f6f3;padding:9px 12px;border-radius:6px}.activity-card details{margin-top:12px;font-size:12px;line-height:1.8}.activity-card summary{cursor:pointer;color:var(--green);padding:5px 0}.activity-card dl{display:grid;gap:10px;margin:10px 0 0}.activity-card dl>div{display:grid;grid-template-columns:60px minmax(0,1fr);gap:10px}.report-pagination{display:flex;align-items:center;justify-content:center;gap:18px;font-size:13px;margin-top:20px}@media(max-width:1190px){.summary-grid,.activity-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.activity-filters label:last-of-type{grid-column:span 2}}@media(max-width:640px){.sidebar nav button{min-width:0;flex:1;padding:5px 7px}.account{margin-right:6px}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.summary-card{padding:15px 12px;gap:9px}.summary-card strong{font-size:23px}.summary-card:last-child{grid-column:1 / -1}.report-panel{padding:16px 12px}.report-panel>h2{font-size:16px}.report-note{font-size:11px}.activity-filters{grid-template-columns:repeat(2,minmax(0,1fr));padding:14px;gap:12px}.activity-filters label:last-of-type{grid-column:1 / -1}.activity-filters .text-button{justify-self:start;min-height:30px}.activity-card{padding:16px 14px}.activity-card>header{align-items:flex-start;flex-direction:column;gap:3px}.activity-card>header span{font-size:11px}.report-pagination{gap:12px;font-size:12px}}.customer-mode{display:flex;gap:4px;background:#f1f5f2;border-radius:7px;padding:4px;margin-bottom:5px}.customer-mode button{flex:1;min-height:35px;border:0;border-radius:5px;background:transparent;color:#6c7d71;font-size:13px}.customer-mode button[aria-pressed=true]{background:#fff;color:var(--green);box-shadow:0 1px 5px #254e4010;font-weight:600}.quick-customer-fields{border:1px solid var(--line);border-radius:8px;padding:0 14px 14px;background:#f8faf8}.quick-customer-fields .field{margin-top:13px}.quick-customer-fields .form-note{margin-top:10px}.quick-create-customer{width:100%;margin-bottom:14px}.appointment-reminders{border:1px solid #e4d6bc;background:#fffaf1;border-radius:9px;padding:13px 16px;margin:0 0 17px;color:#86602b}.appointment-reminders>div{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px}.appointment-reminders strong{font-weight:600}.appointment-reminders p{font-size:11px;line-height:1.8;margin-top:6px;color:#9a835f}.reminder-count.overdue{color:#a3543e}.reminder-count.soon{color:#8b671d}.status.reminder-overdue{color:#a24f3c;background:#f8e8df}.status.reminder-soon{color:#8a631a;background:#fbefcb}.appointment-block.reminder-overdue{border-left-color:#ba765f}.appointment-block.reminder-soon{border-left-color:#bba253}.detail-reminder{padding:10px 12px;border-radius:7px;font-size:12px;line-height:1.8;margin-bottom:16px}.detail-reminder.reminder-overdue{background:#fbefe8;color:#9a5d48}.detail-reminder.reminder-soon{background:#fff6df;color:#8c6b27}@media(max-width:640px){.appointment-reminders{padding:12px}.appointment-reminders>div{gap:8px;font-size:12px}.appointment-reminders p{font-size:10px}.quick-customer-fields{padding:0 12px 12px}.customer-mode button{font-size:13px;min-height:36px}.agenda-item.reminder-overdue .agenda-time{color:#a45f49}.agenda-item.reminder-soon .agenda-time{color:#9a782e}}.appointment-block.compact .status.reminder-overdue,.appointment-block.compact .status.reminder-soon{display:inline-block;position:static;order:3;margin-left:auto;font-size:9px;padding:1px 4px;flex-shrink:0}:root{--green:#244d40;--green-light:#e7f0eb;--line:#e2e9e5;--muted:#6e7d75;--canvas:#f4f7f5;background:var(--canvas);color:#20352d;font-family:Microsoft YaHei,PingFang SC,Segoe UI,sans-serif;font-variant-numeric:tabular-nums}body{background:var(--canvas)}h1{font-size:30px;letter-spacing:-.7px;font-weight:750}h2{font-size:18px}p,dd{line-height:1.7}.panel{border-radius:16px;border-color:var(--line);box-shadow:0 2px 8px #234b3c02}.button{border-radius:9px;min-height:44px;font-weight:600;padding:11px 20px;box-shadow:0 2px 3px #183c2c06}.button.secondary{border-color:#d3dfd8;color:#365849}.button.small{min-height:36px;font-size:13px}.button:focus-visible,.filter-tabs button:focus-visible,.view-switch button:focus-visible{outline:3px solid #9dbdab;outline-offset:3px}.icon-button{border-radius:8px}.text-button{font-size:13px}.sidebar{width:216px;background:var(--green);color:#fff;padding:32px 16px 20px;border:0}.brand{font-size:27px;letter-spacing:1px;padding:0 9px;color:#fff}.brand span{color:#b8cfc4;font-size:12px;margin-top:9px;letter-spacing:2px}.sidebar nav{margin-top:40px;gap:10px}.sidebar nav button{color:#dce8e1;border-radius:10px;padding:0 16px;gap:14px;font-size:14px;height:48px}.sidebar nav button.active{background:#e5eee8;color:#214b3c}.sidebar nav button:hover:not(.active){background:#ffffff12}.sidebar nav svg{width:21px;height:21px}.account{border-top:1px solid #ffffff24;padding-top:14px}.account-button{padding:8px;color:#edf3ef}.account-button>.avatar{background:#edf3ef;color:var(--green)}.account-menu{color:#20352d;width:220px;left:0}.account-menu button,.account-menu a{color:#365849;min-height:42px}.main-content{margin-left:216px;padding:32px 32px 24px;max-width:1800px}.mobile-brand{display:none}.page-heading{margin-bottom:24px;gap:16px}.page-heading p{font-size:13px;color:var(--muted);margin-top:6px}.page-heading>.button{align-self:center}.date-strip{padding:18px 20px}.calendar-toolbar{gap:10px;margin-bottom:16px}.calendar-toolbar .button{margin-left:12px}.month-label{font-size:17px;padding:4px 7px}.calendar-toolbar .icon-button.bordered{border:0}.week-grid{gap:8px;border:0;border-radius:0;overflow:visible}.day-cell{border:1px solid var(--line)!important;border-radius:10px;min-height:90px;font-size:20px;gap:4px}.day-cell.selected{border-color:var(--green)!important;border-radius:10px}.day-cell small{font-size:12px;color:#6e7d75}.day-cell>span:first-child{font-weight:650}.day-count{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:400!important;color:#839088;margin-top:4px}.day-count i{width:5px;height:5px;border-radius:50%;background:#c2cdc6}.day-count.has-bookings i{background:#699d78}.day-cell.selected .day-count{color:#e0eae4}.day-cell.selected .day-count i{background:#dce8e0}.day-stats{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 22px;margin:18px 0;color:#6e7d75}.day-stats>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:0}.day-stat{display:flex;align-items:center;gap:16px;padding:0 24px;border-right:1px solid var(--line)}.day-stat:first-child{padding-left:8px}.day-stat:last-child{border:0}.day-stat>svg{color:#6b8276}.day-stat>span{display:flex;flex-direction:column;gap:3px;font-size:12px}.day-stat strong{font-size:27px;color:#20352d;margin:0;font-weight:650}.day-stat strong small{font-size:12px;margin-left:6px;font-weight:400}.day-stat:last-child strong,.day-stat:last-child svg{color:var(--green)}.appointment-reminders{background:#fffaf1;border-color:#efe3ce;border-radius:10px;margin-bottom:18px;padding:10px 16px}.appointment-reminders p{color:#826d4e}.reminder-count{font-weight:550}.schedule-layout{grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:18px}.schedule-panel{padding:21px;min-height:440px}.panel-heading{margin-bottom:18px}.schedule-panel .panel-heading{gap:10px;flex-wrap:wrap}.appointment-detail{padding:21px;min-height:440px;position:sticky;top:20px}.filter-tabs{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.filter-tabs button{border:1px solid transparent;border-radius:8px;background:#f2f5f3;color:#61736a;padding:8px 12px;min-height:36px;font-size:12px;white-space:nowrap;display:inline-flex;gap:8px;align-items:center;justify-content:center}.filter-tabs button[aria-pressed=true]{color:#fff;background:var(--green);border-color:var(--green)}.filter-tabs button:hover:not([aria-pressed=true]){background:#e7eee9}.filter-tabs button span{opacity:.8;font-variant-numeric:tabular-nums}.schedule-filters{margin-bottom:20px;gap:7px}.schedule-filters button{flex:1;padding:8px 6px}.view-switch{display:flex;background:#f0f4f1;border-radius:8px;padding:3px;gap:2px}.view-switch button{border:0;background:transparent;border-radius:6px;color:#687c70;font-size:11px;min-height:28px;padding:5px 10px}.view-switch button[aria-pressed=true]{background:#fff;color:#244d40;box-shadow:0 1px 4px #20382c0c}.list-view .desktop-timeline{display:none}.list-view .mobile-agenda{display:grid}.timeline-view .mobile-agenda{display:none}.mobile-agenda{gap:10px}.agenda-item{display:flex;align-items:center;gap:14px;width:100%;min-width:0;min-height:88px;border:1px solid var(--line);border-radius:11px;background:#fff;padding:16px 13px;text-align:left;color:#20352d}.agenda-item:last-child{border-bottom:1px solid var(--line)}.agenda-item:hover{background:#f6f9f7}.agenda-item.is-selected{background:#f0f6f2;border-color:#618674;box-shadow:0 0 0 1px #61867420;margin:0}.agenda-item.completed{background:#f6f9f7}.agenda-item.cancelled{opacity:1;color:#738278}.agenda-item.cancelled .agenda-info strong{text-decoration:line-through;text-decoration-color:#a4b1a8}.agenda-time{display:flex;flex-direction:column;gap:7px;flex-shrink:0;color:#5c7165;font-size:13px}.agenda-time small{font-size:11px;color:#8a988f}.customer-avatar{display:grid;place-items:center;border-radius:50%;background:#e5eee8;color:#335d49;width:40px;height:40px;flex-shrink:0;font-weight:650;font-size:17px}.agenda-info{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}.agenda-info strong{font-size:16px;font-weight:650;overflow-wrap:anywhere}.agenda-info>span{font-size:12px;color:#6b7b72;overflow-wrap:anywhere}.agenda-item>.status{flex-shrink:0}.status{font-size:11px;padding:4px 8px;border-radius:6px}.status.booked{background:#edf2fc;color:#536b9c}.status.completed{background:#e5f1e9;color:#457b5b}.status.cancelled{background:#f0f2f0;color:#708076}.status.reminder-soon{background:#fff0d4;color:#946319}.status.reminder-overdue{background:#faebe5;color:#a05e46}.appointment-detail .panel-heading{padding-bottom:17px;margin-bottom:20px}.detail-person{gap:5px}.name-link{font-size:25px}.customer-number{color:#788b7e;font-size:11px}.phone-link{font-size:14px}.detail-time{font-size:25px;margin:20px 0 12px;background:#f5f8f6;border-radius:9px;padding:13px 14px}.detail-rows>div{padding:12px 0;font-size:13px;grid-template-columns:80px minmax(0,1fr)}.detail-actions .button{font-size:13px}.detail-reminder{font-size:12px}.cancel-action{color:#a06453!important;min-height:28px}.customer-tools{display:flex;gap:12px;align-items:center;justify-content:space-between;margin:0 0 18px;flex-wrap:wrap}.customer-tools select{width:auto;max-width:180px;min-height:36px;padding:7px 12px;font-size:12px}.search-box{border-radius:11px;margin-bottom:14px}.search-box>input{height:48px}.customer-layout{gap:18px;grid-template-columns:minmax(260px,.85fr) minmax(0,1.65fr)}.customer-list{max-height:660px;overflow:auto;align-self:start}.customer-list .panel-heading{position:sticky;top:0;background:#fff;z-index:1;padding:19px}.customer-row{padding:18px 16px;gap:10px;flex-wrap:wrap}.customer-row>div{gap:7px}.customer-row strong{font-size:16px}.customer-row small{font-size:11px;color:#53745f}.customer-row span{font-size:12px;color:#76897d}.customer-row.selected{background:#ecf3ee;border-left:3px solid #527d62;padding-left:13px}.customer-profile{padding:24px}.profile-title{gap:10px}.profile-title>div{gap:12px;flex-wrap:wrap}.profile-title h2{font-size:26px}.profile-meta{gap:13px 22px}.profile-meta>div{font-size:13px}.duration-strip{background:#edf4ef;border-radius:12px;padding:19px 4px}.duration-strip strong{font-size:27px}.duration-strip>div:last-child strong{color:#2d7050}.duration-strip span{font-size:12px}.profile-actions .button{min-height:42px}.tabs{gap:24px}.tabs button{font-size:13px;padding-bottom:14px}.tabs button.active{border-bottom-width:3px}.profile-foot{color:#76897b}.receipts-panel{padding:22px}.receipt-total strong{color:var(--green)}.table-wrap{border-radius:10px}th{padding:13px 14px;color:#62776a;background:#f5f8f6;font-size:12px}td{padding:15px 14px;color:#3c5546;font-size:13px}tbody tr:hover{background:#fafcfb}td small{color:#7a8b7e;font-size:11px}.table-wrap .text-button{font-size:12px}.report-toolbar{background:#fff;border:1px solid var(--line);padding:16px 20px;border-radius:12px;gap:12px;align-items:center}.report-toolbar label{flex-direction:row;align-items:center;gap:14px}.report-toolbar .button{padding:8px 12px}.report-toolbar .button:last-child{margin-left:auto}.report-toolbar input{min-height:38px;font-size:13px}.summary-grid{gap:12px}.summary-card{padding:22px 16px;gap:14px}.summary-card strong{font-size:27px;font-weight:650;letter-spacing:-.5px}.summary-card small{color:#6e8274}.summary-card:last-child{background:var(--green);border-color:var(--green)}.summary-card:last-child :is(span,strong,small){color:#fff}.summary-card:last-child small{color:#c1d6c9}.report-note{color:#708274;font-size:12px}.report-panel{padding:23px;margin-top:20px}.report-panel>h2{margin-bottom:18px}.activity-filters{border-radius:12px;padding:20px}.activity-card{border-radius:12px;padding:20px 22px}.activity-card details{padding-top:9px;border-top:1px solid #edf1ee}.activity-card>header span{color:#74877a}.activity-list{gap:12px}.activity-card>header strong{font-size:15px}.empty h3{color:#536f5d;font-size:15px}.empty p{color:#738878;font-size:12px}.empty-icon{background:#f0f5f1;color:#829d8b}.empty .button{min-height:40px}.app-footer{margin-top:24px;color:#7f9186}.sync-button{color:#73887b;min-height:28px}input:not([type=checkbox]):not([type=radio]),select,textarea{border-radius:9px;border-color:#d9e3dc;color:#294737;padding:11px 13px;font-size:14px;min-height:44px}input::placeholder,textarea::placeholder{color:#8d9c93;font-size:12px}.field{font-size:13px;gap:8px;margin:19px 0}.field small,.form-note{font-size:11px;color:#718779;line-height:1.8}.modal{border-radius:18px;width:520px;box-shadow:0 24px 90px #163a2a33}.modal::backdrop{background:#17382b65;backdrop-filter:blur(3px)}.modal-head{padding:21px 24px}.modal-head h2{font-size:20px}.modal form{padding:0 24px}.modal-foot{position:sticky;bottom:0;z-index:1;background:#fff;margin:20px -24px 0;padding:16px 24px;border-top:1px solid var(--line);box-shadow:0 -4px 12px #244d4004}.modal-foot .button{min-height:43px}.form-grid{gap:16px}.form-summary{border-radius:10px;background:#edf4ef;padding:17px}.form-summary b{font-size:18px}.settlement-choices label{border-radius:10px;padding:16px 12px}.settlement-choices strong{font-size:13px}.settlement-choices small{color:#6c8072}.customer-mode{border-radius:9px;padding:5px;background:#eef3ef}.customer-mode button{min-height:36px;border-radius:6px}.quick-customer-fields{border-radius:11px;padding:0 15px 14px;background:#f8faf8}.referrer-trigger{border-radius:9px;min-height:54px;padding:12px 14px;font-size:14px}.referrer-trigger small{color:#718779}.referrer-picker{padding:18px 24px 24px}.referrer-results{border-radius:10px}.referrer-option{min-height:74px;padding:16px}.referrer-option span{color:#708475}.referrer-results-scroll{scroll-padding:10px}.duration-presets{display:flex;gap:8px;margin:13px 0 0}.duration-presets button{flex:1;border:1px solid var(--line);border-radius:7px;background:#fff;color:#668070;min-height:34px;font-size:12px}.duration-presets button[aria-pressed=true]{background:#e8f1eb;border-color:#86a590;color:#244d40;font-weight:650}.end-time-preview{display:flex;align-items:center;gap:6px;color:#50755e;font-size:12px;margin-top:11px}.auth-page{background:#eef3ef;position:relative}.auth-card{border-radius:20px;padding:36px;width:430px;border:1px solid #dbe6dd;box-shadow:0 20px 70px #244d4010;border-top:5px solid var(--green)}.auth-brand{font-size:30px;letter-spacing:1px}.auth-caption{font-size:12px;color:#75897a;margin:8px 0 30px}.auth-heading{border-top:1px solid var(--line);padding-top:24px;margin-bottom:8px}.auth-heading h1{font-size:21px}.auth-submit{min-height:46px;margin-top:14px}.setup-card{width:720px}.setup-grid fieldset{min-width:0}@media(min-width:1600px){.main-content{padding:38px 44px}.schedule-layout{grid-template-columns:minmax(0,1.65fr) minmax(320px,1fr)}.schedule-panel,.appointment-detail{min-height:490px}}@media(max-width:1190px){.sidebar{width:192px;padding:28px 12px 18px}.brand{font-size:24px}.sidebar nav button{padding:0 13px}.main-content{margin-left:192px;padding:26px 22px}.schedule-layout{grid-template-columns:minmax(0,1.3fr) minmax(280px,1fr)}.schedule-panel,.appointment-detail{padding:18px}.customer-avatar{display:none}.agenda-item{gap:10px;padding:14px 10px}.agenda-info strong{font-size:15px}.customer-layout{grid-template-columns:minmax(230px,.8fr) minmax(0,1.5fr)}.profile-title>div{display:block}.profile-title :is(a,.contact-text){border:0;padding:0;display:block;margin-top:5px}.summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.summary-card:last-child{grid-column:span 2}.day-stat{padding:0 18px}.toast{left:calc(50% + 96px)}}@media(min-width:641px)and (max-width:950px){.sidebar{width:164px}.brand{font-size:22px;padding-left:4px}.sidebar nav button{font-size:13px;padding:0 10px;gap:10px}.main-content{margin-left:164px;padding:24px 18px}.page-heading h1{font-size:26px}.page-heading p{font-size:12px}.schedule-layout{grid-template-columns:1fr}.appointment-detail{position:static;min-height:0}.detail-person{display:flex}.detail-time{float:none;width:max-content}.detail-rows{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.customer-layout{grid-template-columns:1fr}.customer-list{max-height:260px}.day-stat{padding:0 14px;gap:10px}.day-stat>svg{width:22px}.customer-avatar{display:grid}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-card:last-child{grid-column:span 2}.toast{left:calc(50% + 82px)}}@media(max-width:640px){.sidebar{inset:auto 0 0;width:100%;height:calc(70px + env(safe-area-inset-bottom,0px));padding:3px 5px env(safe-area-inset-bottom,0px);background:#fff;border-top:1px solid var(--line);box-shadow:0 -5px 24px #264c3b08;align-items:center}.brand{display:none}.sidebar nav{margin:0;gap:0;flex:1}.sidebar nav button{min-width:0;height:60px;gap:5px;padding:7px 3px;font-size:10px;border-radius:8px;color:#6f8376;font-weight:500;flex:1}.sidebar nav button.active{background:#f0f5f1;color:var(--green);font-weight:650}.sidebar nav button:hover:not(.active){background:#f4f7f5}.sidebar nav svg{width:21px;height:21px}.account{padding:0;margin:0 2px 0 3px;border:0;flex-shrink:0}.account-button{padding:0;width:36px;height:54px}.account-button>.avatar{width:29px;height:29px;font-size:12px;background:#e5eee8}.account-menu{left:auto;right:0;bottom:61px;color:#20352d}.account-menu button{font-size:13px}.main-content{margin-left:0;padding:20px 16px 100px}.mobile-brand{display:flex;align-items:center;gap:10px;color:#315c46;font-size:15px;font-weight:750;margin-bottom:24px}.mobile-brand span{border-left:1px solid #cad8cd;padding-left:10px;font-size:11px;font-weight:400;color:#7c9081}.page-heading{margin-bottom:20px;align-items:center;gap:10px}.page-heading h1{font-size:26px;letter-spacing:-.5px}.page-heading p{font-size:11px;line-height:1.7;margin-top:5px;max-width:210px}.page-heading>.button{font-size:12px;min-height:40px;padding:9px 12px;gap:5px;flex-shrink:0}.page-heading>.button svg{width:15px}.panel{border-radius:13px}.date-strip{padding:13px 10px}.calendar-toolbar{gap:7px;margin-bottom:14px}.month-label{font-size:15px;padding:4px 0}.calendar-toolbar .button{margin-left:auto;padding:5px 10px;min-height:32px;font-size:12px}.calendar-toolbar .icon-button{width:28px;height:30px}.week-grid{gap:3px}.day-cell{min-height:78px;border-radius:8px;font-size:18px;gap:4px;border-color:transparent!important}.day-cell.selected{border-radius:8px}.day-cell small{font-size:10px}.day-count{font-size:10px;gap:4px;margin-top:2px}.day-count i{width:4px;height:4px}.day-stats{padding:15px 9px;margin:14px 0;border-radius:12px}.day-stats>div{gap:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.day-stat{padding:0 10px!important;gap:0;justify-content:center}.day-stat>svg{display:none}.day-stat>span{font-size:11px;gap:4px}.day-stat strong{font-size:24px;margin:0}.day-stat strong small{font-size:10px;margin-left:6px}.appointment-reminders{padding:11px 12px;margin-bottom:14px}.appointment-reminders>div{font-size:12px;gap:8px}.appointment-reminders p{font-size:11px;line-height:1.7}.schedule-layout{grid-template-columns:1fr;gap:16px}.schedule-panel{padding:17px 12px;min-height:0}.schedule-panel .panel-heading{padding:0 3px;margin-bottom:15px}.panel-heading h2{font-size:17px}.view-switch{display:none}.filter-tabs{gap:5px}.filter-tabs button{font-size:11px;min-height:36px;padding:7px 10px}.schedule-filters{margin-bottom:16px;flex-wrap:nowrap;gap:5px}.schedule-filters button{gap:5px;min-width:0;padding:7px 4px}.desktop-timeline,.timeline-view .cancelled-list{display:none}.timeline-view .mobile-agenda,.list-view .mobile-agenda{display:grid}.mobile-agenda{gap:9px}.agenda-item{padding:14px 10px;min-height:83px;gap:11px;border-radius:10px}.agenda-item.is-selected{margin:0;padding:14px 10px}.customer-avatar{display:none}.agenda-time{font-size:13px;gap:8px}.agenda-time small{font-size:10px}.agenda-info strong{font-size:15px}.agenda-info>span{font-size:11px;line-height:1.6}.agenda-item>.status{font-size:10px;padding:4px 6px}.appointment-detail{position:static;padding:18px;min-height:0;border-radius:13px;scroll-margin-top:12px}.appointment-detail .panel-heading{padding-bottom:14px;margin-bottom:16px}.name-link{font-size:24px}.detail-person{display:flex}.detail-time{float:none;font-size:24px;margin:17px 0 8px;padding:13px}.detail-rows{display:block;margin:0 0 18px}.detail-rows>div{font-size:13px;padding:12px 0;grid-template-columns:78px minmax(0,1fr)}.detail-actions{max-width:none;gap:10px}.detail-actions .button{min-height:44px}.cancel-action{font-size:12px;margin:12px auto 0;min-height:32px}.detail-reminder{font-size:12px}.search-box{padding:0 13px}.search-box>input{min-height:46px;height:46px;font-size:14px}.customer-tools{gap:12px;margin-bottom:16px}.customer-tools .filter-tabs{flex:1}.customer-tools select{font-size:12px;min-height:36px;max-width:140px}.customer-list{max-height:none;border-radius:13px}.customer-list .panel-heading{position:static;padding:17px}.customer-row{padding:18px 15px;flex-wrap:nowrap;gap:8px}.customer-row.selected{padding-left:12px}.customer-row strong{font-size:16px}.customer-row span{font-size:11px}.customer-row small{font-size:10px}.customer-row>svg{width:14px;flex-shrink:0}.customer-layout{display:block}.customer-profile{padding:18px}.profile-title{margin-bottom:21px}.profile-title>div{display:flex;gap:5px;flex-direction:column;align-items:flex-start}.profile-title h2{font-size:26px}.profile-title :is(a,.contact-text){font-size:13px;margin:0}.profile-title>.button{min-height:34px;font-size:12px}.profile-meta{display:grid;grid-template-columns:1fr;gap:12px}.profile-meta>div{font-size:13px;grid-template-columns:70px minmax(0,1fr)}.profile-back{font-size:12px;margin-bottom:21px;min-height:28px}.duration-strip{padding:16px 0}.duration-strip>div{padding:0 10px}.duration-strip strong{font-size:25px;white-space:normal}.duration-strip span{font-size:11px}.duration-strip small{font-size:10px;display:block;margin:3px 0 0}.profile-actions .button{font-size:13px;min-height:43px;padding:10px;min-width:0}.tabs{gap:19px}.tabs button{font-size:12px}.receipts-panel{padding:18px 14px}.receipt-total strong{font-size:27px}.receipts-panel>p{font-size:11px}.profile-foot{font-size:11px}th,td{font-size:12px;padding:12px 10px}.table-wrap .text-button{font-size:12px}.report-toolbar{padding:13px 10px;gap:6px;flex-wrap:wrap}.report-toolbar label{gap:5px;flex-direction:column;align-items:flex-start;flex:1;font-size:10px}.report-toolbar input{font-size:13px;min-height:37px;padding:7px;max-width:none}.report-toolbar .button{padding:7px;min-height:37px;align-self:flex-end}.report-toolbar .button:last-child{padding:7px 10px;margin-left:0}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.summary-card{padding:18px 14px;gap:10px}.summary-card>span{font-size:12px}.summary-card strong{font-size:25px}.summary-card small{font-size:11px;line-height:1.7}.summary-card:last-child{grid-column:1/-1}.summary-card:last-child strong{font-size:32px}.report-panel{padding:18px 12px}.report-panel>h2{font-size:17px;margin-bottom:16px}.report-note{font-size:11px;line-height:1.9}.activity-filters{padding:15px;gap:12px}.activity-card{padding:18px 16px}.activity-card>header{gap:5px}.activity-card>header span{font-size:11px}.activity-card details{font-size:12px;line-height:1.9}.activity-card dl>div{grid-template-columns:50px minmax(0,1fr)}.modal{width:520px;max-width:calc(100% - 20px);max-height:calc(100dvh - 24px);border-radius:16px}.modal-head{padding:18px}.modal-head h2{font-size:19px}.modal form{padding:0 18px}.modal-foot{margin:20px -18px 0;padding:14px 18px max(14px,env(safe-area-inset-bottom,0px));gap:10px}.modal-foot .button{font-size:13px;min-height:44px;padding:10px 15px}.field{font-size:12px;margin:17px 0;gap:8px}.field small,.form-note{font-size:11px;line-height:1.8}.form-grid{gap:12px}input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px;min-height:45px;padding:10px}input::placeholder,textarea::placeholder{font-size:12px}.referrer-trigger{font-size:15px;min-height:54px;padding:12px}.referrer-trigger small{font-size:11px}.customer-mode button{font-size:13px}.quick-customer-fields{padding:0 12px 12px}.duration-presets{gap:6px}.duration-presets button{font-size:12px;min-height:35px}.end-time-preview{font-size:11px}.referrer-picker{padding:16px 18px 18px}.referrer-option strong{font-size:15px}.referrer-option span{font-size:12px}.form-summary{font-size:12px;padding:14px}.form-summary b{font-size:17px}.settlement-choices label{padding:14px 9px}.settlement-choices strong{font-size:12px}.settlement-choices small{font-size:11px}.toast{left:50%;bottom:calc(85px + env(safe-area-inset-bottom,0px));font-size:12px;max-width:calc(100% - 30px)}.auth-page{padding:24px 18px}.auth-card{width:100%;padding:28px 23px;max-width:430px;border-radius:18px}.auth-brand{font-size:29px}.auth-heading h1{font-size:21px}.auth-caption{font-size:12px}.setup-grid{grid-template-columns:1fr}.app-footer{justify-content:center;margin-top:20px}.sync-button{font-size:11px;min-height:28px}}@media(max-width:360px){.main-content{padding-left:12px;padding-right:12px}.page-heading h1{font-size:24px}.page-heading p{font-size:10px}.page-heading>.button{padding:9px;font-size:11px}.customer-tools .filter-tabs{flex-basis:100%}.agenda-item{gap:8px;padding:13px 8px}.agenda-item.is-selected{padding:13px 8px}.agenda-info strong{font-size:14px}.agenda-info>span{font-size:10px}.schedule-filters button{font-size:10px;gap:4px}.modal-head{padding:15px}.modal form{padding:0 14px}.modal-foot{margin-left:-14px;margin-right:-14px;padding-left:14px;padding-right:14px}.form-grid{gap:9px}.day-cell{font-size:16px}.sidebar nav button{font-size:9px}}.report-toolbar label,.day-cell small{white-space:nowrap}.report-mode{margin:0 0 16px;gap:8px}.report-mode button{min-height:38px;padding:9px 19px}.monthly-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px;flex-wrap:wrap}.monthly-heading h2{font-size:17px}.monthly-heading>span{font-size:11px;color:#718578;line-height:1.8}.month-day-total{color:var(--green);font-weight:650}@media(min-width:951px){.page-heading h1{font-size:32px}.sidebar nav button{font-size:15px}.page-heading p{font-size:14px}.filter-tabs button{font-size:13px}.agenda-info strong{font-size:18px}.agenda-info>span{font-size:13px}.agenda-time{font-size:14px}.day-stat>span{font-size:13px}.day-stat strong{font-size:28px}.appointment-reminders{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.appointment-reminders p{margin:0}.appointment-detail .panel-heading{padding-bottom:12px;margin-bottom:14px}.appointment-detail .detail-reminder{padding:8px 11px;margin-bottom:12px}.appointment-detail .detail-person{gap:3px}.appointment-detail .detail-time{margin:15px 0 8px;padding:10px 12px}.appointment-detail .detail-rows>div{padding:10px 0;font-size:14px}.appointment-detail .detail-rows{margin-bottom:16px}.appointment-detail .cancel-action{margin-top:10px}.customer-row strong{font-size:17px}.customer-row small{font-size:12px}.profile-meta>div{font-size:14px}.summary-card>span{font-size:14px}.summary-card small{font-size:12px}.activity-card>p{font-size:14px}.activity-card details{font-size:13px}}@media(max-width:640px){.day-cell small{font-size:9px}.day-cell.selected small{letter-spacing:-.4px}.filter-tabs button{font-size:12px}.schedule-filters button{font-size:11px}.sidebar nav button{font-size:11px}.day-stat>span{font-size:12px}.page-heading p{font-size:12px}.agenda-info>span{font-size:12px}.agenda-time{font-size:14px}.customer-row span{font-size:12px}.customer-row small,.appointment-reminders p{font-size:11px}}@media(max-width:360px){.sidebar nav button{font-size:10px}.page-heading p{font-size:11px}.schedule-filters button{font-size:10px}.day-stat>span{font-size:11px}.agenda-info>span{font-size:11px}.agenda-time{font-size:13px}}@media(max-width:640px){.responsive-report{border:0;overflow:visible;border-radius:0}.responsive-report table,.responsive-report tbody{display:block;width:100%;white-space:normal}.responsive-report thead{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}.responsive-report tr{display:block;padding:10px 0;border:1px solid var(--line);border-radius:10px;margin-bottom:10px;background:#fcfdfc}.responsive-report tr:last-child{margin-bottom:0}.responsive-report td{display:block;position:relative;border:0;padding:6px 12px 6px 94px;min-height:30px;font-size:13px;overflow-wrap:anywhere}.responsive-report td:before{content:attr(data-label);position:absolute;left:12px;width:73px;color:#75897a;font-size:11px;line-height:1.9}.responsive-report .text-button{min-height:30px}.responsive-report .cell-action{margin-top:3px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}.device-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:16px;align-items:start}.device-card{padding:22px;min-width:0}.device-card>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.device-card h2{overflow-wrap:anywhere}.device-card .detail-rows{display:block;margin:16px 0}.device-card .detail-rows>div{grid-template-columns:76px minmax(0,1fr);font-size:13px;padding:10px 0}.device-saved{display:inline-block;margin-left:12px;color:var(--green);font-size:12px}.device-card input{max-width:100%}@media(max-width:640px){.device-card{padding:18px}.device-card .detail-rows{display:block}}.failure-card .detail-rows>div{grid-template-columns:76px minmax(0,1fr)}.failure-card dt{white-space:nowrap}.filing-notice{color:#677c6e;font-size:12px;text-decoration:none;white-space:nowrap}.filing-notice:hover{text-decoration:underline}.filing-notice:focus-visible{outline:2px solid var(--green);outline-offset:4px}.auth-card>.filing-notice{display:block;text-align:center;margin-top:24px}.app-footer{flex-wrap:wrap;gap:12px}.app-footer>.filing-notice{margin-left:auto}@media(max-width:640px){.app-footer>.filing-notice{flex-basis:100%;margin-left:0;text-align:center;font-size:11px}}
