.studio-app,.studio-app-login,.studio-app-loading{--sa-bg:#f5f5f2;--sa-card:#fff;--sa-line:#e5e5e0;--sa-ink:#141414;--sa-muted:#777;background:var(--sa-bg);min-height:100dvh;color:var(--sa-ink);-webkit-font-smoothing:antialiased;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px}.studio-app *,.studio-app-login *{box-sizing:border-box}.studio-app button,.studio-app-login button{cursor:pointer;font:inherit}.studio-app button:disabled{opacity:.55;cursor:wait}.sa-kicker{color:#888;letter-spacing:.16em;font-size:10px;font-weight:800;line-height:1.4;display:block}.studio-app .sa-top{z-index:20;height:calc(66px + env(safe-area-inset-top));padding:env(safe-area-inset-top) max(19px,env(safe-area-inset-right)) 0 max(19px,env(safe-area-inset-left));border-bottom:1px solid var(--sa-line);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fafaf8eb;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.sa-top strong{letter-spacing:.08em;margin-top:2px;font-size:16px;font-weight:850;display:block}.sa-top strong span,.studio-app-login h1 span{color:#8e8e8b}.sa-top-alert{border:1px solid var(--sa-line);color:#111;background:#fff;border-radius:13px;width:41px;height:41px;font-size:22px;position:relative}.sa-top-alert em{color:#fff;background:#161616;border-radius:50%;place-items:center;min-width:18px;height:18px;padding:0 4px;font-size:10px;font-style:normal;display:grid;position:absolute;top:-4px;right:-4px}.sa-body{max-width:760px;min-height:calc(100dvh - 150px);padding:24px 18px calc(105px + env(safe-area-inset-bottom));margin:auto}.sa-welcome,.sa-page-head{margin:4px 2px 21px}.sa-welcome h1,.sa-page-head h1{letter-spacing:-.055em;margin:6px 0 5px;font-size:clamp(27px,7vw,39px);font-weight:760;line-height:1.08}.sa-welcome p,.sa-page-head p{color:#777;margin:0;font-size:13px;line-height:1.5}.sa-hero,.sa-stat-feature{color:#fff;background:#151515;border-radius:23px;padding:23px;position:relative;overflow:hidden}.sa-hero>span,.sa-stat-feature>span{color:#aaa;letter-spacing:.14em;font-size:10px;font-weight:750;display:block}.sa-hero>strong,.sa-stat-feature>strong{letter-spacing:-.055em;margin:11px 0 4px;font-size:clamp(37px,10vw,53px);font-weight:730;line-height:1;display:block}.sa-hero>small,.sa-stat-feature>small{color:#bebebe;font-size:12px}.sa-hero>div{color:#bababa;border-top:1px solid #3a3a3a;justify-content:space-between;align-items:center;margin-top:23px;padding-top:15px;font-size:12px;display:flex}.sa-hero>div b{color:#fff;font-size:17px}.sa-quick-grid,.sa-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0 27px;display:grid}.sa-quick-grid button,.sa-stat-grid article{border:1px solid var(--sa-line);color:#111;text-align:left;background:#fff;border-radius:18px;flex-direction:column;justify-content:center;align-items:flex-start;min-width:0;min-height:92px;padding:16px;display:flex}.sa-quick-grid b,.sa-stat-grid b{letter-spacing:-.04em;font-size:24px;font-weight:720}.sa-quick-grid span,.sa-stat-grid span{color:#777;margin-top:5px;font-size:11px}.sa-warning{color:#9b3434;text-align:left;background:#fff1f0;border:1px solid #ecc9c9;border-radius:15px;width:100%;margin:-11px 0 22px;padding:15px 17px;display:block}.sa-warning b,.sa-warning span{display:block}.sa-warning span{margin-top:5px;font-size:11px}.sa-section-head{justify-content:space-between;align-items:end;margin:26px 2px 12px;display:flex}.sa-section-head h2{letter-spacing:-.04em;margin:4px 0 0;font-size:20px}.sa-section-head>button{color:#555;background:0 0;border:0;padding:6px;font-size:12px;font-weight:700}.sa-list{gap:9px;display:grid}.sa-appointment{border:1px solid var(--sa-line);color:#111;text-align:left;background:#fff;border-radius:17px;grid-template-columns:46px 40px minmax(0,1fr) auto;align-items:center;gap:9px;width:100%;min-height:92px;padding:12px;display:grid}.sa-date{background:#f1f1ef;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;width:46px;height:57px;display:flex}.sa-date b{font-size:22px;line-height:1}.sa-date small{color:#666;text-transform:uppercase;margin-top:2px;font-size:10px}.sa-avatar{color:#333;background:#ebebe8;border-radius:50%;flex:none;place-items:center;width:40px;height:40px;font-size:17px;font-weight:700;display:grid;overflow:hidden}.sa-avatar img{object-fit:cover;width:100%;height:100%}.sa-appointment-main{flex-direction:column;gap:3px;min-width:0;display:flex}.sa-appointment-main>b{white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.sa-appointment-main>small{white-space:nowrap;text-overflow:ellipsis;color:#888;font-size:10px;overflow:hidden}.sa-appointment-main em{color:#777;align-self:start;font-size:9px;font-style:normal}.sa-appointment-main em.paid,.sa-appointment-main em.waived{color:#167746}.sa-appointment-main em.overdue{color:#ba4444}.sa-appointment>strong{white-space:nowrap;align-self:center;padding-left:4px;font-size:13px}.sa-booking,.sa-customer-row{border:1px solid var(--sa-line);color:#111;text-align:left;background:#fff;border-radius:16px;align-items:center;gap:12px;width:100%;min-height:72px;margin:0 0 8px;padding:11px 13px;display:flex}.sa-booking>span:nth-child(2),.sa-customer-row>span:nth-child(2){flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.sa-booking b,.sa-customer-row b{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.sa-booking small,.sa-customer-row small{text-overflow:ellipsis;white-space:nowrap;color:#777;font-size:10px;overflow:hidden}.sa-booking em,.sa-customer-row em{color:#666;background:#eee;border-radius:8px;padding:5px 7px;font-size:10px;font-style:normal}.sa-push-button{color:#111;text-align:left;background:#fff;border:1px solid #d7d7d2;border-radius:16px;width:100%;margin:26px 0 0;padding:16px;display:block;font-size:13px!important;font-weight:750!important}.sa-push-button small{color:#777;margin-top:5px;font-size:10px;font-weight:400;display:block}.sa-segments{background:#e9e9e5;border-radius:15px;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:15px;padding:4px;display:grid}.sa-segments button{color:#686868;background:0 0;border:0;border-radius:11px;min-height:41px;font-size:12px;font-weight:700}.sa-segments button.active{color:#111;background:#fff;box-shadow:0 2px 6px #0000000d}.sa-segments b{color:#888;margin-left:4px;font-size:10px}.sa-mini-total{border:1px solid var(--sa-line);background:#fff;border-radius:17px;flex-direction:column;gap:5px;margin:0 0 16px;padding:16px 18px;display:flex}.sa-mini-total>span{color:#888;letter-spacing:.1em;font-size:10px}.sa-mini-total strong{letter-spacing:-.04em;font-size:27px}.sa-mini-total small{color:#777}.sa-past{margin-top:20px}.sa-past summary{color:#666;text-align:center;padding:13px;font-size:12px}.sa-past .sa-list{padding-top:8px}.sa-empty{color:#777;text-align:center;background:#fafaf8;border:1px dashed #d9d9d5;border-radius:17px;padding:24px;font-size:12px}.sa-calendar{border:1px solid var(--sa-line);background:#fff;border-radius:21px;padding:15px 10px}.sa-calendar>header{justify-content:space-between;align-items:center;padding:0 8px 14px;display:flex}.sa-calendar>header strong{text-transform:capitalize;font-size:16px}.sa-calendar>header button{background:#fafaf9;border:1px solid #e4e4e0;border-radius:10px;width:36px;height:36px;font-size:24px}.sa-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;display:grid}.sa-weekday{text-align:center;color:#999;padding:6px 0 9px;font-size:10px}.sa-calendar-grid button{aspect-ratio:1;color:#333;background:0 0;border:0;border-radius:11px;place-items:center;display:grid;position:relative}.sa-calendar-grid button.muted{color:#bbb}.sa-calendar-grid button.today{box-shadow:inset 0 0 0 1px #bbb}.sa-calendar-grid button.selected{color:#fff;background:#111}.sa-calendar-grid button b{font-size:12px;font-weight:650}.sa-calendar-grid button i{color:#111;background:#cfcfca;border-radius:50%;place-items:center;min-width:12px;height:12px;padding:0 2px;font-size:8px;font-style:normal;display:grid;position:absolute;bottom:5px}.sa-calendar-grid button.selected i{background:#fff}.sa-search{gap:8px;margin-bottom:16px;display:flex}.sa-search input{border:1px solid var(--sa-line);color:#111;background:#fff;border-radius:13px;flex:1;min-width:0;min-height:46px;padding:0 14px;font-size:16px}.sa-search button{color:#fff;background:#111;border:0;border-radius:13px;width:46px;font-size:23px}.sa-stat-feature{margin-bottom:12px}.sa-stat-grid{margin-top:0}.sa-stat-grid article{min-height:98px}.sa-stat-grid span{order:0;margin:0;font-size:11px}.sa-stat-grid b{order:1;margin-top:10px;font-size:21px}.sa-stat-note{color:#777;font-size:11px;line-height:1.5}.sa-nav{z-index:30;height:calc(68px + env(safe-area-inset-bottom));padding:5px max(8px,env(safe-area-inset-right)) env(safe-area-inset-bottom) max(8px,env(safe-area-inset-left));-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border-top:1px solid #dededb;grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:0;right:0}.sa-nav button{color:#929292;background:0 0;border:0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:0;display:flex}.sa-nav button.active{color:#111}.sa-nav i{font-size:25px;font-style:normal;line-height:1}.sa-nav span{font-size:9px;font-weight:750}.sa-toast{z-index:80;bottom:calc(82px + env(safe-area-inset-bottom));color:#fff;background:#151515;border:0;border-radius:12px;width:max-content;max-width:calc(100vw - 30px);padding:13px 17px;font-size:12px;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #0003}.sa-sheet-backdrop{z-index:100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0009;position:fixed;inset:0}.sa-sheet{max-width:760px;max-height:94dvh;padding:0 18px calc(28px + env(safe-area-inset-bottom));color:#111;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:#f5f5f2;border-radius:23px 23px 0 0;margin:auto;position:absolute;bottom:0;left:0;right:0;overflow-y:auto}.sa-sheet>header{z-index:2;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f5f5f2f5;border-bottom:1px solid #e3e3de;justify-content:space-between;align-items:center;min-height:59px;margin:0 -18px;padding:0 18px;display:flex;position:sticky;top:0}.sa-sheet>header button{color:#111;background:#e8e8e4;border:0;border-radius:10px;width:35px;height:35px;font-size:24px}.sa-sheet-person{align-items:center;gap:12px;padding:21px 0;display:flex}.sa-sheet-person .sa-avatar{width:60px;height:60px;font-size:25px}.sa-sheet-person h2{letter-spacing:-.04em;margin:0 0 5px;font-size:22px}.sa-sheet-person span:not(.sa-avatar){color:#777;font-size:12px}.sa-payment{color:#555;background:#fff;border:1px solid #dadad7;border-radius:14px;justify-content:space-between;align-items:center;gap:8px;padding:15px;font-size:12px;display:flex}.sa-payment.paid,.sa-payment.waived{color:#146f3c;background:#e7f5ec;border-color:#b9dfc9}.sa-payment.overdue{color:#a43636;background:#fff0ef;border-color:#eac0c0}.sa-payment b{white-space:nowrap;font-size:15px}.sa-main-action,.sa-secondary,.sa-edit>button{color:#fff;background:#111;border:0;border-radius:12px;width:100%;min-height:46px;margin:12px 0;padding:10px;font-size:12px;font-weight:750;display:block}.sa-secondary{color:#111;background:#fff;border:1px solid #ddd}.sa-info{border:1px solid var(--sa-line);background:#fff;border-radius:16px;grid-template-columns:105px minmax(0,1fr);gap:12px;margin:17px 0;padding:19px;display:grid}.sa-info>span{color:#888;letter-spacing:.05em;font-size:9px;font-weight:800}.sa-info>a,.sa-info>b{color:#222;overflow-wrap:anywhere;min-width:0;font-size:12px;font-weight:550;line-height:1.4;text-decoration:none}.sa-sheet h3{margin:24px 2px 11px;font-size:16px}.sa-note,.sa-edit label{color:#666;gap:7px;font-size:11px;font-weight:650;display:grid}.sa-note textarea,.sa-edit input{color:#111;background:#fff;border:1px solid #dadad5;border-radius:11px;width:100%;min-height:44px;padding:11px;font:16px Inter,-apple-system,sans-serif}.sa-note textarea{min-height:94px}.sa-checks{grid-template-columns:1fr 1fr;gap:8px;display:grid}.sa-checks button{color:#666;background:#fff;border:1px solid #deded9;border-radius:11px;min-height:45px;padding:8px;font-size:11px}.sa-checks button.done{color:#166c3c;background:#e8f5ec;border-color:#a7d7b7}.sa-document{color:#111;text-align:left;background:#fff;border:1px solid #deded9;border-radius:11px;justify-content:space-between;gap:10px;width:100%;min-height:47px;margin-bottom:8px;padding:12px;font-size:11px;display:flex}.sa-document b{white-space:nowrap}.sa-media{gap:8px;display:flex;overflow-x:auto}.sa-media a{border-radius:12px;flex:none;width:100px;height:100px;overflow:hidden}.sa-media img{object-fit:cover;width:100%;height:100%}.sa-edit{gap:14px;display:grid}.sa-edit h2{font-size:21px}.studio-app-login,.studio-app-loading{place-items:center;padding:25px;display:grid}.studio-app-login section{border:1px solid var(--sa-line);background:#fff;border-radius:24px;width:min(100%,420px);padding:30px 24px}.studio-app-login h1{letter-spacing:.04em;margin:6px 0 3px;font-size:34px}.studio-app-login p{color:#777;margin:0 0 28px}.studio-app-login form{gap:13px;display:grid}.studio-app-login label{color:#666;gap:7px;font-size:12px;display:grid}.studio-app-login input{color:#111;background:#fff;border:1px solid #ddd;border-radius:11px;min-height:48px;padding:10px;font-size:16px}.studio-app-login form button{color:#fff;background:#111;border:0;border-radius:11px;min-height:48px}.sa-error{color:#b43c3c}.studio-app-loading{letter-spacing:.1em;font-size:21px;font-weight:850}.studio-app-loading span{color:#888;letter-spacing:0;margin-top:8px;font-size:11px;font-weight:400;display:block}@media (width>=760px){.sa-body{padding-top:35px}.sa-nav{border-left:1px solid #ddd;border-right:1px solid #ddd;width:760px;left:50%;right:auto;transform:translate(-50%)}.studio-app .sa-top{padding-left:max(50vw - 360px,24px);padding-right:max(50vw - 360px,24px)}}@media (width<=385px){.sa-appointment{grid-template-columns:42px 34px minmax(0,1fr) auto;gap:6px;padding:10px}.sa-date{width:42px}.sa-appointment .sa-avatar{width:34px;height:34px}.sa-appointment>strong{font-size:11px}.sa-info{grid-template-columns:85px minmax(0,1fr);padding:14px}}
