:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,sans-serif;color:#253932;background:#f7f8fa;font-synthesis:none;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;background:#fff;color:inherit;border:1px solid #e2e7e5;border-radius:8px;min-height:38px;padding:8px 12px;display:inline-flex;align-items:center;justify-content:center;gap:7px}button:hover{filter:brightness(.97);border-color:#b7ccc4}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #41ad98;outline-offset:2px}input,select,textarea{min-width:0;border:1px solid #dfe5e2;border-radius:7px;padding:10px;background:#fff;color:#253932}input:disabled,select:disabled{background:#f4f6f5;color:#68766f;opacity:1}select{cursor:pointer}small{font-size:11px}.app{display:flex;min-height:100dvh}.sidebar{width:220px;flex-shrink:0;background:#fff;border-right:1px solid #e7ebe8;position:fixed;inset:0 auto 0 0;padding:27px 19px;display:flex;flex-direction:column;z-index:20}.brand{text-decoration:none;color:#193e34;font-size:24px;font-weight:750;letter-spacing:-1px;display:flex;align-items:center;gap:10px}.brand-icon{background:#176b5b;color:#fff;width:36px;height:39px;border-radius:12px 5px;display:flex;align-items:center;justify-content:center;font-family:Georgia,serif;font-style:italic;position:relative}.brand-icon span{position:absolute;right:2px;top:-4px;font-size:13px;color:#d9bd7b}.version{font-size:9px;letter-spacing:0;color:#9da7a2;margin-top:9px}.workspace-label{font-size:10px;letter-spacing:2px;color:#a2aaa5;margin:44px 9px 16px}.salon{display:flex;align-items:center;gap:10px;padding:11px 9px 19px;font-size:12px;font-weight:650}.salon small,.sidebar-bottom small{display:block;color:#96a09a;font-size:10px;font-weight:400;margin-top:6px}.salon-icon{border:1px solid #e6e8df;background:#f6f5ef;font-family:Georgia,serif;font-size:18px;width:35px;height:35px;display:grid;place-items:center;border-radius:7px}.online-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#3b9b77}.salon .online-dot{margin-left:auto}nav{margin-top:10px;display:grid;gap:8px}.nav-item{justify-content:flex-start;border:0;color:#7f8a84;font-size:13px;min-height:46px;background:transparent;padding:12px}.nav-item.selected{background:#eaf4ef;color:#196957;font-weight:650}.nav-count{margin-left:auto;background:#d9e9e0;border-radius:5px;padding:2px 5px;font-size:10px}.sidebar-note{margin-top:auto;padding:34px 12px 40px}.sidebar-note>span{font-size:32px;color:#cbbd94;display:block;margin-bottom:16px}.sidebar-note strong{font-size:12px;font-weight:500}.sidebar-note p{font-size:10px;color:#98a39b;line-height:1.8}.note-line{height:1px;width:40px;background:#d8dfd9;margin-top:20px}.sidebar-bottom{border-top:1px solid #edf0ed;padding-top:22px;display:flex;align-items:center;gap:10px;font-size:12px}.avatar,.top-avatar{border-radius:50%;background:#ede9df;display:grid;place-items:center;width:33px;height:33px;font-size:12px;font-weight:600}.app>main{margin-left:220px;min-width:0;flex:1}.topbar{height:70px;border-bottom:1px solid #e7ebe8;background:#ffffffd9;display:flex;align-items:center;justify-content:space-between;padding:0 33px}.breadcrumb{display:flex;align-items:center;gap:14px;font-size:11px;color:#9aa59e}.breadcrumb strong{font-weight:500;color:#4c5e54}.top-right{display:flex;align-items:center;gap:22px}.demo-pill{font-size:10px;display:flex;align-items:center;gap:6px;color:#76867c}.demo-pill span{width:5px;height:5px;background:#a4b49f;border-radius:50%}.page{padding:30px 32px 16px;max-width:1900px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px}.eyebrow{font-size:9px;letter-spacing:2px;color:#8c9b90}h1{font-size:28px;font-weight:650;letter-spacing:-.8px;margin:10px 0}h1 span{font-size:13px;font-weight:400;letter-spacing:0;color:#a3aba6;margin-left:14px}.page-heading p{font-size:12px;color:#87948b;margin:8px 0 0}.primary{background:#176b5a;border-color:#176b5a;color:#fff;box-shadow:0 3px 7px #176b5a13;padding:10px 17px;font-size:12px;font-weight:550;min-height:42px}.overview{display:flex;border:1px solid #e2e8e3;border-radius:12px;background:#fff;padding:20px 22px;align-items:center;margin-bottom:25px;gap:0;box-shadow:0 2px 2px #344b3b02}.store-select{display:flex;align-items:center;gap:13px;flex:1.2}.store-select>svg{color:#60927d}.store-select small{color:#9aa69d;display:block;margin-bottom:6px;font-size:10px}.store-select select{border:0;padding:0;font-size:13px;font-weight:600;width:175px}.stat{flex:.8;border-left:1px solid #edf0ec;padding-left:24px}.stat>span{color:#95a097;font-size:10px}.stat strong{display:block;font-size:25px;font-weight:550;margin-top:5px;font-variant-numeric:tabular-nums}.stat strong small{font-size:10px;color:#9da89f;font-weight:400;margin-left:9px}.sync-card{border:0;background:#f3f8f4;padding:13px 14px;gap:10px;text-align:left;flex:1;justify-content:flex-start;white-space:nowrap}.sync-icon{color:#468f73}.sync-card strong{font-size:10px;font-weight:550;display:block;color:#4f795e}.sync-card small{font-size:9px;color:#9aab9c;display:flex;align-items:center;margin-top:5px}.calendar-panel{border:1px solid #e1e7e2;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 3px 8px #2b493804}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;gap:10px}.date-controls,.calendar-actions{display:flex;align-items:center;gap:8px}.date-controls>button{width:32px;padding:6px;min-height:33px}.date-controls .today-button{width:auto;padding:6px 12px;color:#507462;background:#f8faf8;font-size:11px;margin-left:3px}.date-picker{display:flex;align-items:center;gap:8px;margin:0 7px;color:#577361}.date-picker input{padding:5px 0;border:0;background:transparent;font-weight:550;font-size:15px;width:145px;min-height:34px}.calendar-actions button{border:0;font-size:11px;color:#7c8b81;padding:7px 10px;min-height:33px}.calendar-actions button+button{border-left:1px solid #e8ede8;border-radius:0}.week-strip{display:flex;border-top:1px solid #eff2ee;border-bottom:1px solid #e6ece6;background:#fdfefd;padding:12px 20px;gap:7px}.day{display:flex;flex:1;max-width:100px;min-width:48px;flex-direction:column;gap:5px;background:transparent;border:1px solid transparent;border-radius:8px;padding:9px 5px}.day small{font-size:10px;font-weight:400;color:#8b988e;display:flex;gap:5px;align-items:center}.day small i{width:4px;height:4px;background:currentColor;border-radius:50%}.day strong{font-size:21px;font-weight:550;font-variant-numeric:tabular-nums}.day>span{font-size:9px;color:#a5afa7}.day.active{background:#196d59;color:#fff;box-shadow:0 3px 5px #196d5916}.day.active small,.day.active>span{color:#c6dfd4}.week-caption{margin-left:auto;display:flex;align-items:center;gap:13px;padding:0 20px;color:#d2dbcd}.week-caption>span{font-size:11px;color:#a2ad9f}.week-caption small{display:block;font-size:9px;margin-top:7px;color:#b4bdb1}.filterbar{display:flex;align-items:center;justify-content:space-between;padding:13px 19px;min-height:60px;gap:12px}.employee-filters{display:flex;align-items:center;gap:9px;color:#849387}.employee-filters select{font-size:11px;padding:7px 8px;border:0;background:#f6f8f5}.mine{display:flex;align-items:center;gap:4px;color:#87968b;font-size:10px;margin-left:7px;white-space:nowrap}.mine input{accent-color:#196d59}.legend{display:flex;gap:16px;font-size:10px;color:#859286}.legend>span{display:flex;align-items:center;gap:6px;white-space:nowrap}.legend i{width:7px;height:7px;border-radius:2px}.legend .hotpepper{background:#b18ac7}.legend .minimo{background:#79a7c5}.legend .local{background:#d4b16a}.legend .unavailable{background:#c7cfc7}.calendar-scroll{overflow:auto;max-height:610px;height:calc(100dvh - 476px);min-height:330px;scrollbar-width:thin;scrollbar-color:#cbd6cd #f5f8f4;isolation:isolate;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.calendar-grid{width:calc(172px + var(--timeline));position:relative}.timeline-header{height:49px;position:sticky;top:0;z-index:10;display:flex;border-top:1px solid #e4eae4;border-bottom:1px solid #e3e9e2;background:#fafcf9}.corner{position:sticky;left:0;width:172px;flex-shrink:0;z-index:12;background:#f8faf6;padding:10px 18px;font-size:10px;color:#788b79;border-right:1px solid #dde5dc}.corner small{display:block;font-size:8px;color:#a3aea1;margin-top:4px}.time-head{display:flex;width:var(--timeline)}.time-head>div{width:var(--slot);flex-shrink:0;border-left:1px solid #e1e7de;padding:14px 9px;font-size:11px;font-variant-numeric:tabular-nums;color:#83927e}.calendar-row{display:flex;height:119px;border-bottom:1px solid #e6ebe4}.person-cell{width:172px;flex-shrink:0;position:sticky;left:0;z-index:5;background:#fff;border-right:1px solid #dfe6dc;display:flex;align-items:center;padding:15px 12px;gap:9px;box-shadow:4px 0 5px #1d432905}.staff-avatar{width:31px;height:34px;display:grid;place-items:center;border-radius:9px;font-size:13px;font-family:Georgia,serif;color:#65755f;flex-shrink:0}.person-cell strong{font-size:12px;font-weight:600;display:block}.person-cell small{display:block;font-size:9px;color:#95a08e;margin:5px 0}.capacity{font-size:8px;color:#94a08f;background:#f4f7f1;border-radius:3px;padding:2px 4px}.shift-edit{position:absolute;right:4px;bottom:5px;border:0;background:transparent;padding:5px;min-height:28px;color:#a2b29b}.person-cell em{font-size:8px;color:#267762;font-style:normal;margin-left:4px}.track{width:var(--timeline);position:relative;background-color:#fff;background-image:repeating-linear-gradient(to right,transparent 0,transparent calc(var(--grid-step) - 1px),#e9eee6 calc(var(--grid-step) - 1px),#e9eee6 var(--grid-step))}.blocked{position:absolute;top:0;bottom:0;background:repeating-linear-gradient(135deg,#f0f2ee,#f0f2ee 4px,#edf0e9 4px,#edf0e9 5px);display:flex;justify-content:center;align-items:center;overflow:hidden}.blocked span{font-size:9px;color:#aab2a4;white-space:nowrap;writing-mode:vertical-rl;letter-spacing:2px}.booking{position:absolute;top:10px;height:98px;text-align:left;display:block;min-width:0;border-radius:6px;overflow:hidden;padding:9px 11px;border-width:1px 1px 1px 3px;box-shadow:0 2px 3px #253f3210;z-index:2;transition:filter .15s,box-shadow .15s}.booking:hover{box-shadow:0 3px 10px #253f3220;filter:brightness(.98)}.booking.hotpepper{background:#f3edf8;border-color:#e4d5ef;border-left-color:#b08ac7;color:#785590}.booking.minimo{background:#eaf3f9;border-color:#d2e5f2;border-left-color:#7ca8c9;color:#527f9d}.booking.local{background:#fbf4e5;border-color:#f0e2c2;border-left-color:#d2b073;color:#9b7a3f}.booking-top{display:flex;justify-content:space-between;align-items:center;font-size:9px;white-space:nowrap;gap:4px}.source-tag{background:#fff8;border-radius:3px;padding:2px 4px;font-size:8px;font-weight:700}.booking-name{font-size:12px;color:#404a42;font-weight:650;margin-top:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.booking-name em{font-size:8px;font-style:normal;font-weight:500;margin-left:8px;background:#fff9;padding:2px 4px;border-radius:3px;color:inherit}.booking-service{font-size:10px;margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.9}.booking-bottom{display:flex;justify-content:space-between;font-size:8px;margin-top:8px;white-space:nowrap;gap:4px}.booking-bottom>span:first-child{display:flex;align-items:center;gap:4px}.booking-bottom i{width:4px;height:4px;border-radius:50%;background:currentColor}.now-line{position:absolute;top:0;bottom:0;width:1.5px;background:#df8c77;z-index:4;pointer-events:none}.now-line span{position:absolute;top:-2px;left:-3px;width:7px;height:7px;background:#df8c77;border-radius:50%}.resource-divider{position:relative;display:flex;height:32px;background:#f6f8f3;border-top:2px solid #dae3d5;color:#8d9a85;font-size:9px;align-items:center;gap:35px}.resource-divider span:first-child{position:sticky;left:16px}.resource-divider span+span{color:#aab3a4}.resource-avatar{border-radius:8px;background:#f0f4ed;color:#8c9e82;width:31px;height:34px;display:grid;place-items:center;flex-shrink:0}.booking.compact{height:44px;padding:4px 8px}.compact .booking-top{font-size:8px}.compact .booking-name{font-size:10px;margin-top:2px}.calendar-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e5ebe1;min-height:40px;padding:0 18px;color:#a1ac9b;font-size:9px}.calendar-footer .online-dot{margin-right:6px;width:4px;height:4px}.keyboard-hint{font-size:16px;margin-left:10px}.page-footer{display:flex;justify-content:space-between;font-size:9px;color:#a9b2a5;padding-top:22px}.page-footer b{color:#b8ac88;margin:0 5px;font-weight:400}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#153d334d;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal{background:#fff;border-radius:16px;width:560px;max-width:100%;max-height:90dvh;overflow:auto;padding:25px;box-shadow:0 20px 80px #102e3026}.modal-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.modal-heading small{font-size:9px;letter-spacing:1px;color:#94a294}.modal h2{font-size:21px;font-weight:600;margin:7px 0}.modal h3{font-size:14px}.modal-heading>button{border:0;background:#f6f8f5}.notice{background:#f0f6f2;color:#63816b;font-size:11px;line-height:1.8;padding:12px;border-radius:8px;display:flex;gap:8px;margin:12px 0 20px}.notice svg{flex-shrink:0;margin-top:3px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-grid label,.setting-label{display:flex;flex-direction:column;gap:7px;font-size:11px;color:#768775}.form-grid input,.form-grid select,.form-grid textarea{font-size:14px;min-height:42px;width:100%}.form-grid .full{grid-column:1/-1}.checkbox-field{display:flex!important;flex-direction:row!important;align-items:center;gap:8px;margin:14px 0;font-size:12px}.checkbox-field input{width:17px!important;min-height:17px!important;accent-color:#196d59}.detail-sync{font-size:10px;color:#98a393;margin-top:15px}.modal-actions{display:flex;gap:9px;justify-content:flex-end;flex-wrap:wrap;margin-top:23px}.danger{color:#bd6658;border-color:#edcdc7;background:#fff7f4;margin-right:auto}.error{color:#b74f3c;background:#fff1ec;padding:12px;border-radius:6px;font-size:12px}.muted{font-size:12px;line-height:1.9;color:#8a9885}.staff-list{max-height:55dvh;overflow:auto}.staff-list>div{display:flex;align-items:center;gap:7px;padding:10px 0;border-bottom:1px solid #edf1e9}.staff-list strong{min-width:65px;font-size:13px}.staff-list small{margin-right:auto;color:#99a48f}.staff-list button{padding:7px;min-height:38px}.block-editor{display:flex;gap:5px;margin:10px 0}.block-editor select{width:30%;padding:8px 4px;font-size:12px}.block-editor button{padding:4px}.resource-info{display:flex;gap:15px;align-items:center;padding:18px;border:1px solid #e4eae0;border-radius:9px;margin:12px 0;color:#71876b}.resource-info p,.sync-item p{font-size:11px;color:#94a28d}.setting-label{margin:20px 0}.sync-item{border-bottom:1px solid #e6ece1;padding:15px 0}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%);background:#234e40;color:#fff;padding:13px 20px;z-index:200;border-radius:10px;box-shadow:0 8px 30px #234e4030;display:flex;align-items:center;gap:9px;font-size:12px;max-width:90vw}@media(min-width:1600px){.calendar-scroll{height:calc(100dvh - 480px);max-height:850px}.page{padding-top:35px}.overview{padding:23px 25px}}@media(max-width:1200px){.sidebar{width:185px;padding:25px 13px}.app>main{margin-left:185px}.page{padding:25px 20px}.topbar{padding:0 20px}.sync-card{display:none}.store-select{flex:1.3}.week-caption{display:none}.legend{gap:9px}.stat{padding-left:18px}.brand{font-size:22px}.brand-icon{width:32px}.filterbar{padding:12px}.calendar-grid{width:calc(155px + var(--timeline))}.person-cell,.corner{width:155px}.calendar-scroll{height:calc(100dvh - 454px)}}@media(max-width:760px){.sidebar{display:none}.app>main{margin-left:0}.topbar{height:53px;padding:0 16px}.breadcrumb{font-size:10px;gap:8px}.breadcrumb:before{content:"N✦";background:#196d59;color:#fff;padding:6px;border-radius:7px;font-family:Georgia,serif;font-size:15px}.top-right{gap:10px}.demo-pill{font-size:9px}.top-avatar{height:28px;width:28px}.page{padding:22px 12px 18px}.eyebrow{font-size:7px;letter-spacing:1.5px}h1{font-size:24px;margin:8px 0}h1 span{display:none}.page-heading{gap:8px;margin-bottom:20px}.page-heading p{font-size:10px;max-width:220px;line-height:1.7}.page-heading .primary{padding:10px 12px;white-space:nowrap;font-size:11px;min-height:44px}.overview{display:grid;grid-template-columns:1fr 1fr 1fr;padding:13px 15px;gap:14px;margin-bottom:18px}.store-select{grid-column:1/-1;border-bottom:1px solid #e9eee4;padding-bottom:12px;gap:10px}.store-select>div{display:flex;align-items:center;gap:15px;flex:1}.store-select small{margin:0}.store-select select{font-size:12px;min-height:32px;width:auto;flex:1}.stat{padding-left:14px}.stat:nth-child(2){border-left:0;padding-left:0}.stat strong{font-size:23px}.stat>span{font-size:9px}.stat strong small{font-size:8px;margin-left:5px}.calendar-toolbar{padding:12px 9px;flex-wrap:wrap;gap:8px}.date-controls{gap:3px;flex:1}.date-picker{margin:0 2px;gap:5px}.date-picker input{font-size:16px;width:141px}.date-controls>button{width:32px;min-height:44px}.date-controls .today-button{padding:8px;font-size:11px;min-height:44px}.calendar-actions{gap:0}.calendar-actions button{min-width:44px;min-height:44px;padding:8px}.calendar-actions span{display:none}.week-strip{padding:9px 7px;gap:3px}.day{min-width:0;padding:8px 3px;gap:5px;min-height:83px}.day strong{font-size:20px}.day small{font-size:9px}.day>span{font-size:8px}.filterbar{flex-wrap:wrap;gap:12px;padding:12px 10px}.employee-filters{width:100%;gap:6px}.employee-filters select{font-size:16px;max-width:200px;min-height:44px}.mine{font-size:12px;margin-left:auto;min-height:44px}.mine input{height:18px;width:18px}.legend{font-size:9px;gap:14px;width:100%;justify-content:space-between}.legend i{width:6px;height:6px}.calendar-scroll{height:54dvh;min-height:365px;max-height:650px}.calendar-grid{width:calc(115px + var(--timeline))}.person-cell,.corner{width:115px}.person-cell{padding:12px 7px;gap:6px}.staff-avatar,.resource-avatar{width:25px;height:29px;border-radius:7px;font-size:12px}.person-cell strong{font-size:11px}.person-cell small{font-size:8px;max-width:66px;line-height:1.6}.capacity{font-size:8px;padding:2px}.corner{padding:10px 9px}.corner small{font-size:7px}.shift-edit{min-width:32px;min-height:32px;bottom:2px;right:0}.calendar-footer{font-size:8px;padding:0 10px;gap:10px;min-height:43px}.calendar-footer>span:last-child{max-width:115px;line-height:1.6}.page-footer{font-size:8px;gap:15px;line-height:1.9;padding-top:16px}.page-footer>span:last-child{max-width:150px;text-align:right}.modal-backdrop{padding:10px;align-items:flex-end}.modal{padding:20px 16px;max-height:93dvh;border-radius:17px 17px 10px 10px;padding-bottom:max(20px,env(safe-area-inset-bottom))}.modal-heading button{min-width:44px;min-height:44px}.modal input,.modal select,.modal textarea{font-size:16px}.form-grid{gap:13px 10px}.form-grid label{font-size:12px}.modal-actions button{min-height:44px}.block-editor{flex-wrap:wrap}.block-editor select{font-size:14px}.staff-list small{font-size:10px}.toast{bottom:20px;width:max-content;line-height:1.7}.resource-divider{gap:18px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}button.demo-pill{border:0;min-height:32px;background:transparent;padding:4px;font-size:10px}.calendar-row{height:110px}.booking:not(.compact){height:91px;top:9px;padding-top:7px;padding-bottom:7px}.booking-bottom{margin-top:6px}.resource-row{height:112px}@media(max-width:760px){.calendar-toolbar{row-gap:2px}.calendar-actions{width:100%;justify-content:flex-end}.calendar-actions span{display:inline;font-size:11px}.calendar-actions button{padding:5px 10px;min-height:36px}.calendar-actions button+button{border-left:0}.demo-pill{font-size:9px!important}}@media(max-width:760px){.person-cell strong{font-size:12px}.person-cell small{font-size:10px}.capacity{font-size:9px}.booking-name{font-size:13px}.booking-top{font-size:10px}.booking-service{font-size:11px}.booking-bottom{font-size:9px}.store-select select{font-size:16px}.store-select>div{gap:9px}.store-select small{white-space:nowrap}.source-tag{font-size:8px}}
