@import"typography.css?v=6e6114fe5e6bf498";:root{--vl-espresso-950:#291a17;--vl-espresso-800:#493027;--vl-espresso-700:#684739;--vl-mocha-600:#765544;--vl-bg-page:#f5f1ec;--vl-bg-surface:#fffcf8;--vl-bg-dark:var(--vl-espresso-950);--vl-text-primary:#382820;--vl-text-secondary:#806d61;--vl-text-inverse:#fff;--vl-text-inverse-muted:#f5e9df;--vl-accent:#d8bda4;--vl-hover-light:#eee4da;--vl-table-head:#f1e9e1;--vl-selected-light:#e4d4c3;--vl-radius-sm:6px;--vl-radius-md:8px;--vl-radius-card:12px;--vl-motion:180ms ease;--ink:var(--vl-text-primary);--muted:var(--vl-text-secondary);--line:var(--vl-border);--paper:var(--vl-bg-page);--accent:var(--vl-mocha-600);--light:var(--vl-hover-light)}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font-size:var(--text-body)}button,input,select,textarea{font-family:inherit;font-size:inherit;font-style:inherit;line-height:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{cursor:pointer}button{border:1px solid var(--line);background:var(--vl-bg-surface);color:inherit;border-radius:8px;padding:10px 14px}button:disabled{opacity:.5;cursor:wait}a{color:inherit;text-decoration:none}input,select,textarea{width:100%;border:1px solid var(--vl-border);border-radius:7px;padding:11px;background:var(--vl-bg-surface);color:var(--ink)}:focus-visible{outline:2px solid #987861;outline-offset:3px}h1,h2,h3,p{margin:0}h1{font-size:var(--text-page);letter-spacing:var(--tracking-heading)}h2{font-size:var(--text-section)}h3{font-size:var(--text-card)}p{color:var(--muted);line-height:var(--line-body)}small{display:block;color:var(--muted);font-size:var(--text-xs);line-height:1.6}.eyebrow{display:block;font-size:var(--text-xs);letter-spacing:var(--tracking-label);color:#a18b7b;margin-bottom:15px}.primary{background:var(--accent);color:white;border-color:var(--accent);white-space:nowrap;padding:13px 20px}.wordmark{display:block;font-size:var(--text-brand);letter-spacing:var(--tracking-brand)}.wordmark span{font-style:italic;color:#a58b77}.sidebar{width:236px;background:#fffdfa;border-right:1px solid var(--line);position:fixed;inset:0 auto 0 0;padding:37px 25px;display:flex;flex-direction:column}.sidebar .wordmark{margin-bottom:54px}.sidebar nav{display:grid;gap:8px}.sidebar nav button{border:0;background:transparent;text-align:left;padding:14px 17px;color:#84786f;display:flex;gap:15px}.sidebar nav button span{font-size:var(--icon-md);line-height:18px}.sidebar nav button.selected{background:#efe5db;color:#654a37}.side-note{margin-top:auto;background:#f5eee7;padding:22px 18px;border-radius:12px}.side-note>span{font-size:var(--icon-lg);color:#af927a}.side-note h3{margin:10px 0}.side-note p{font-size:var(--text-xs)}.profile{display:flex;gap:10px;align-items:center;margin-top:30px}.profile>div:last-child{min-width:0}.profile small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:140px}.avatar{background:#e5d8cd;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;flex-shrink:0}.logout{color:#8c7d72;margin:18px 0 0 47px;font-size:var(--text-xs)}.workspace{margin-left:236px}.topbar{height:78px;border-bottom:1px solid var(--line);padding:0 42px;display:flex;align-items:center;justify-content:space-between;font-size:var(--text-xs);color:var(--vl-text-secondary);background:var(--vl-bg-surface)}.topbar i{padding:0 16px;color:#c5b8ac}.private{background:#eef1e9;color:#728365;padding:8px 12px;border-radius:20px;font-size:var(--text-xs)}.content{max-width:1550px;margin:auto;padding:40px 42px 20px}.heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:32px}.heading .eyebrow{margin-bottom:12px}.heading p{margin-top:10px}.period{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:var(--text-xs);margin-bottom:14px}.period input{width:180px;padding:7px;background:transparent;border-color:var(--line)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:26px}.stats section{background:var(--vl-bg-surface);border:1px solid var(--line);border-radius:12px;padding:23px;border-color:var(--vl-border)}.stats section>span{display:flex;justify-content:space-between;color:#7a726b;font-size:var(--text-card)}.stats i{font-style:normal;color:#ac9786}.stats strong{font-size:var(--text-stat);display:flex;align-items:baseline;gap:10px;margin:20px 0 9px}.stats p{font-size:var(--text-xs)}.card{background:var(--vl-bg-surface);border:1px solid var(--line);border-radius:12px;overflow:hidden;border-color:var(--vl-border)}.card-title{padding:24px;display:flex;align-items:center;justify-content:space-between;gap:15px}.schedule-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(260px,1fr);gap:24px;align-items:start}.month-nav{display:flex;align-items:center;gap:9px;font-size:var(--text-xs)}.month-nav button{border:0;padding:5px 10px;font-size:var(--icon-md)}.month-nav b{}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));padding:0 18px 15px;gap:4px}.day-label{text-align:center;font-size:var(--text-xs);color:#9a8d80;padding:12px 0}.day{border:1px solid transparent;border-radius:8px;text-align:left;min-height:76px;padding:12px 9px;position:relative}.day b{font-size:var(--text-base)}.day span{display:block;font-size:var(--text-xs);color:#a69b92;margin-top:9px}.day i{position:absolute;right:8px;top:15px;width:4px;height:4px;background:#a58364;border-radius:50%}.day.today{border-color:#d8c6b5}.day.chosen{background:#785b48;color:white}.day.chosen span{color:#eadbcd}.day.chosen i{background:white}.calendar footer{padding:18px 24px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:12px;font-size:var(--text-xs);color:#998a7c}.dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#a58364;margin-right:6px}.agenda{padding:25px}.agenda .eyebrow{font-size:var(--text-xs);margin-bottom:10px}.agenda>p{font-size:var(--text-xs);margin-top:6px}.agenda-list{margin:22px 0}.appointment{display:flex;width:100%;gap:20px;text-align:left;border:0;border-left:2px solid #bfa48d;border-radius:0;background:#faf6f1;margin-bottom:12px;padding:15px}.appointment strong{font-size:var(--text-body)}.appointment .badge{margin-top:9px}.appointment small{font-size:var(--text-xs)}.agenda-empty{text-align:center;padding:12px;color:#b69d85;font-size:var(--icon-lg)}.agenda-empty p{font-size:var(--text-xs);margin-top:7px}.agenda h3{margin-bottom:7px}.agenda>small{font-size:var(--text-xs)}.slots{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.bottom-card{margin-top:26px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:var(--text-table);white-space:nowrap}th{text-align:left;font-size:var(--text-table-header);text-transform:uppercase;letter-spacing:.6px;background:var(--vl-table-head);color:var(--vl-espresso-700)}th,td{padding:17px 24px;border-bottom:1px solid #f1ece6}td small{font-size:var(--text-xs);margin-top:4px}.badge{display:inline-block;padding:5px 9px;border-radius:5px;font-size:var(--text-badge)}.green{background:#edf4e7;color:#688052}.gold{background:#faf0df;color:#a18547}.gray{background:#f0ece8;color:#877c73}.text-button{padding:5px 0;border:0;background:transparent;color:#8c6952;font-size:var(--text-button)}.empty{text-align:center;padding:45px 25px}.empty>span{font-size:var(--icon-lg);color:#b49b83}.empty h3{margin:12px 0 8px}.empty p{font-size:var(--text-xs);margin-bottom:18px}.empty button{font-size:var(--text-button)}.filters{display:flex;gap:10px}.filters input{width:240px;font-size:var(--text-input)}.filters :is(select,.vit-select){width:135px;font-size:var(--text-input)}.table-note{padding:0 24px 16px;font-size:var(--text-xs)}.page-footer{display:flex;justify-content:space-between;margin-top:30px;padding:10px 0;color:#ad9f93;font-size:var(--text-xs);letter-spacing:1px}.page-footer span{letter-spacing:0}.overlay{position:fixed;inset:0;background:#34261d66;z-index:20;display:flex;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(4px)}.modal{background:var(--vl-bg-surface);border-radius:16px;width:610px;max-height:92dvh;overflow:auto;box-shadow:0 20px 100px #34261d33}.modal .card-title{border-bottom:1px solid var(--line)}.modal .eyebrow{margin-bottom:7px}.modal form{padding:24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid label{font-size:var(--text-label);color:#7e6f63}.form-grid label input,.form-grid label select,.form-grid label textarea{margin-top:7px;font-size:var(--text-input)}.wide{grid-column:1/-1}.payment-summary{display:flex;align-items:center;justify-content:space-between;background:var(--vl-hover-light);padding:12px;border-radius:8px;font-size:var(--text-xs)}.payment-summary button{font-size:var(--text-button);padding:7px 10px}.form-hint{font-size:var(--text-xs);margin:15px 0}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.alert,.success{padding:14px;background:#faeae4;border-radius:8px;margin-bottom:18px;font-size:var(--text-body);color:#8f4635}.success{background:#edf4e7;color:#688052}.login{min-height:100dvh;display:grid;grid-template-columns:1fr 1fr}.login-art{padding:45px 12%;background:#e9ded2;position:relative;overflow:hidden}.login-art .wordmark{position:relative;z-index:1}.arch{height:330px;max-width:320px;margin:40px auto 25px;border-radius:180px 180px 10px 10px;background:linear-gradient(130deg,#f4ede5,#ceb9a6);display:grid;place-items:center;color:#927159}.arch svg{width:85%}.login-art h1{font-size:var(--text-page);line-height:var(--line-heading)}.login-art p{margin-top:22px;color:#8b7868}.login-form{padding:90px 18%;display:flex;justify-content:center;flex-direction:column}.login-form h2{font-size:var(--text-page);letter-spacing:-1px;margin-bottom:18px}.login-form p{font-size:var(--text-base)}.signin{display:flex;justify-content:space-between;border-radius:7px;margin:35px 0 20px}.login-form small{font-size:var(--text-xs)}@media(min-width:1500px){.day{min-height:91px}}@media(max-width:1150px){.sidebar{width:195px;padding:30px 18px}.workspace{margin-left:195px}.content{padding:30px 24px}.topbar{padding:0 24px;background:var(--vl-bg-surface);color:var(--vl-text-secondary)}.heading h1{font-size:var(--text-page)}.schedule-layout{grid-template-columns:1fr}.agenda-list{display:flex;gap:10px}.appointment{max-width:250px}.agenda-empty{width:100%}.stats strong{font-size:var(--text-stat)}.calendar-grid .day{min-height:85px}}@media(max-width:700px){.sidebar{position:static;width:100%;padding:18px 18px 10px;border-right:0;border-bottom:1px solid var(--line)}.sidebar .wordmark{font-size:var(--text-brand);margin-bottom:18px}.sidebar>.eyebrow,.side-note,.profile,.logout{display:none}.sidebar nav{display:flex;justify-content:space-between;gap:2px}.sidebar nav button{padding:10px 9px;font-size:var(--text-menu);gap:6px}.sidebar nav button span{font-size:var(--text-button)}.workspace{margin:0}.topbar{height:48px;padding:0 18px;background:var(--vl-bg-surface);color:var(--vl-text-secondary)}.content{padding:25px 16px}.heading{align-items:flex-start;flex-direction:column;gap:17px}.heading h1{font-size:var(--text-page)}.heading p{font-size:var(--text-xs)}.heading .primary{width:100%}.stats{gap:9px;grid-template-columns:1fr}.stats section{padding:17px;display:grid;grid-template-columns:1fr 1fr;align-items:center;background:var(--vl-bg-surface);border-color:var(--vl-border)}.stats strong{font-size:var(--text-stat);margin:0;text-align:right;justify-content:flex-end}.stats p{margin-top:8px}.stats i{display:none}.card-title{padding:18px;flex-wrap:wrap}.calendar-grid{padding:0 8px 10px;gap:1px}.calendar-grid .day{padding:10px 5px;min-height:64px}.day span{font-size:var(--text-xs)}.day i{right:4px;top:12px}.calendar footer{padding:15px 10px;font-size:var(--text-xs)}.agenda-list{display:block}.appointment{max-width:none}.page-footer span{display:none}.filters{width:100%}.filters input{width:100%;min-width:0}.filters :is(select,.vit-select){width:120px}.modal form{padding:18px}.overlay{padding:10px}.form-grid{gap:12px}.login{grid-template-columns:1fr}.login-art{padding:25px 30px}.login-art .arch{display:none}.login-art h1{font-size:var(--text-page);margin:40px 0 20px}.login-art p{display:none}.login-form{padding:45px 30px 60px}.login-form h2{font-size:var(--text-page)}}.login-fields{margin-top:25px;display:grid;gap:18px}.login-fields label{font-size:var(--text-label);color:#847568}.login-fields input{margin-top:8px}.login-fields .signin{margin:5px 0 0}.setup-panel{max-width:520px;margin:50px auto;padding:30px;background:var(--vl-bg-surface);border:1px solid var(--line);border-radius:14px}.setup-panel h1{margin-bottom:15px}.setup-panel .success{margin-top:20px}.sidebar form .logout{border:0;padding:0;background:transparent}svg{display:block}button{background:var(--vl-bg-surface)}@media(max-width:700px){.sidebar form{position:absolute;right:18px;top:20px}.sidebar form .logout{display:block;margin:0}.setup-panel{margin:20px}}.day.past{background:#f4f2ef;color:var(--ink)}.day.past.chosen{background:#91867e;color:white}.day.past.chosen span{color:#fff}.sidebar nav{overflow-y:auto;max-height:48vh;flex-shrink:0}.team-panel{margin:0 0 24px;padding:20px}.team-panel>.card-title{padding:4px 0 20px}.team-panel>p{margin:0 0 16px;font-size:var(--text-xs)}.team-panel h3{margin:20px 0 12px}.team-panel>label{display:block;max-width:300px;font-size:var(--text-label);margin:16px 0}.team-panel>button{margin:12px 0}.team-form{margin-top:20px;padding:20px;background:#faf8f5;border:1px solid var(--line);border-radius:10px}.audit-item{margin:12px 0;border:1px solid var(--line);border-radius:8px;padding:14px}.audit-item summary{cursor:pointer;font-size:var(--text-body);line-height:1.7}.audit-item table{white-space:normal;overflow-wrap:anywhere}.audit-item td{min-width:120px;vertical-align:top}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);font-size:var(--text-xs)}.daily-total{padding:16px 0;font-size:var(--text-base)}.report-date{display:block;max-width:260px;margin:16px 0}.report-date input{margin-top:8px}.booking-actions,.photo-panel{padding:20px 24px;border-top:1px solid var(--line)}.booking-actions p,.photo-panel p{font-size:var(--text-xs);margin:10px 0}.photo-panel form{padding:0;margin-top:14px}.photo-panel label{display:block;font-size:var(--text-label);margin:12px 0}.photo-panel input,.photo-panel select{margin-top:6px}.photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.photo-grid img{width:100%;height:150px;object-fit:cover;border-radius:8px}.consent{display:flex!important;align-items:flex-start;gap:8px}.consent input{width:auto;margin:0}.form-grid input[readonly]{background:#f1ede7;color:#877c73}@media(max-width:700px){.sidebar nav{overflow-x:auto;max-height:none;justify-content:flex-start}.sidebar nav button{flex-shrink:0}.team-panel{padding:16px}.team-form{padding:14px}.setting-row{flex-wrap:wrap}.booking-actions,.photo-panel{padding:18px}}fieldset.form-grid{border:0;padding:0;margin:0;min-width:0}.pin-unlock{border-top:1px solid var(--line)}.pin-unlock input{margin:8px 0}.photo-grid button{margin:5px 5px 0 0}.currency-input{display:flex;align-items:center;gap:8px;margin-top:7px;border:1px solid #dcd5ce;border-radius:7px;padding-left:11px;background:white}.currency-input span{font-size:var(--text-input);color:var(--ink)}.form-grid .currency-input input{border:0;margin:0;min-width:0;background:transparent}.currency-input:focus-within{outline:2px solid #987861;outline-offset:3px}.booking-date{min-width:0}.booking-date>button{margin-top:7px;font-size:var(--text-button)}.date-picker{padding:12px;border:1px solid var(--line);border-radius:8px;margin-top:8px;background:var(--vl-bg-surface)}.date-picker .month-nav{justify-content:space-between}.date-picker-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;margin:8px 0}.date-picker-grid small{text-align:center;font-size:var(--text-xs)}.date-picker-grid button{padding:7px 0;font-size:var(--text-button)}.date-picker-grid button:disabled{cursor:not-allowed;background:#efedea;color:#aaa}.date-picker-grid button[aria-pressed=true]{border-color:var(--accent)}.schedule-info{padding:12px;background:#f5f1eb;border-radius:8px;margin-top:16px;font-size:var(--text-xs)}.schedule-info small{margin-top:6px}.delete-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:14px;padding:14px 24px;background:#faf4ef;border-top:1px solid var(--line)}.delete-toolbar label{display:flex;align-items:center;gap:8px;font-size:var(--text-label)}.delete-toolbar input,.selection-checkbox{width:auto;margin:0;accent-color:var(--accent)}.selection-checkbox{margin-right:10px}.delete-toolbar span{font-size:var(--text-xs);color:var(--muted)}.delete-button{color:#a03e30;margin-left:12px}.danger{background:#a03e30;color:white;border-color:#a03e30}.modal form>label{display:block;margin:16px 0;font-size:var(--text-label)}.modal form>label input{margin-top:7px}:root{--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--sidebar-width: 200px;--control-height: 36px}.app{font-size:var(--text-body)}.app h1{font-size:var(--text-page);line-height:var(--line-heading);letter-spacing:var(--tracking-heading)}.app h2{font-size:var(--text-section);line-height:var(--line-heading)}.app p{line-height:1.5}.app button{min-height:var(--control-height);padding:var(--space-2) var(--space-3)}.app input:not([type=checkbox]):not([type=hidden]),.app select,.app textarea{min-height:var(--control-height);padding:var(--space-2) var(--space-3);min-width:0}.app .primary{padding:var(--space-2) var(--space-4)}.app .sidebar{width:var(--sidebar-width);padding:var(--space-5) var(--space-4)}.app .sidebar .wordmark{font-size:var(--text-brand);margin-bottom:24px}.app .sidebar>.eyebrow{margin-bottom:var(--space-2)}.app .sidebar nav{gap:var(--space-1);max-height:none;min-height:0}.app .sidebar nav button{padding:9px var(--space-3);gap:10px;align-items:center}.app .sidebar nav button span{font-size:var(--icon-sm)}.app .side-note{padding:var(--space-3);margin-top:auto}.app .side-note>span{font-size:var(--icon-lg)}.app .side-note h3{margin:var(--space-2) 0}.app .profile{margin-top:var(--space-4)}.app .avatar{width:32px;height:32px}.app .sidebar form .logout{min-height:32px;margin:var(--space-2) 0 0 42px;padding:0}.app .workspace{margin-left:var(--sidebar-width);min-width:0}.app .topbar{height:52px;padding:0 24px}.app .private{padding:6px 10px}.app .content{max-width:none;padding:var(--space-5) 24px var(--space-4)}.app .heading{gap:var(--space-4);margin-bottom:var(--space-5)}.app .heading>div{min-width:0}.app .heading .eyebrow{margin-bottom:var(--space-2)}.app .heading p{margin-top:6px;font-size:var(--text-body)}.app .period{margin-bottom:var(--space-3)}.app .period input{width:170px}.app .stats{gap:var(--space-3);margin-bottom:var(--space-4)}.app .stats section{padding:var(--space-4);min-width:0;border-radius:10px}.app .stats strong{font-size:var(--text-stat);gap:var(--space-2);margin:10px 0 6px;flex-wrap:wrap}.app .stats p{line-height:1.4}.app .card{border-radius:10px;min-width:0;background:var(--vl-bg-surface);border-color:var(--vl-border)}.app .card-title{padding:var(--space-4);gap:var(--space-3);flex-wrap:wrap}.app .schedule-layout{gap:var(--space-4)}.app .month-nav{gap:var(--space-2)}.app .month-nav button{padding:2px 10px;font-size:var(--icon-md)}.app .calendar-grid{padding:0 var(--space-3) var(--space-3);gap:3px}.app .day-label{padding:var(--space-2) 0}.app .calendar-grid .day{min-height:64px;padding:var(--space-2)}.app .day span{margin-top:6px}.app .calendar footer{padding:var(--space-3) var(--space-4);flex-wrap:wrap}.app .agenda{padding:var(--space-4)}.app .agenda-list{margin:var(--space-4) 0}.app .appointment{padding:var(--space-3);gap:var(--space-3);margin-bottom:var(--space-2)}.app .appointment .badge{margin-top:6px}.app .agenda-empty{padding:var(--space-2);font-size:var(--icon-lg)}.app .slots{gap:6px;margin-top:var(--space-2)}.app .slots .booking-time-slot{background:#E3ECE4;color:#5F7D67;border:1px solid #C9D8CC;border-radius:6px;padding:5px 8px;font-size:var(--text-booking-time);font-variant-numeric:tabular-nums;line-height:1.2;width:fit-content;min-width:0;min-height:0;white-space:nowrap;text-align:center;transition:background-color .2s ease,border-color .2s ease}.app .slots .booking-time-slot.is-selected:not(.is-unavailable){background:#C9D8CC;border-color:#5F7D67}.app .slots .booking-time-slot.is-unavailable{background:#f4f2ef;color:#E85D75;border-color:var(--line);cursor:not-allowed}.app .slots .booking-time-slot:focus-visible{outline:2px solid #5F7D67;outline-offset:2px}.app .form-grid .booking-time-select{font-size:var(--text-input);font-variant-numeric:tabular-nums}.app .negative-status,.app .date-picker-grid button:disabled,.app .alert{color:#E85D75}.app .bottom-card{margin-top:var(--space-4)}.app .table-wrap{max-width:100%}.app th,.app td{padding:10px var(--space-4)}.app td small{font-size:var(--text-xs);margin-top:3px}.app .badge{padding:var(--space-1) var(--space-2);font-size:var(--text-badge)}.app .text-button{padding:6px 0}.app .filters{gap:var(--space-2);min-width:0}.app .filters input{width:240px}.app .filters :is(select,.vit-select){width:135px}.app .table-note{padding:0 var(--space-4) var(--space-3)}.app .empty{padding:28px var(--space-4)}.app .page-footer{margin-top:var(--space-4);padding:var(--space-2) 0}.app .team-panel{padding:var(--space-4);margin-bottom:var(--space-4)}.app .team-panel>.card-title{padding:0 0 var(--space-3)}.app .team-panel>p{margin-bottom:var(--space-2)}.app .team-panel h3{margin:var(--space-4) 0 var(--space-2)}.app .team-panel>label{margin:var(--space-3) 0}.app .team-panel>button{margin:var(--space-2) 0}.app .team-form{padding:var(--space-4);margin-top:var(--space-3)}.app .audit-item{padding:var(--space-3);margin:var(--space-2) 0}.app .setting-row{padding:var(--space-2) 0;flex-wrap:wrap}.app .daily-total{padding:var(--space-3) 0}.app .report-date{margin:var(--space-3) 0}.app .delete-toolbar{gap:var(--space-3);padding:var(--space-2) var(--space-4)}.app .modal{width:660px;max-width:100%;border-radius:12px}.app .modal form{padding:var(--space-4)}.app .form-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-3)}.app .form-grid label{font-size:var(--text-label);min-width:0}.app .form-grid label input,.app .form-grid label select,.app .form-grid label>.vit-select,.app .form-grid label textarea{margin-top:6px;font-size:var(--text-input)}.app .form-grid .currency-input input{margin:0}.app .currency-input{margin-top:6px;padding-left:var(--space-3);gap:6px}.app .currency-input span{font-size:var(--text-input)}.app .payment-summary{padding:var(--space-2) var(--space-3);gap:var(--space-2)}.app .payment-summary button{padding:6px var(--space-2)}.app .form-hint{margin:var(--space-3) 0;line-height:1.5}.app .form-actions{gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap}.app .booking-actions,.app .photo-panel{padding:var(--space-4)}.app .photo-panel form{padding:0}.app .photo-panel label{margin:var(--space-2) 0}.app .photo-grid{gap:var(--space-3)}.app .photo-grid img{height:135px}.app .alert,.app .success{padding:var(--space-3);margin-bottom:var(--space-3);line-height:1.5}.app .modal form>label{margin:var(--space-3) 0}.app .schedule-info{padding:var(--space-3);margin-top:var(--space-3)}@media(min-width:701px)and (max-height:800px){.app .side-note{display:none}.app .profile{margin-top:auto;padding-top:var(--space-4)}}@media(min-width:701px)and (max-width:1150px){:root{--sidebar-width: 180px}.app .sidebar{padding:var(--space-4) var(--space-3)}.app .content{padding:var(--space-4)}.app .topbar{padding:0 var(--space-4)}.app .heading h1{font-size:var(--text-page)}.app .stats strong{font-size:var(--text-stat)}.app .schedule-layout{grid-template-columns:minmax(0,1fr)}.app .agenda-list{flex-wrap:wrap}}@media(max-width:700px){:root{--control-height: 44px}.app .sidebar{position:static;width:100%;padding:var(--space-3)}.app .sidebar .wordmark{font-size:var(--text-brand);margin-bottom:var(--space-3)}.app .sidebar nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-1);overflow:visible}.app .sidebar:not(.studio-sidebar) nav button{flex-direction:column;justify-content:center;padding:6px 2px;gap:var(--space-1);font-size:var(--text-menu);min-height:48px;text-align:center}.app .sidebar nav button span{font-size:var(--icon-sm);line-height:17px}.app .sidebar form{right:var(--space-3);top:7px}.app .sidebar form .logout{min-height:44px;margin:0}.app .workspace{margin-left:0}.app .topbar{height:44px;padding:0 var(--space-3)}.app .content{padding:var(--space-4) var(--space-3)}.app .heading{gap:var(--space-3);margin-bottom:var(--space-4)}.app .heading h1{font-size:var(--text-page)}.app .heading .eyebrow{font-size:var(--text-xs);letter-spacing:var(--tracking-label);margin-bottom:6px}.app .heading p{font-size:var(--text-body)}.app input:not([type=checkbox]):not([type=hidden]),.app select,.app textarea{font-size:var(--text-input)}.app .period input{width:168px}.app .stats{gap:var(--space-2)}.app .stats section{padding:var(--space-3);grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.app .stats strong{font-size:var(--text-stat);margin:0}.app .stats p{grid-column:1 / -1;margin-top:6px}.app .card-title,.app .team-panel,.app .agenda{padding:var(--space-3)}.app .team-panel>.card-title{padding:0 0 var(--space-3)}.app .filters{width:100%}.app .filters input{width:100%;min-width:0}.app .filters :is(select,.vit-select){width:120px;flex-shrink:0}.app th,.app td{padding:var(--space-2) var(--space-3)}.app .delete-toolbar{padding:var(--space-2) var(--space-3);gap:var(--space-2)}.app .delete-toolbar label{min-height:44px}.app .selection-checkbox,.app .delete-toolbar input[type=checkbox]{width:20px;height:20px}.app .calendar-grid{padding:0 6px var(--space-2);gap:2px}.app .calendar-grid .day{min-height:60px;padding:6px 2px}.app .day span{font-size:var(--text-xs);white-space:normal;overflow-wrap:anywhere}.app .calendar footer{padding:var(--space-3)}.app .overlay{padding:var(--space-2)}.app .modal{max-height:calc(100dvh - 16px)}.app .modal form,.app .booking-actions,.app .photo-panel{padding:var(--space-3)}.app .photo-panel form{padding:0}.app .form-grid label input,.app .form-grid label select,.app .form-grid label textarea{font-size:var(--text-input)}.app .currency-input span{font-size:var(--text-input)}.app .photo-grid img{height:120px}.app .date-picker{padding:var(--space-2)}.app .date-picker-grid{gap:2px}.app .date-picker-grid button{min-height:44px;padding:4px 0}.app .form-actions button{flex:1 1 auto}}@media(max-width:359px){.app .sidebar nav{grid-template-columns:repeat(3,minmax(0,1fr))}.app .form-grid{grid-template-columns:minmax(0,1fr)}.app .filters{flex-wrap:wrap}.app .filters :is(select,.vit-select){width:100%}.app .stats section{grid-template-columns:minmax(0,1fr)}.app .stats strong{justify-content:flex-start;margin-top:var(--space-2)}}.app .sidebar{overflow-y:auto}@media(max-width:700px){.app .consent{min-height:44px;align-items:center}}.app .form-grid>label:has(.date-picker){grid-column:1 / -1}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.treatment-list{position:relative}.treatment-toolbar,.treatment-result{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.app .treatment-toolbar{margin:var(--space-4) 0 var(--space-2)}.app .treatment-toolbar h3{margin:0}.treatment-search{display:flex;align-items:center;width:280px;max-width:100%;border:1px solid #dcd5ce;border-radius:7px;background:white}.app .treatment-search input{border:0;background:transparent;font-size:var(--text-input)}.app .treatment-search button{border:0;background:transparent;font-size:var(--icon-md);padding:4px 10px}.treatment-search:focus-within{outline:2px solid #987861;outline-offset:3px}.treatment-search input:focus-visible{outline:none}.app .treatment-result{margin-bottom:var(--space-2);font-size:var(--text-xs);color:var(--muted);flex-wrap:wrap}.app .treatment-result button{font-size:var(--text-button)}.treatment-column{display:flex;align-items:center;gap:2px}.app .treatment-column button{border:0;background:transparent;color:inherit;padding:4px 6px}.app .column-sort{display:flex;align-items:center;gap:6px;font-size:var(--text-table-header);text-transform:uppercase;letter-spacing:.6px}.app .treatment-empty{padding:var(--space-5);font-size:var(--text-body);color:var(--muted);white-space:normal}@media(max-width:700px){.app .treatment-toolbar{flex-wrap:wrap}.treatment-search{width:100%}.app .treatment-search input{font-size:var(--text-input)}.app .treatment-column button{min-width:44px;min-height:44px}}@media(max-width:700px){.app .treatment-table th:first-child,.app .treatment-table td:first-child{position:sticky;left:0;z-index:1;background:#fff;border-right:1px solid var(--line)}.app .treatment-table th:first-child{z-index:2;background:#fcfaf7}}.app .treatment-toolbar{flex-wrap:wrap}.app .treatment-toolbar h3{margin-right:auto}.app .treatment-toolbar>:is(select,.vit-select){width:140px;font-size:var(--text-input)}.app .treatment-pagination{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:var(--space-2);padding:var(--space-3) 0 0}.app .treatment-pagination button{font-size:var(--text-button);min-width:36px}.app .treatment-pagination button[aria-current=page]{background:var(--accent);border-color:var(--accent);color:#fff}.app .treatment-pagination button:disabled{cursor:not-allowed}.app .service-promo-label{color:var(--accent)}.app .promo-toggle{display:flex;align-items:center;gap:var(--space-2);min-height:44px}.app .promo-toggle input{width:20px;height:20px;margin:0;accent-color:var(--accent)}.app .promo-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);border:1px solid var(--line);border-radius:8px;padding:var(--space-3);background:var(--vl-bg-page)}.app .promo-summary b{display:block;font-size:var(--text-base);margin-top:4px;overflow-wrap:anywhere}@media(max-width:700px){.app .treatment-toolbar>:is(select,.vit-select){width:100%;font-size:var(--text-input)}.app .treatment-pagination{justify-content:flex-start}.app .treatment-pagination button{min-width:44px}.app .promo-summary{grid-template-columns:minmax(0,1fr)}}.app .business-summary .stats{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:700px){.app .business-summary .stats{grid-template-columns:minmax(0,1fr)}}.app .treatment-promo-cell{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.app .treatment-promo-cell small{display:inline;color:var(--muted)}.app .treatment-promo-cell button{white-space:nowrap}.app .promo-switch{position:relative;display:inline-flex;flex:0 0 auto;width:34px;height:20px;margin:0}.app .promo-switch input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer;z-index:1}.app .promo-switch span{display:block;width:34px;height:20px;border-radius:20px;background:#d5cec7;transition:background .15s}.app .promo-switch span::after{content:"";display:block;width:14px;height:14px;margin:3px;border-radius:50%;background:white;transition:transform .15s}.app .promo-switch input:checked+span{background:var(--accent)}.app .promo-switch input:checked+span::after{transform:translateX(14px)}.app .promo-switch input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}.app .promo-switch input:disabled+span{opacity:.55}.app .treatment-promo-editor-row>td{padding:0;background:#faf8f5}.app .treatment-promo-editor{width:min(100%,680px);padding:16px;white-space:normal}.app .treatment-promo-editor>strong{display:block;margin-bottom:12px;font-size:var(--text-base)}.app .promo-reference{display:flex;gap:10px;align-items:baseline;margin-bottom:12px}.app .promo-reference small{color:var(--muted)}.app .promo-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px}.app .promo-inputs label{display:block;font-size:var(--text-label)}.app .promo-inputs input,.app .promo-inputs select{width:100%;margin-top:6px}.app .promo-inputs .currency-input input{border:0;margin:0;min-width:0}.app .treatment-promo-editor .form-actions{margin-top:12px}.app .treatment-feedback{margin:8px 0}@media(max-width:700px){.app .treatment-table{min-width:710px}.app .treatment-promo-cell{min-width:155px}.app .promo-inputs{grid-template-columns:1fr}}.app .treatment-table{table-layout:fixed;width:100%}.app .treatment-number-col{width:3%}.app .treatment-name-col{width:27%}.app .treatment-price-col{width:18%}.app .treatment-promo-col{width:28%}.app .treatment-status-col{width:12%}.app .treatment-action-col{width:8%}.app .treatment-check-col{width:4%}.app .treatment-row-number{color:var(--muted);font-variant-numeric:tabular-nums}.app .treatment-table th,.app .treatment-table td{overflow:hidden}.app .treatment-table td:has(.treatment-promo-cell){white-space:normal}.app .treatment-selection{display:flex;align-items:center;gap:12px;margin:0 0 8px;font-size:var(--text-xs)}.app .treatment-selection label{display:inline-flex;align-items:center;gap:6px}.app .treatment-selection input,.app .treatment-table .selection-checkbox{width:16px;height:16px;margin:0;accent-color:var(--accent)}.app .treatment-selection button{padding:7px 10px}@media(max-width:700px){.app .treatment-table{min-width:850px}.app .treatment-selection{flex-wrap:wrap}}.app .treatment-table{min-width:964px}.app .treatment-number-col{width:44px}.app .treatment-name-col{width:auto}.app .treatment-price-col{width:156px}.app .treatment-promo-col{width:264px}.app .treatment-status-col{width:138px}.app .treatment-action-col{width:76px}.app .treatment-check-col{width:44px}.app .treatment-table th,.app .treatment-table td{padding:8px 12px;vertical-align:middle}.app .treatment-table td:nth-child(2){white-space:normal;overflow-wrap:anywhere}.app .treatment-row-number{text-align:center}.app .treatment-table td:nth-child(3){font-variant-numeric:tabular-nums}.app .treatment-promo-cell{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:8px;min-width:0}.app .treatment-promo-cell small{margin:0;line-height:1.4;overflow-wrap:anywhere}.app .treatment-promo-cell small[role=status]{grid-column:2 / -1}.app .treatment-promo-cell button{font-size:var(--text-button);padding:6px 8px}.app .treatment-table .promo-switch{align-items:center;height:var(--control-height)}.app .promo-switch input{width:100%;height:100%}.app .treatment-table td:last-child,.app .treatment-table th:last-child{text-align:center}.app .treatment-list>.treatment-promo-editor{width:100%;margin-top:12px;border:1px solid var(--line);border-radius:8px;background:#faf8f5}.app .treatment-promo-editor>strong{overflow-wrap:anywhere}.app .treatment-promo-editor .promo-reference{flex-wrap:wrap}@media(max-width:700px){.app .treatment-toolbar{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.app .treatment-toolbar h3{margin:0}.app .treatment-table .selection-checkbox{width:20px;height:20px}.app .treatment-selection{gap:8px 12px}.app .treatment-list>.treatment-promo-editor{padding:12px}}.global-toast-layer{position:fixed;z-index:2147483647;bottom:calc(20px + env(safe-area-inset-bottom,0px));left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100vw - 24px);pointer-events:none}.global-toast{display:flex;align-items:center;gap:8px;width:max-content;max-width:100%;box-sizing:border-box;padding:10px 14px;border:1px solid var(--line);border-radius:10px;background:var(--vl-bg-surface);color:var(--ink);font-size:var(--text-toast);line-height:1.4;box-shadow:0 6px 24px #382a1e20;animation:toast-enter 180ms ease-out both}.global-toast-icon{flex:0 0 18px;width:18px;height:18px}.global-toast-success .global-toast-icon{color:#577044}.global-toast-error,.global-toast-error .global-toast-icon{color:#E85D75}.global-toast-validation .global-toast-icon{color:var(--accent)}.global-toast-info .global-toast-icon{color:var(--accent)}.global-toast.is-leaving{animation:toast-exit 200ms ease-in both}@keyframes toast-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-exit{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(4px)}}@media(max-width:700px){.global-toast-layer{bottom:calc(16px + env(safe-area-inset-bottom,0px))}}@media(prefers-reduced-motion:reduce){.global-toast,.global-toast.is-leaving{animation:none}.global-toast.is-leaving{opacity:0}}.app .team-table{width:100%;min-width:980px}.app .team-table th,.app .team-table td{padding:10px 12px;vertical-align:middle}.app .team-table td:first-child,.app .team-table td:nth-child(2){white-space:normal;overflow-wrap:anywhere;min-width:140px}.app .team-presence{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-badge)}.app .team-presence i{width:7px;height:7px;border-radius:50%;background:currentColor}.app .team-presence.is-online{color:#16A34A}.app .team-presence.is-offline{color:#E85D75}.app .team-actions{display:flex;gap:8px}.app .team-delete{color:#a03e30}.app .payment-unpaid{color:#E85D75}.app .payment-dp{color:#D97706}.app .heading h1{overflow-wrap:anywhere}.app .heading p,.app .form-hint{font-size:var(--text-body)}.app .form-grid label{min-width:0}.app .team-table td:first-child,.app .team-table td:nth-child(2){max-width:280px}.app .treatment-table td:nth-child(3){white-space:normal}.app .treatment-table td:nth-child(3) b{display:block}.app .modal h2,.app .treatment-promo-editor>strong{overflow-wrap:anywhere}.app .appointment>div{min-width:0}.app .appointment strong{overflow-wrap:anywhere}.app .global-toast{font-size:var(--text-toast)}.login-art{padding:32px}.login-art .arch{height:250px}.login-form{padding:clamp(24px,6vw,72px)}.login-fields input{font-size:var(--text-input);min-height:44px}.login-fields label{font-size:var(--text-label)}.login-form small{font-size:var(--text-xs)}.setup-panel{width:calc(100% - 24px)}@media(max-width:1150px){.app .schedule-layout{grid-template-columns:minmax(0,1fr)}.app .agenda-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.app .appointment{max-width:none}}@media(max-width:700px){.app .form-grid{grid-template-columns:minmax(0,1fr)}.app .agenda-list{grid-template-columns:minmax(0,1fr)}.app .calendar-grid .day{min-height:76px}.app .sidebar nav button{font-size:var(--text-menu)}.app .form-grid input:not([type=checkbox]),.app .form-grid select,.app .form-grid textarea,.app .team-form input:not([type=checkbox]),.app .team-form select,.app .team-form textarea,.app .promo-inputs input,.app .promo-inputs select,.app .treatment-search input{font-size:var(--text-input)}.app .calendar footer{flex-direction:column}.app .team-actions{flex-wrap:wrap}.login-art{padding:24px}.login-art h1{margin:24px 0 0}.login-form{padding:24px}.app .heading .primary{min-height:44px}}.app .selected-treatment-name{font-size:var(--text-xs);margin-top:6px;white-space:normal;overflow-wrap:anywhere}.app .stats strong{min-width:0;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}@media(max-width:700px){.app .stats section{grid-template-columns:repeat(2,minmax(0,1fr))}}.app .treatment-table th:first-child,.app .treatment-table td:first-child,.app .treatment-table th:last-child,.app .treatment-table td:last-child{padding-left:8px;padding-right:8px}.promo-modal-overlay{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(30,24,20,.35);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:promo-fade .18s ease-out}.promo-modal{width:100%;max-width:580px;max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain;background:var(--vl-bg-surface);border-radius:14px;padding:24px;box-shadow:0 20px 60px rgba(35,25,20,.18);animation:promo-scale .18s ease-out;min-width:0}.promo-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.promo-modal-header h2{font-size:18px;font-weight:700;margin:0 0 4px}.promo-modal-header p{font-size:13px;font-weight:600;margin:0;overflow-wrap:anywhere}.promo-modal-header button{min-width:40px;min-height:40px;padding:6px}.promo-modal .treatment-promo-editor{margin:0;padding:0;border:0;background:none}.promo-modal fieldset{border:0;padding:0;margin:0;min-width:0}.promo-modal .promo-reference{margin-bottom:16px}.promo-modal .promo-reference b{font-size:18px;font-weight:700}.promo-modal .promo-summary b{font-size:13px;font-weight:700;overflow-wrap:anywhere}.promo-modal .promo-summary small{font-size:12px}.promo-modal .form-actions{position:sticky;bottom:-24px;background:var(--vl-bg-surface);padding:12px 0 0;margin-top:12px}.promo-sheet-handle{display:none}.promo-modal input,.promo-modal select{min-height:40px}@keyframes promo-fade{from{opacity:0}to{opacity:1}}@keyframes promo-scale{from{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes promo-up{from{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:767px){.promo-modal-overlay{align-items:flex-end;padding:0}.promo-modal{max-width:none;max-height:90dvh;border-radius:18px 18px 0 0;padding:12px 16px calc(20px + env(safe-area-inset-bottom));animation:promo-up .18s ease-out}.promo-sheet-handle{display:block;width:36px;height:4px;border-radius:4px;background:var(--line);margin:0 auto 16px}.promo-modal .promo-inputs{grid-template-columns:1fr}.promo-modal input,.promo-modal select{font-size:16px;min-height:44px}.promo-modal .form-actions{bottom:calc(-20px - env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom)}.promo-modal .form-actions button{min-height:44px}}@media(prefers-reduced-motion:reduce){.promo-modal,.promo-modal-overlay{animation:none}}.app .promo-modal .promo-inputs input,.app .promo-modal .promo-inputs select{font-size:14px}@media(max-width:767px){.app .promo-modal .promo-inputs input,.app .promo-modal .promo-inputs select{font-size:16px}}.promo-modal .currency-input input:focus-visible{outline:none}.app .activity-controls{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:16px 0;min-width:0}.app .activity-dates{display:flex;gap:6px;flex-wrap:wrap;min-width:0}.app .activity-dates button{white-space:nowrap;padding:8px 12px;min-height:38px}.app .activity-dates button[aria-pressed=true],.app .activity-pagination button[aria-current=page]{background:var(--accent);border-color:var(--accent);color:#fff}.app .activity-controls label{width:240px;max-width:100%;flex-shrink:0;font-size:var(--text-label)}.app .activity-controls :is(select,.vit-select){margin-top:6px;width:100%}.app .activity-result{margin:12px 0;font-size:var(--text-xs)}.app .activity-day{margin-top:16px}.app .activity-day h3{margin:0 0 10px;font-size:var(--text-card)}.app .activity-day h3 span{font-size:var(--text-xs);font-weight:400;color:var(--muted)}.app .activity-panel .audit-item{margin:8px 0;padding:10px 12px;min-width:0}.app .activity-panel summary{overflow-wrap:anywhere}.app .activity-panel td{white-space:normal;overflow-wrap:anywhere;max-width:300px}.app .activity-pagination{display:flex;gap:6px;align-items:center;justify-content:flex-end;flex-wrap:wrap;margin-top:16px}.app .activity-pagination button{padding:8px 10px;min-height:38px}.app .activity-empty{padding:18px 0}@media(max-width:767px){.app .activity-controls{display:block}.app .activity-dates{flex-wrap:nowrap;overflow-x:auto;padding:2px 2px 8px}.app .activity-controls label{display:block;width:100%;margin-top:12px}.app .activity-pagination{justify-content:center}.app .activity-pagination button{min-height:44px}.app .activity-panel .audit-item{padding:10px}.app .activity-panel .card-title{flex-wrap:wrap}}.app .settings-modal .team-form{border:0;margin:0;padding:0;background:none}.app .settings-modal .team-form fieldset{padding:0;margin:0;border:0;min-width:0}.app .settings-modal .team-form .currency-input input:focus-visible{outline:none}.app .settings-modal .team-form input,.app .settings-modal .team-form select{font-size:14px;min-height:40px}@media(max-width:767px){.app .settings-modal .team-form input,.app .settings-modal .team-form select{font-size:16px;min-height:44px}.app .settings-modal .form-grid{grid-template-columns:1fr}}.app .settings-modal .team-form .currency-input input{border:0;margin:0;background:transparent;min-width:0}.booking-modal-body{padding:0 20px 20px}.booking-header-detail{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:7px}.booking-header-detail strong{font-size:14px;font-weight:500;overflow-wrap:anywhere}.booking-header-detail .badge{background:#eee7dd;color:#765744}.booking-unlock{display:flex;align-items:end;gap:10px;padding:12px 0 16px;border-bottom:1px solid var(--vl-border);margin-bottom:16px}.booking-unlock label{flex:1;min-width:0;font-size:12px}.booking-unlock input{margin-top:5px;max-width:100%;letter-spacing:normal;font-family:inherit;font-weight:400}.booking-unlock button{flex:none;min-height:40px}.booking-edit-indicator{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#eef2e8;color:#52684e;border-radius:9px;padding:10px 12px;margin:12px 0 16px}.booking-information{display:grid;grid-template-columns:1fr 1fr;gap:12px}.booking-information section{padding:13px;border:1px solid var(--vl-border);border-radius:10px;min-width:0;background:var(--vl-bg-page)}.booking-information h3{font-size:12px;text-transform:uppercase;letter-spacing:.7px;margin:0 0 12px;color:#86796c}.booking-information dl{display:grid;grid-template-columns:minmax(60px,.8fr) minmax(0,1.2fr);gap:7px 10px;margin:0;font-size:12px;line-height:1.6}.booking-information dt{color:#8c8177}.booking-information dd{margin:0;overflow-wrap:anywhere}.booking-information .badge{margin-top:10px}.booking-whatsapp{margin-top:10px;min-height:36px}.booking-extra{border:1px solid var(--vl-border);border-radius:9px;margin-top:14px;padding:11px 13px;min-width:0}.booking-extra summary{cursor:pointer;font-weight:500;min-height:24px;line-height:24px}.booking-extra[open]>summary{margin-bottom:12px}.booking-note{white-space:pre-wrap;overflow-wrap:anywhere}.booking-extra .photo-panel{padding:0;border:0;margin-top:12px}.booking-extra .photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-modal-body .form-grid{min-width:0}.booking-modal-body .form-actions{position:sticky;bottom:-20px;background:#fff;padding:14px 0 6px;margin-top:14px;z-index:2}.booking-summary-heading{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.booking-summary-heading h3{margin:0}.booking-draft-summary{margin-top:16px}.booking-location-history{background:#faf7f2;padding:10px;border-radius:8px;font-size:12px}.booking-modal-body .booking-extra textarea{margin-top:6px}.booking-extra h3{font-size:13px;margin-top:0}@media(max-width:767px){.booking-modal-body{padding:0 16px 20px}.booking-information{grid-template-columns:1fr;gap:10px}.booking-information dl{font-size:13px;grid-template-columns:minmax(80px,.8fr) minmax(0,1.2fr)}.booking-unlock button,.booking-edit-indicator button{min-height:44px}.booking-modal-body .form-actions button{min-height:44px}.booking-modal-body .booking-time-slot{min-height:36px}.booking-header-detail strong{font-size:14px}.booking-extra .photo-grid{grid-template-columns:1fr}.booking-whatsapp{min-height:40px}}.booking-detail-modal .booking-modal-body{padding:0}.booking-detail-modal .booking-unlock{padding-top:0}.booking-modal-body input,.booking-modal-body select,.booking-modal-body textarea{font-size:14px}.booking-detail-modal .form-actions{bottom:-24px}@media(min-width:768px){.booking-detail-modal{max-width:720px}}@media(max-width:767px){.booking-modal-body input,.booking-modal-body select,.booking-modal-body textarea{font-size:16px;min-height:44px}.booking-detail-modal .form-actions{bottom:calc(-20px - env(safe-area-inset-bottom))}}.app .discard-overlay{position:fixed;inset:0;z-index:10;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(49,40,33,.32);backdrop-filter:blur(3px)}.app .discard-dialog{width:min(100%,420px);box-sizing:border-box;padding:28px;background:var(--vl-bg-surface);border:1px solid #e9dfd6;border-radius:20px;box-shadow:0 24px 80px rgba(49,40,33,.2);animation:discard-enter .18s ease-out}.app .discard-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:#f1e9e0;color:#795c48;border-radius:14px;margin-bottom:18px}.app .discard-icon svg{width:25px;height:25px}.app .discard-dialog h2{font-size:19px;line-height:1.4;margin:0 0 10px;font-weight:600}.app .discard-dialog p{font-size:13px;line-height:1.75;color:#85796f;margin:0 0 24px}.app .discard-actions{display:flex;gap:10px;flex-wrap:wrap}.app .discard-actions button{flex:1;white-space:nowrap;min-height:44px;font-size:12px;border-radius:10px}.app .discard-button{color:#966458;background:transparent;border-color:#e7d7cf}@keyframes discard-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:400px){.app .discard-dialog{padding:24px}.app .discard-actions{flex-direction:column}}@media(prefers-reduced-motion:reduce){.app .discard-dialog{animation:none}}:root{--muted:var(--vl-text-secondary);--surface:var(--vl-bg-surface);--surface-soft:var(--vl-bg-page);--border-subtle:var(--vl-border);--radius-control:8px;--radius-card:12px;--radius-dialog:20px;--shadow-dialog:0 20px 60px rgba(52,46,43,.16);--focus-ring:#987861;--state-danger:#a03e30;--space-6:24px;--space-7:32px}.app .card{border-radius:var(--radius-card);border-color:var(--vl-border);background:var(--vl-bg-surface)}.app button,.app input,.app select,.app textarea{border-radius:var(--radius-control)}.app .promo-modal,.app .discard-dialog{border-radius:var(--radius-dialog);box-shadow:var(--shadow-dialog)}.app button:disabled{cursor:not-allowed}.app :focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.app .ui-icon{display:inline-block;width:18px;height:18px;flex:0 0 18px;vertical-align:middle}.app .sidebar nav button{align-items:center;gap:10px}.app .sidebar .eyebrow,.app .topbar,.app .profile small,.app .logout,.app .heading p,.app .day-label,.app .calendar footer,.app .day:not(.chosen) span,.app .table-note{color:var(--muted)}.app .day span.calendar-day-compact{display:none}.app .calendar footer{flex-wrap:wrap;line-height:1.6}.app .calendar footer>span:first-child{max-width:100%}.app .empty .ui-icon,.app .agenda-empty .ui-icon{width:24px;height:24px;color:var(--accent)}.app .form-grid label>small{margin-top:var(--space-2);font-weight:var(--weight-regular)}.app .retouch-help{font-size:var(--text-xs);margin-top:var(--space-2)}.app .booking-information dt{color:var(--muted)}.app .booking-information dd,.app .heading p{overflow-wrap:anywhere}.app .booking-information dl{grid-template-columns:minmax(100px,.85fr) minmax(0,1.15fr)}.app .filters :is(select,.vit-select){width:180px}.app .filters input{min-width:0}.app .photo-panel>.promo-modal-overlay{z-index:120}@media(max-width:700px){.app .sidebar nav button{min-height:44px}.app .filters{flex-wrap:wrap}.app .filters input,.app .filters :is(select,.vit-select){width:100%}.app .form-actions{gap:var(--space-2);flex-wrap:wrap}.app .form-actions button{min-height:44px}.app .calendar-grid .day{min-height:48px;display:flex;align-items:center;justify-content:center;flex-direction:column}.app .day .calendar-day-copy{display:none}.app .day span.calendar-day-compact{display:block;font-size:11px;line-height:1;margin-top:4px;min-height:11px}.app .calendar footer{font-size:11px}.app .table-wrap{overscroll-behavior-x:contain}.app .treatment-toolbar :is(select,.vit-select){max-width:100%}}:root{--status-rose-text:#a92f4b;--status-amber-text:#925000;--status-green-text:#346a32}.app .payment-unpaid{color:var(--status-rose-text)}.app .payment-dp{color:var(--status-amber-text)}.app .payment-paid{color:var(--status-green-text)}.app .team-presence.is-online{color:#147d3b}.app .team-presence.is-online i{background:#16A34A}.app .team-presence.is-offline{color:var(--status-rose-text)}.app .team-presence.is-offline i{background:#E85D75}.app .treatment-table th{white-space:normal}.app .booking-sync-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.app .studio-picker{position:relative;min-width:0}.app .studio-picker>label{display:block;margin-bottom:6px;color:var(--accent)}.app .studio-picker>input{width:100%;min-height:44px;padding:10px 12px;border:1px solid #dfcfc2;border-radius:11px;background:#fffdfa}.app .studio-options{position:fixed;z-index:1400;box-sizing:border-box;overflow:auto;background:var(--vl-bg-surface);border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 28px #342e2b24;padding:4px}.app .studio-options button{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;text-align:left;border:0;padding:10px 12px;min-height:44px}.app .studio-options button.active,.app .studio-options button[aria-selected=true]{background:var(--light)}.app .studio-options button[aria-selected=true]::after{content:"\2713";flex:none}.app .studio-options button:hover{background:#e8d6c6;color:#704b38}.app .studio-options button{transition:background-color 180ms ease,color 180ms ease}.app .studio-no-result{padding:12px;color:var(--muted)}.app .treatment-row-inactive,.app .studio-row-inactive{background:#f5f4f2;color:#938d89}.app .treatment-row-inactive td,.app .studio-row-inactive td{border-color:#ece9e6}.app .treatment-row-inactive button:disabled{opacity:.48;cursor:not-allowed}.app .studio-management{margin-top:24px;padding-top:18px;border-top:1px solid var(--line,#e9e2db)}.app .studio-management .card-title{align-items:center}.app .studio-management td:last-child{white-space:nowrap}@media(max-width:767px){.app.centered-settings-overlay{align-items:center;padding:16px}.app .centered-settings-modal{width:100%;max-width:580px;max-height:calc(100dvh - 32px);border-radius:16px;padding:20px 16px;animation:promo-fade .18s ease-out}.app .centered-settings-modal .form-actions{bottom:-20px;padding-bottom:0}}.app .treatment-table .catalog-status-heading{text-align:left;white-space:nowrap}.app .treatment-table .catalog-status-control{display:inline-flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:8px;min-width:max-content;white-space:nowrap;vertical-align:middle}.app .treatment-table .catalog-status-control .status-toggle{display:inline-flex;align-items:center;flex:0 0 34px;width:34px;height:20px;margin:0}.app .treatment-table .catalog-status-control .status-label{display:inline-block;margin:0;line-height:20px;white-space:nowrap}.app .free-retouch-page{min-width:0}.app .free-retouch-page .card-title p{margin:4px 0 0;color:var(--muted);font-size:12px}.app .free-retouch-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0}.app .free-retouch-stats button{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:8px;min-height:82px;padding:12px 14px;background:#faf7f3;border:1px solid var(--vl-border)}.app .free-retouch-stats strong{font-size:23px;line-height:1}.app .free-retouch-stats span{font-size:12px;color:var(--muted)}.app .free-retouch-controls{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 16px}.app .free-retouch-controls input{flex:1;min-width:190px}.app .free-retouch-controls :is(select,.vit-select){min-width:180px}.app .free-retouch-table{overflow-x:auto}.app .free-retouch-table table{width:100%;border-collapse:collapse}.app .free-retouch-table th,.app .free-retouch-table td{text-align:left;padding:10px 8px;border-bottom:1px solid #eee6de;font-size:12px;vertical-align:middle}.app .free-retouch-table th{color:#83776e;font-weight:600;white-space:nowrap}.app .free-retouch-table td b{font-weight:600}.app .free-retouch-table button,.app .free-retouch-card button{min-height:40px;white-space:nowrap}.app .retouch-countdown,.app .retouch-pill{display:inline-block;padding:4px 8px;border-radius:999px;background:#f0e9e2;color:#6d5141;font-size:11px;white-space:nowrap}.app .retouch-pill.warn{background:#fff0de;color:#875519}.app .retouch-pill.ok{background:#eaf2e8;color:#3d6845}.app .free-retouch-empty{padding:28px 16px;border:1px dashed #e7dbcf;border-radius:12px;background:#fdfbf8;color:var(--muted);text-align:center;font-size:13px}.app .free-retouch-cards{display:none}.app .free-retouch-pagination{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:16px;font-size:12px;color:var(--muted)}.app .free-retouch-pagination button{min-height:38px}.app .free-retouch-modal{max-width:620px}.app .free-retouch-modal-body{display:grid;gap:14px}.app .free-retouch-profile{display:grid;gap:4px;padding-bottom:12px;border-bottom:1px solid #ece3da}.app .free-retouch-profile strong{font-size:16px}.app .free-retouch-profile span{color:var(--muted);font-size:12px;overflow-wrap:anywhere}.app .free-retouch-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.app .free-retouch-details>div{display:grid;gap:5px;padding:10px;border:1px solid #eee6de;border-radius:10px;background:var(--vl-bg-page)}.app .free-retouch-details small{color:var(--muted)}.app .free-retouch-details b{font-size:13px}.app .free-retouch-warning{padding:12px;border-radius:9px;background:#fff2e3;color:#79521d;font-size:12px;margin:0}.app .free-retouch-confirmation{margin:0;font-size:12px}.app .free-retouch-modal form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.app .free-retouch-modal form label{min-width:0;font-size:12px}.app .free-retouch-modal form label:first-child{grid-column:1/-1}.app .free-retouch-modal form input,.app .free-retouch-modal form select{width:100%;margin-top:5px}.app .free-retouch-modal form p,.app .free-retouch-modal .form-actions{grid-column:1/-1}.app .free-retouch-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.app .free-retouch-actions button{min-height:42px}.app .free-retouch-modal .form-actions{margin-bottom:0}@media(max-width:1000px){.app .free-retouch-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.app .free-retouch-table{display:none}.app .free-retouch-cards{display:grid;gap:10px}.app .free-retouch-card{display:grid;grid-template-columns:1fr auto;gap:10px;padding:14px;border:1px solid var(--vl-border);border-radius:12px;background:var(--vl-bg-surface);border-color:var(--vl-border)}.app .free-retouch-card>div:first-child{grid-column:1/-1;display:grid;gap:4px}.app .free-retouch-card small{color:var(--muted)}.app .free-retouch-card button{grid-column:1/-1;min-height:44px}.app .free-retouch-controls input,.app .free-retouch-controls :is(select,.vit-select){width:100%;min-height:44px}.app .free-retouch-modal .free-retouch-modal-body{max-height:calc(100dvh - 155px);overflow-y:auto}.app .free-retouch-actions button{flex:1 1 45%;min-height:44px}.app .free-retouch-pagination{justify-content:center;flex-wrap:wrap}.app .free-retouch-pagination button{min-height:44px}}@media(max-width:390px){.app .free-retouch-stats{gap:7px}.app .free-retouch-stats button{padding:10px;min-height:80px}.app .free-retouch-stats span{font-size:11px}.app .free-retouch-modal form{grid-template-columns:1fr}.app .free-retouch-modal form label:first-child{grid-column:auto}.app .free-retouch-modal form p,.app .free-retouch-modal .form-actions{grid-column:auto}}.app .free-retouch-page{padding:24px}.app .free-retouch-stats{margin:0 0 18px}.app .free-retouch-controls{flex-wrap:nowrap}.app .free-retouch-controls input{width:auto;min-width:0;flex:1 1 320px}.app .free-retouch-controls :is(select,.vit-select){width:220px;min-width:0;flex:0 0 220px}.app .free-retouch-pending{padding:12px 14px;border:1px solid #dfd6c8;border-radius:9px;background:#f7f2e9;color:#6d5947;font-size:13px;line-height:1.6}.app .free-retouch-table td small{margin-top:3px;white-space:normal;font-size:11px}@media(max-width:700px){.app .free-retouch-page{padding:16px}.app .free-retouch-controls{flex-wrap:wrap}.app .free-retouch-controls input,.app .free-retouch-controls :is(select,.vit-select){width:100%;flex:1 1 100%}}.app .free-retouch-page{padding:32px}.app .free-retouch-stats{gap:16px;margin-bottom:22px}.app .free-retouch-stats button{padding:17px 18px;min-height:92px}.app .free-retouch-controls{gap:14px;margin-bottom:22px}.app .free-retouch-table{border:1px solid var(--line);border-radius:10px}.app .free-retouch-table th,.app .free-retouch-table td{padding:14px 16px}.app .free-retouch-pagination{padding-top:18px}@media(max-width:700px){.app .free-retouch-page{padding:18px}.app .free-retouch-stats{gap:10px}.app .free-retouch-controls{gap:10px}.app .free-retouch-stats button{padding:14px}}.app .booking-payment-badges{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.app .booking-retouch-badge{display:inline-flex;align-items:center;background:#EDE5F5;color:#74528D;box-shadow:inset 0 0 0 1px #DCCBE9}.app .free-retouch-stats button small{color:var(--muted);font-size:11px;line-height:1.4}.app .free-retouch-pending-list{margin-top:24px;padding:20px;border:1px solid var(--line);border-radius:12px;background:#fbf9f6}.app .free-retouch-pending-list h2{font-size:15px}.app .free-retouch-pending-list h2 span{color:var(--muted)}.app .free-retouch-pending-list p{font-size:12px;margin-top:5px}.app .free-retouch-pending-list ul{list-style:none;padding:0;margin:14px 0 0}.app .free-retouch-pending-list li{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 0;border-top:1px solid var(--line)}.app .free-retouch-pending-list li b{font-size:13px}.app .free-retouch-pending-list li button{white-space:nowrap}.app .free-retouch-modal form .retouch-date-field{grid-column:1/-1;min-width:0}.app .retouch-date-picker{padding:14px;border:1px solid #e9e0d8;border-radius:12px;background:#fffdfa}.app .retouch-date-header,.app .retouch-date-header>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.app .retouch-date-header b{font-size:13px}.app .retouch-date-header>div span{min-width:110px;text-align:center;font-size:12px}.app .retouch-date-header button{min-width:34px;min-height:34px;padding:4px}.app .retouch-date-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin-top:12px}.app .retouch-date-grid small{text-align:center}.app .retouch-date-grid button,.app .retouch-time-picker button{min-width:0;min-height:38px;padding:5px;border-radius:7px;font-size:12px}.app .retouch-date-grid .is-open,.app .retouch-time-picker .is-open,.app .retouch-date-legend .is-open{background:#e8f0e7;color:#426b4b;border-color:#bfd3c0}.app .retouch-date-grid .is-limited,.app .retouch-date-legend .is-limited{background:#f5ebd9;color:#886331;border-color:#e6d5b4}.app .retouch-date-grid .is-full,.app .retouch-time-picker .is-full,.app .retouch-date-legend .is-full{background:#faeceb;color:#a97470;border-color:#f0d7d4}.app .retouch-date-grid .is-selected,.app .retouch-time-picker .is-selected{background:#765847;color:white;border-color:#765847}.app .retouch-date-legend{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}.app .retouch-date-legend span{border:1px solid;padding:4px 7px;border-radius:6px;font-size:11px}.app .retouch-time-picker{margin-top:14px}.app .retouch-time-picker strong{display:block;font-size:12px;margin-bottom:9px}.app .retouch-time-picker>div{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px}@media(max-width:700px){.app .retouch-date-picker{padding:10px}.app .retouch-date-grid{gap:3px}.app .retouch-date-grid button{min-height:40px}.app .retouch-time-picker>div{grid-template-columns:repeat(4,minmax(0,1fr))}}.app .free-retouch-modal form .retouch-target-field{position:relative;min-width:0}.app .free-retouch-modal form .retouch-target-trigger{width:100%;min-height:44px;margin-top:5px;padding:9px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;color:var(--ink);background:#fff;border:1px solid #ddd2c8;border-radius:9px}.app .retouch-target-trigger .ui-icon{width:18px;height:18px;flex:none;color:var(--vl-mocha-600)}.app .retouch-target-popover{position:fixed;z-index:1300;max-height:calc(100dvh - 24px);overflow-y:auto;padding:14px;background:#fffdfa;border:1px solid #e7dcd2;border-radius:14px;box-shadow:0 16px 42px rgba(45,31,22,.19);color:#332923}.app .retouch-target-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.app .retouch-target-header strong{font-size:14px;text-align:center;text-transform:capitalize}.app .retouch-target-header button{width:36px;height:36px;padding:0;border-radius:9px;font-size:22px;color:var(--vl-mocha-600)}.app .retouch-target-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.app .retouch-target-grid span{text-align:center;font-size:11px;color:#897b70;padding:7px 0}.app .retouch-target-grid button{min-width:0;min-height:40px;padding:0;border:1px solid transparent;border-radius:9px;background:transparent;font-size:13px;color:#332923}.app .retouch-target-grid button:focus-visible{background:#f0e8e0;border-color:#d6c4b5}.app .retouch-target-grid button:disabled{background:#f5f3f1;color:#aaa29c;cursor:not-allowed}.app .retouch-target-grid button.is-today{outline:1px solid #9a7964;outline-offset:-2px}.app .retouch-target-grid button.is-selected{background:#765847;border-color:#765847;color:#fff}.app .retouch-target-popover>small{display:block;margin-top:12px;color:#897b70;font-size:11px;line-height:1.4}@media(max-width:420px){.app .retouch-target-popover{padding:11px}.app .retouch-target-grid{gap:2px}.app .retouch-target-grid button{min-height:38px}}.app .free-retouch-steps{display:grid;gap:10px}.app .free-retouch-step{display:grid;gap:12px;padding:14px;border:1px solid #e9e0d8;border-radius:12px;background:#fbf8f4}.app .free-retouch-step span{font-size:10px;font-weight:700;letter-spacing:.08em;color:#94745f}.app .free-retouch-step h3{font-size:14px;margin:4px 0 5px;color:#352a24}.app .free-retouch-step p{font-size:12px;line-height:1.5;color:#75675c;margin:0}.app .free-retouch-step-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.app .free-retouch-step-actions button{min-height:40px}.app .free-retouch-step-actions small{font-size:11px;line-height:1.4;color:#816e60}.app .free-retouch-form-help{padding:11px 12px;margin:0;border-radius:9px;background:#f7f2eb;color:#6c5545;font-size:12px;line-height:1.5}@media(max-width:420px){.app .free-retouch-step-actions button{flex:1 1 100%}}.app .free-retouch-step-actions button:disabled{opacity:.48;cursor:not-allowed;background:#f0ece8;color:var(--vl-text-secondary)}.app .free-retouch-complete-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px!important;padding:7px 12px!important;white-space:nowrap}.app .free-retouch-complete-button span{font-size:14px;color:inherit;letter-spacing:0}.app .free-retouch-confirm-modal{max-width:400px}.app .free-retouch-confirm-modal>p{font-size:13px;line-height:1.5;color:#625349}.app .free-retouch-confirm-modal .form-actions{display:flex;justify-content:flex-end;gap:8px}.app .free-retouch-modal .free-retouch-details{grid-template-columns:repeat(3,minmax(0,1fr))}.app .free-retouch-modal .retouch-target-countdown{color:#795940;font-weight:600}.app .free-retouch-current-action{background:#fbf8f4}@media(max-width:480px){.app .free-retouch-modal .free-retouch-details{grid-template-columns:1fr 1fr}.app .free-retouch-modal .free-retouch-details>div:first-child{grid-column:1/-1}.app .free-retouch-current-action .free-retouch-step-actions button.primary{flex:1 1 100%}}.app .retouch-time-picker button.is-selected,.app .retouch-time-picker button.is-selected.is-open{background:#765847;color:#fff;border-color:#765847}.app .retouch-time-picker button.is-preview:not(.is-selected){background:#b79c89;color:#fff;border-color:#a18470}.app .retouch-range-summary,.app .retouch-range-error{display:block;margin-top:9px;font-size:12px;line-height:1.5}.app .retouch-range-summary{color:#765847}.app .retouch-range-error{color:#a3544e}.app .retouch-progress{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:14px 0;padding:0;min-width:0}.app .retouch-progress li{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0;text-align:center;color:#9b928a;font-size:11px;line-height:1.25}.app .retouch-progress li:not(:last-child)::after{content:"";position:absolute;top:11px;left:calc(50% + 14px);width:calc(100% - 28px);height:1px;background:#e2d9d1}.app .retouch-progress li.is-done:not(:last-child)::after{background:var(--vl-mocha-600)}.app .retouch-progress-dot{position:relative;z-index:1;display:grid;place-items:center;width:24px;height:24px;flex:none;border:1px solid #d9d1ca;border-radius:50%;background:#fffdfa;color:#fff;font-size:14px;font-weight:700}.app .retouch-progress .is-done .retouch-progress-dot{background:var(--vl-mocha-600);border-color:var(--vl-mocha-600)}.app .retouch-progress .is-current .retouch-progress-dot{border:2px solid #765847}.app .retouch-progress .is-current .retouch-progress-label,.app .retouch-progress .is-done .retouch-progress-label{color:var(--vl-mocha-600)}@media(max-width:420px){.app .retouch-progress li{font-size:10px}.app .retouch-progress-label{overflow-wrap:anywhere}}.app .wa-template-management{margin-top:24px;border-top:1px solid var(--line);padding-top:8px;min-width:0}.app .wa-template-management .card-title{padding:16px 0;flex-wrap:wrap}.app .wa-template-management.wa-template-standalone{margin-top:0;border:1px solid var(--line)}.app .wa-template-filters{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0}.app .wa-template-filters label:first-child{flex:1 1 200px}.app .wa-template-filters label:last-child{flex:0 1 160px}.app .wa-template-filters label{font-size:var(--text-label);min-width:0}.app .wa-template-filters input,.app .wa-template-filters :is(select,.vit-select){margin-top:6px}.app .wa-template-table td{vertical-align:middle}.app .wa-template-table td:first-child{white-space:normal;min-width:150px;max-width:240px;overflow-wrap:anywhere}.app .wa-template-excerpt{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:normal;min-width:180px;max-width:340px;overflow-wrap:anywhere}.app .wa-template-status{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.app .wa-template-status .promo-switch{flex:0 0 34px;margin:0}.app .wa-template-actions{display:flex;gap:6px}.app .wa-template-modal-body{padding:20px}.app .wa-template-modal textarea{resize:vertical}.app .wa-template-variables{display:flex;flex-wrap:wrap;gap:6px}.app .wa-template-variables small{flex-basis:100%}.app .wa-template-variables button{padding:5px 8px;font-size:11px;overflow-wrap:anywhere}.app .wa-template-preview{margin-top:16px;min-width:0}.app .wa-template-preview>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:8px}.app .wa-template-preview button{padding:6px 9px;font-size:12px}.app .wa-message{background:#f7f2ec;border:1px solid var(--line);border-radius:10px;padding:14px;margin:12px 0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6;font-size:13px;max-height:300px;overflow:auto}.app .wa-template-modal .alert{margin-top:12px}.app .wa-template-modal-body>label{display:block}.app .wa-template-modal-body :is(select,.vit-select){margin-top:6px}@media(max-width:480px){.app .wa-template-management .card-title{align-items:flex-start;gap:10px}.app .wa-template-filters label:last-child{flex:1 1 100%}.app .wa-template-modal-body{padding:16px}}.app .booking-unlock input::placeholder{font-family:inherit;font-weight:400;letter-spacing:normal;text-transform:none;color:var(--muted)}.app .booking-retouch-badge{text-transform:none;font-weight:500}.app .booking-retouch-history,.app .booking-payment-history{margin-top:12px;font-size:12px}.app .booking-retouch-history>div,.app .booking-payment-history>div{padding:8px 0;border-top:1px solid var(--line)}.app .booking-payment-history summary{cursor:pointer;line-height:1.6}.booking-history-control{margin-top:8px;white-space:normal}.booking-history-control small{margin-top:4px}.booking-history-expanded>td{padding:16px!important;background:var(--paper);white-space:normal}.booking-history-panel{width:100%;max-width:1100px;min-width:0}.booking-history-panel h3{margin:0 0 4px}.booking-history-panel>p{color:var(--muted);margin:0 0 12px}.booking-history-timeline{list-style:none;padding:0;margin:0}.booking-history-timeline>li{display:flex;align-items:center;gap:12px;position:relative;margin:0 0 12px;padding:0}.booking-history-timeline>li:last-child{margin-bottom:0}.booking-history-timeline>li:before,.booking-history-timeline>li:after{content:"";position:absolute;left:13px;width:2px;background:#cdb8a7;pointer-events:none}.booking-history-timeline>li:before{top:0;bottom:50%}.booking-history-timeline>li:after{top:50%;bottom:-12px}.booking-history-timeline>li:first-child:before,.booking-history-timeline>li:last-child:after{display:none}.history-dot{position:relative;z-index:1;flex:0 0 28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center}.history-done{background:#edf4e7;color:#688052}.history-cancelled{background:#fae8e4;color:#a54337}.history-scheduled{background:var(--accent);color:white}.history-event{box-sizing:border-box;min-width:0;flex:1;max-width:none;background:var(--vl-bg-surface);border:1px solid var(--line);border-radius:12px;padding:16px;border-color:var(--vl-border)}.history-event>div:first-child{display:flex;justify-content:space-between;gap:8px;align-items:center;flex-wrap:wrap}.history-event strong{font-weight:600}.history-event p{margin:4px 0;overflow-wrap:anywhere;line-height:1.5}.history-visit-time,.history-studio{color:var(--muted)}.history-event small{display:block;color:var(--muted);line-height:1.5;margin:4px 0}.history-event>.booking-payment-badges{margin-top:4px}.history-actions{display:flex;justify-content:flex-end;margin-top:6px}.history-actions .text-button{padding:4px 0;line-height:1.5}@media(max-width:600px){.booking-history-expanded>td{padding:12px!important}.booking-history-panel{max-width:calc(100vw - 64px)}.booking-history-timeline>li{gap:10px}.history-event>div:first-child{gap:6px}}.journey-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.journey-heading p{margin:4px 0 0;color:var(--muted)}.journey-heading>.badge{flex-shrink:0}.history-event .journey-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.journey-card-heading>div{min-width:0}.journey-card-heading>.badge{flex-shrink:0}.history-event .journey-card-heading p{color:var(--muted)}.journey-visit-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px 24px;margin-top:12px}.journey-field-label{display:block;color:var(--muted);font-size:11px;line-height:1.5;text-transform:uppercase;letter-spacing:.04em}.journey-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:10px;margin-top:12px}.journey-visit-notes{min-width:0}.journey-visit-notes small{margin:0 0 6px}.journey-card-footer>.text-button{flex-shrink:0;line-height:1.5}.journey-amount{color:var(--accent)}@media(max-width:600px){.history-event{padding:14px;background:var(--vl-bg-surface);border-color:var(--vl-border)}.journey-visit-grid{grid-template-columns:minmax(0,1fr);gap:10px}.journey-card-footer{align-items:flex-start;flex-wrap:wrap}.journey-card-footer>.text-button{margin-left:auto;min-height:36px}.journey-heading{align-items:flex-start}}.app .booking-list-table{table-layout:fixed;min-width:1100px;white-space:normal}.app .booking-list-table th,.app .booking-list-table .booking-main-row>td{padding:12px 14px;text-align:left;vertical-align:middle;min-width:0;max-width:none;overflow-wrap:anywhere;line-height:1.65}.app .booking-list-table .booking-col-select{width:4%}.app .booking-list-table .booking-col-customer{width:14%}.app .booking-list-table .booking-col-treatment{width:23%}.app .booking-list-table .booking-col-studio{width:14%}.app .booking-list-table .booking-col-total{width:12%}.app .booking-list-table .booking-col-payment{width:13%}.app .booking-list-table .booking-col-status{width:11%}.app .booking-list-table .booking-col-actions{width:9%}.app .booking-list-no-selection .booking-col-customer{width:18%}.app .booking-list-table .booking-main-row>td{transition:background-color .18s ease;border-bottom-color:#eee6de}.app .booking-list-table .booking-main-row>td[data-label=Pelanggan] b{font-weight:var(--weight-semibold)}.app .booking-list-table .booking-main-row>td[data-label=Total] strong{font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.app .booking-list-table .booking-main-row>td[data-label=Pilih]{padding-left:0;padding-right:0}.app .booking-list-table th[data-col=Aksi],.app .booking-list-table .booking-main-row>td[data-label=Aksi]{padding-left:4px;padding-right:4px}.app .booking-list-table .booking-row-actions button{min-height:44px;line-height:1.5}@media(min-width:768px)and (max-width:1279px){.app .booking-list-table th,.app .booking-list-table .booking-main-row>td{padding:12px 10px}.app .booking-list-table .booking-selection-heading,.app .booking-list-table .booking-main-row>td[data-label=Pilih]{padding-inline:0}}@media(prefers-reduced-motion:reduce){.app .booking-list-table .booking-main-row>td{transition:none}}.app .booking-list-table .booking-main-row>td[data-label=Pilih]{text-align:center}.app .booking-list-table .selection-checkbox{margin:0;vertical-align:middle}.app .booking-list-table .booking-service-name{font-weight:var(--weight-medium)}.app .booking-list-table .booking-main-row small{margin-top:4px}.app .booking-list-table .booking-row-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.app .booking-list-table .booking-row-actions button{font-weight:var(--weight-medium)}.app .booking-list-wrap .booking-history-panel{max-width:1100px;width:100%}.app .booking-list-wrap .booking-history-control small{font-size:var(--text-xs)}.journey-visit-grid{border:1px solid var(--line);border-radius:8px;gap:0;background:var(--paper);overflow:hidden}.journey-visit-grid>div{min-width:0;padding:12px}.journey-visit-grid>div+div{border-left:1px solid var(--line)}.journey-field-label{font-size:var(--text-xs);font-weight:var(--weight-medium);letter-spacing:0}.history-event .journey-meta{display:flex;align-items:flex-start;gap:8px;font-weight:var(--weight-regular)}.journey-meta .ui-icon{width:16px;height:16px;flex:0 0 16px;margin-top:3px}.journey-meta>span{min-width:0;overflow-wrap:anywhere}.journey-card-footer .text-button{font-weight:var(--weight-medium)}@media(min-width:768px)and (max-width:1279px){.app .booking-list-wrap{border-top:1px solid var(--line)}.app .booking-list-wrap:before{content:"Geser tabel ke samping untuk melihat semua kolom.";display:block;padding:8px 12px;color:var(--muted);font-size:var(--text-xs)}}@media(max-width:767px){.app .booking-list-wrap{overflow:visible;padding:0 12px 12px}.app .booking-list-table{display:block;min-width:0;width:100%}.app .booking-list-table>colgroup{display:none}.app .booking-list-table>thead{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%)}.app .booking-list-table>tbody{display:block}.app .booking-list-table .booking-main-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px;border:1px solid var(--line);border-radius:10px;padding:14px;margin:12px 0;background:white}.app .booking-list-table .booking-main-row>td,.app .booking-list-table .booking-main-row>td[data-label=Aksi]{display:block;padding:0;border:0;font-size:var(--text-table);min-width:0;max-width:none}.app .booking-list-table .booking-main-row>td:before{content:attr(data-label);display:block;color:var(--muted);font-size:var(--text-xs);font-weight:var(--weight-medium);margin-bottom:4px}.app .booking-list-table .booking-main-row>td[data-label=Pilih]{display:flex;align-items:center;justify-content:flex-start;gap:8px;text-align:left;grid-column:1/-1}.app .booking-list-table .booking-main-row>td[data-label=Pilih]:before{margin:0;order:1}.app .booking-list-table .booking-main-row>td[data-label=Pelanggan],.app .booking-list-table .booking-main-row>td[data-label="Treatment & Jadwal"],.app .booking-list-table .booking-main-row>td[data-label=Studio],.app .booking-list-table .booking-main-row>td[data-label=Aksi]{grid-column:1/-1}.app .booking-list-table .booking-main-row>td[data-label=Pelanggan]:before{display:none}.app .booking-list-table .booking-main-row>td[data-label=Pelanggan] b{font-weight:var(--weight-semibold)}.app .booking-list-table .booking-payment-badges{flex-wrap:wrap}.app .booking-list-table .booking-row-actions button{min-height:44px}.app .booking-list-table .booking-history-expanded{display:block;margin-top:-2px}.app .booking-list-table .booking-history-expanded>td{display:block;width:100%;max-width:none;min-width:0;padding:12px 0!important}.app .booking-list-wrap .booking-history-panel{max-width:100%;width:100%}.app .booking-list-table .journey-visit-grid{grid-template-columns:minmax(0,1fr)}.journey-visit-grid{grid-template-columns:minmax(0,1fr)}.journey-visit-grid>div+div{border-left:0;border-top:1px solid var(--line)}.journey-visit-grid>div{padding:10px}.journey-card-footer>.text-button{min-height:44px}.app .booking-list-wrap .journey-heading{flex-wrap:wrap}.app .booking-list-wrap .history-event{padding:12px}}.app .booking-list-table .booking-selection-heading{padding-left:0;padding-right:0;text-align:center;white-space:nowrap}.app .booking-list-table .booking-payment-badges{flex-wrap:wrap}@media(min-width:768px)and (max-width:1279px){.app .booking-list-wrap .booking-history-panel{max-width:calc(100vw - 280px)}}.app .booking-list-table .booking-row-actions{gap:12px}.app .booking-list-table .booking-row-actions button{min-width:0}@media(max-width:767px){.app .booking-list-table .booking-row-actions button{min-width:44px}}.app .slots .booking-time-slot.range-start,.app .retouch-time-picker button.range-start{background:#765847;color:#fff;border:2px solid #604331}.app .slots .booking-time-slot.range-inside,.app .retouch-time-picker button.range-inside{background:#e9ddd3;color:#604331;border-color:#c8ad98;opacity:1}.app .slots .booking-time-slot.range-end,.app .retouch-time-picker button.range-end{border:2px dashed #765847;box-shadow:none}.app .slots .booking-time-slot.is-range-preview{outline:1px dashed #765847;outline-offset:-3px}.app .slot-role{display:block;font-size:9px;line-height:1.2;margin-top:3px;font-weight:500}.app .slot-range-summary{display:block;margin-top:8px;color:#765847;line-height:1.5}.app .slots .booking-time-slot:has(.slot-role),.app .retouch-time-picker button:has(.slot-role){min-height:42px}.app .booking-modal-body .slots .booking-time-slot{min-height:40px}.app .slots .booking-time-slot.range-start.is-selected{background:#765847;color:#fff;border-color:#604331}.app .booking-selection-control{display:inline-flex;align-items:center;justify-content:center;min-width:32px;min-height:36px;border-radius:10px;cursor:pointer;transition:background-color .15s ease}.app .booking-list-table .selection-checkbox,.app .booking-delete-toolbar input[type=checkbox]{appearance:none;-webkit-appearance:none;flex:none;display:inline-block;width:20px;height:20px;padding:0;margin:0;border:1.5px solid #cdbdae;border-radius:6px;background:#fffdfa;vertical-align:middle;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.app .booking-list-table .selection-checkbox:checked,.app .booking-delete-toolbar input[type=checkbox]:checked{background:#765847;border-color:#765847;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m5 10 3 3 7-7' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}.app .booking-delete-toolbar input[type=checkbox]:indeterminate{background:#765847;border-color:#765847;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10h10' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E")}.app .booking-list-table .selection-checkbox:focus-visible,.app .booking-delete-toolbar input[type=checkbox]:focus-visible{outline:2px solid #987861;outline-offset:3px}.app .booking-list-table .booking-main-row.is-booking-selected>td{background:#faf6f1}@media(max-width:767px){.app .booking-selection-control{min-width:44px;min-height:44px}.app .booking-list-table .booking-main-row.is-booking-selected{border-color:#c5aa94;background:#faf6f1}}@media(forced-colors:active){.app .booking-list-table .selection-checkbox,.app .booking-delete-toolbar input[type=checkbox]{appearance:auto}}.app .adaptive-pagination{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:8px 20px;border-top:1px solid var(--line);min-width:0}.app .pagination-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;min-width:0}.app .pagination-count{font-size:12px;line-height:1.6;color:#75685d;overflow-wrap:anywhere}.app .pagination-meta label{display:flex;align-items:center;gap:8px;font-size:11px;color:#75685d;max-width:100%;min-width:0}.app .pagination-meta .vit-select{width:112px;max-width:100%}.app .pagination-segments{display:flex;align-items:center;max-width:100%;gap:0;border:0;border-radius:0;background:transparent;box-shadow:none}.app .pagination-segments button,.app .pagination-ellipsis{position:relative;display:flex;align-items:center;justify-content:center;gap:7px;min-width:44px;min-height:44px;padding:6px 10px;border:0;border-radius:0;background:transparent;box-shadow:none;color:#827469;font-size:12px;line-height:1.3;transition:color .15s ease}.app .pagination-segments button[aria-current=page]{background:transparent;color:var(--vl-mocha-600);font-weight:600}.app .pagination-segments button[aria-current=page]::after{content:"";position:absolute;bottom:6px;left:50%;width:18px;height:2px;transform:translateX(-50%);background:var(--vl-mocha-600)}.app .pagination-segments button:disabled{opacity:1;color:#c0b7ae;cursor:not-allowed;background:transparent}.app .pagination-segments button:focus-visible{outline:2px solid var(--vl-mocha-600);outline-offset:-3px;border-radius:4px;z-index:1}.app .pagination-segments .ui-icon{width:16px;height:16px;flex:none}.app .pagination-ellipsis{color:#a79789;min-width:28px;padding:6px}.app .pagination-mobile-status{display:none;font-size:12px;color:#75685d;text-align:center}.app .adaptive-pagination[data-layout=desktop] .pagination-button-label,.app .adaptive-pagination[data-layout=tablet] .pagination-button-label{display:none}.app .adaptive-pagination[data-layout=tablet]{grid-template-columns:minmax(0,1fr)}.app .adaptive-pagination[data-layout=tablet] .pagination-segments{justify-self:center}.app .adaptive-pagination[data-layout=mobile],.app .adaptive-pagination[data-layout=small]{display:flex;flex-direction:column;align-items:stretch;gap:4px;padding:8px 12px}.app .adaptive-pagination[data-layout=mobile] .pagination-meta,.app .adaptive-pagination[data-layout=small] .pagination-meta{flex-direction:column;align-items:stretch;gap:4px}.app .adaptive-pagination[data-layout=mobile] .pagination-meta label,.app .adaptive-pagination[data-layout=small] .pagination-meta label{justify-content:space-between}.app .adaptive-pagination[data-layout=mobile] .pagination-mobile-status,.app .adaptive-pagination[data-layout=small] .pagination-mobile-status{display:block}.app .adaptive-pagination[data-layout=mobile] .pagination-segments>button,.app .adaptive-pagination[data-layout=small] .pagination-segments>button{flex:1;min-width:0}.app .adaptive-pagination[data-layout=small] .pagination-button-label{display:none}@media(prefers-reduced-motion:reduce){.app .pagination-segments button{transition:none}}.app .customer-list-panel{--customer-default:#fff;--customer-hover:#e8d6c6;--customer-selected:#8b6048;--customer-selected-border:#76503b}.app .customer-profile-item{padding:0;background:var(--customer-default);border-color:var(--line)}.app .customer-profile-item>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none;padding:10px 12px;background:var(--customer-default);border-radius:7px;transition:background-color .18s ease,color .18s ease;color:var(--ink)}.app .customer-profile-item>summary::-webkit-details-marker{display:none}.app .customer-profile-label{min-width:0;overflow-wrap:anywhere}.app .customer-profile-item>summary .ui-icon{flex:none;color:#8c6952;transition:transform .18s ease,color .18s ease}.app .customer-profile-item[open]{border-color:var(--customer-selected-border)}.app .customer-profile-item[open]>summary{background:var(--customer-selected);color:#fff;border-radius:7px 7px 0 0}.app .customer-profile-item[open]>summary small{color:#f5e8de}.app .customer-profile-item[open]>summary .ui-icon{color:#fff;transform:rotate(90deg)}.app .customer-profile-item>summary:focus-visible{outline:2px solid var(--vl-espresso-800);outline-offset:3px}.app .customer-profile-content{padding:0 10px 10px;background:#fff}@media(prefers-reduced-motion:reduce){.app .customer-profile-item>summary,.app .customer-profile-item>summary .ui-icon{transition:none}}.app .customer-profile-item[open]{border-color:#d8c7b8}.app .customer-profile-content{padding:12px;background:#fdfbf8;border-radius:0 0 7px 7px}.app .customer-profile-content .table-wrap{border:1px solid #e7ddd3;border-radius:8px;background:#fff}.app .customer-profile-content table{border-collapse:separate;border-spacing:0;white-space:normal}.app .customer-profile-content th{background:#f6f1eb;color:#897565;padding:12px 14px;border-bottom:1px solid #e5d8cb;font-weight:500;letter-spacing:.4px}.app .customer-profile-content td{padding:14px;border-bottom:1px solid #eee6de;line-height:1.6}.app .customer-profile-content tbody>tr:last-child>td{border-bottom:0}.app .customer-profile-content td b{font-weight:500}.app .customer-profile-content td small{margin-top:4px}.app .customer-profile-content td[data-label=Total]{font-variant-numeric:tabular-nums}.app .customer-profile-content td[data-label=Aksi] .text-button{min-height:44px;display:inline-flex;align-items:center}@media(max-width:767px){.app .customer-profile-content{padding:10px}.app .customer-profile-content .table-wrap{border:0;background:transparent;overflow:visible}.app .customer-profile-content table,.app .customer-profile-content tbody{display:block;width:100%}.app .customer-profile-content thead{display:none}.app .customer-profile-content tbody{display:grid;gap:10px}.app .customer-profile-content tbody>tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px;border:1px solid #e7ddd3;border-radius:8px;background:#fff}.app .customer-profile-content td{display:block;padding:0;min-width:0;border:0;overflow-wrap:anywhere;font-size:var(--text-xs)}.app .customer-profile-content td::before{content:attr(data-label);display:block;margin-bottom:4px;font-size:10px;letter-spacing:.4px;text-transform:uppercase;color:#968171}.app .customer-profile-content td[data-label=Pelanggan],.app .customer-profile-content td[data-label="Treatment & Jadwal"],.app .customer-profile-content td[data-label=Aksi]{grid-column:1/-1}.app .customer-profile-content td[data-label=Aksi]{border-top:1px solid #eee6de;padding-top:8px;text-align:right}.app .customer-profile-content td[data-label=Aksi]::before{display:none}}.app .detail-action{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 10px;white-space:nowrap;border-radius:8px;line-height:1.5;transition:background-color 180ms ease,color 180ms ease}.app .detail-action:active{background:var(--vl-espresso-800);color:#fff}.app .detail-action:focus-visible{outline:2px solid var(--vl-espresso-800);outline-offset:3px}@media(prefers-reduced-motion:reduce){.app .detail-action{transition:none}}.ct-booking-nav{padding:10px 0}.ct-booking-nav .eyebrow{font-size:9px;margin-bottom:6px}.ct-booking-nav a{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;color:var(--vl-mocha-600);background:#f7efe6;font-size:12px}.ct-booking-nav a:focus-visible{outline:2px solid var(--vl-mocha-600);outline-offset:2px}.sidebar nav>a,.sidebar .ct-booking-nav>a{display:flex;align-items:center;gap:15px;padding:14px 17px;border-radius:8px;color:#84786f;font-size:inherit;min-height:44px}.sidebar .ct-booking-nav{display:grid;gap:4px}.sidebar .ct-booking-nav .eyebrow{margin:16px 0 6px}.sidebar .ct-booking-nav button{width:100%;align-items:center}.sidebar nav a svg,.sidebar nav button svg{flex-shrink:0}@media(max-width:700px){.sidebar nav>a,.sidebar .ct-booking-nav>a{padding:10px 9px;gap:6px;white-space:nowrap}.sidebar .ct-booking-nav{display:flex;align-items:center;gap:4px}.sidebar .ct-booking-nav .eyebrow{display:none}.sidebar .ct-booking-nav button{width:auto;white-space:nowrap}}.app{--sidebar-width:208px}.app>.workspace,.app>.ct-main{margin-left:var(--sidebar-width);min-width:0}.app .sidebar.studio-sidebar{background:var(--vl-bg-dark);color:var(--vl-text-inverse-muted);border-color:var(--vl-bg-dark);padding:24px 18px;gap:20px;height:100dvh;width:var(--sidebar-width);position:fixed;inset:0 auto 0 0;z-index:60}.studio-nav-brand{display:flex;align-items:center;justify-content:space-between}.studio-sidebar .wordmark{margin:0;font-size:29px}.app .sidebar.studio-sidebar nav{max-height:none;min-height:0;flex:1;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:3px}.app .sidebar.studio-sidebar nav button,.app .sidebar.studio-sidebar nav>a,.app .sidebar.studio-sidebar .ct-booking-nav>a{padding:8px 12px;display:flex;flex-direction:row;justify-content:flex-start;text-align:left;min-height:40px;font-size:var(--text-menu);line-height:20px;gap:11px;flex-shrink:0;align-items:center}.app .sidebar.studio-sidebar nav :is(button,a)[aria-current=page]{background:var(--vl-text-inverse-muted);color:var(--vl-text-primary);border-radius:8px}.studio-sidebar nav .eyebrow{margin:0 0 7px;font-size:10px}.app .sidebar.studio-sidebar .ct-booking-nav{display:grid;padding:0;gap:3px;margin-top:11px}.app .sidebar.studio-sidebar .ct-booking-nav .eyebrow{margin:0 0 7px}.app .sidebar.studio-sidebar .ct-booking-nav a:not([aria-current=page]){background:transparent}.studio-nav-account{flex-shrink:0}.studio-sidebar .profile{margin:0}.studio-sidebar .logout{border:0;background:transparent;padding:8px;margin:8px 0 0 38px;min-height:36px}.app .sidebar.studio-sidebar .studio-nav-close,.studio-mobile-bar{display:none}.app .studio-nav-backdrop{position:fixed;inset:0;background:#342e2b66;border:0;border-radius:0;z-index:79}.studio-sidebar nav::-webkit-scrollbar{width:6px}.studio-sidebar nav::-webkit-scrollbar-thumb{background:#d7c5b6;border-radius:4px}.app .sidebar.studio-sidebar nav :is(button,a){background:transparent;color:var(--vl-text-inverse-muted)}.app .sidebar.studio-sidebar :is(.eyebrow,.profile small){color:var(--vl-accent)}.app .sidebar.studio-sidebar :is(.profile b,.logout,.studio-nav-close){color:var(--vl-text-inverse-muted)}.app .sidebar.studio-sidebar .avatar{color:#4b3025}.app .sidebar.studio-sidebar .studio-nav-close{background:transparent}.app .sidebar.studio-sidebar :is(button,a):focus-visible{outline-color:#efe4da}@media(hover:hover)and (pointer:fine){.app .sidebar.studio-sidebar nav :is(button,a):not([aria-current=page]):hover,.app .sidebar.studio-sidebar :is(.logout,.studio-nav-close):hover{background:var(--vl-espresso-800);color:var(--vl-text-inverse)}.app .sidebar.studio-sidebar nav :is(button,a)[aria-current=page]:hover{background:var(--vl-text-inverse-muted);color:var(--vl-text-primary)}}@media(max-width:900px){.studio-mobile-bar{display:flex;align-items:center;gap:14px;padding:12px 16px;background:#fffdfa;border-bottom:1px solid var(--line)}.studio-mobile-bar button{width:44px;height:44px;padding:8px;font-size:20px}.studio-mobile-bar .wordmark{font-size:27px}.app .sidebar.studio-sidebar{display:none;position:fixed;inset:0 auto 0 0;width:min(300px,88vw);height:100dvh;overflow:visible;z-index:80;padding:20px;flex-direction:column;background:var(--vl-bg-dark);color:var(--vl-text-inverse-muted);border-color:var(--vl-bg-dark)}.app .sidebar.studio-sidebar.studio-nav-open{display:flex}.app .sidebar.studio-sidebar .studio-nav-close{display:inline-flex;min-width:44px;min-height:44px;font-size:24px}.studio-sidebar .studio-nav-account form{position:static}.studio-sidebar .profile{display:flex}.studio-sidebar .studio-nav-account .logout{display:block;margin:8px 0 0 38px}.app>.workspace,.app>.ct-main{margin-left:0}.app .sidebar.studio-sidebar nav{display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;justify-content:flex-start}.app .sidebar.studio-sidebar .ct-booking-nav{display:grid}.app .sidebar.studio-sidebar .ct-booking-nav .eyebrow{display:block}.app .sidebar.studio-sidebar nav :is(button,a),.app .sidebar.studio-sidebar .ct-booking-nav>a{min-height:44px;white-space:normal;flex-direction:row;align-items:center;justify-content:flex-start;text-align:left}.studio-sidebar .wordmark{display:block}}:root{--vl-brown:var(--vl-mocha-600);--vl-brown-dark:var(--vl-espresso-800);--vl-beige:var(--vl-hover-light);--vl-beige-light:var(--vl-bg-page);--vl-white:#fff;--vl-text:var(--vl-text-primary);--vl-border:#e7ddd2;--vl-transition:background-color 180ms ease,color 180ms ease,border-color 180ms ease;--focus-ring:var(--vl-brown)}.app :where(button,a,summary,select),.login :where(button,a){transition:var(--vl-transition)}.app.app :where(button,a,summary,select):focus-visible{outline:2px solid var(--vl-brown);outline-offset:3px}@media(hover:hover)and (pointer:fine){.app.app button:not(:where(.sidebar button,.studio-nav-backdrop,.day,.booking-time-slot,.retouch-date-grid button,.retouch-time-picker button,.date-picker button,.ct-calendar-days button,.ct-calendar-nav button,.ct-range-presets button,.at-calendar-grid>button,.vl-month-grid>button,.vl-month-year>button,.vl-month-control>button,.ct-stat,.ct-member,.ct-timeline-trigger,.appointment,.booking-selection-control,.column-sort,.ct-hint,.ct-original-deadline,.free-retouch-stats button,[role=option],[aria-selected=true],[aria-pressed=true],.selected)):hover:not(:disabled){background:var(--vl-brown);color:#fff;border-color:var(--vl-brown)}.app.app button:is(.primary,.at-scan-button):hover:not(:disabled){background:var(--vl-brown-dark);color:#fff;border-color:var(--vl-brown-dark)}.app.app button:is(.danger,.danger-outline,.delete-button,.team-delete):hover:not(:disabled){background:var(--vl-brown);color:#fff;border-color:var(--vl-brown)}.app.app :is(.day,.booking-time-slot,.retouch-date-grid button,.retouch-time-picker button,.date-picker button,.ct-calendar-days button,.ct-calendar-nav button,.ct-range-presets button,.at-calendar-grid>button,.vl-month-grid>button,.vl-month-year>button,.vl-month-control>button):hover:not(:disabled){background:var(--vl-beige);color:var(--vl-text);border-color:var(--vl-border)}.app.app :is(.day.chosen,.booking-time-slot.range-start,.retouch-date-grid .is-selected,.retouch-time-picker .range-start,.date-picker .chosen,.ct-calendar-days .is-chosen,.at-calendar-grid>button.is-selected):hover:not(:disabled){background:var(--vl-brown-dark);color:var(--vl-white);border-color:var(--vl-brown-dark)}.app.app .vl-month-grid>button.is-selected:hover{background:var(--vl-brown);color:#fff;border-color:var(--vl-brown)}}.app.app button:is(.detail-action,.primary):active:not(:disabled){background:var(--vl-brown-dark);color:var(--vl-white);border-color:var(--vl-brown-dark)}.app.app :is(.danger-outline,.team-delete){color:#a03e30}@media(prefers-reduced-motion:reduce){.app :where(button,a,summary,select),.login :where(button,a){transition:none!important}}.app .team-account-modal{display:flex;flex-direction:column;width:min(620px,100%);max-width:620px;max-height:90dvh;padding:0;overflow:hidden}.app .team-account-modal .promo-sheet-handle{display:none}.app .team-account-modal .promo-modal-header{position:static;flex:none;margin:0;padding:18px 24px;border-bottom:1px solid var(--vl-border);background:#fff}.app .team-account-modal .team-form{display:flex;flex-direction:column;min-height:0;flex:1;margin:0;padding:0;border:0;background:#fff;overflow:hidden}.app .team-account-modal .team-form-body{padding:20px 24px;min-height:0;overflow-y:auto;overscroll-behavior:contain}.app .team-account-modal .team-form .form-actions{position:static;flex:none;margin:0;padding:14px 24px;border-top:1px solid var(--vl-border);background:#fff}.app .team-account-modal :is(input,select,button){min-height:44px}.app .team-account-modal .form-hint{font-size:12px;line-height:1.7;color:var(--vl-text-secondary)}.app .team-account-modal input:disabled{opacity:1;color:var(--vl-text-secondary);background:#f7f2ed}@media(max-width:767px){.app .team-account-modal .promo-modal-header{padding:16px}.app .team-account-modal .team-form-body{padding:16px}.app .team-account-modal .team-form .form-actions{padding:12px 16px}.app .team-account-modal .form-grid{grid-template-columns:1fr}.app .team-panel .team-table{min-width:0;white-space:normal}.app .team-panel .team-table thead{display:none}.app .team-panel .team-table tbody{display:grid;gap:12px}.app .team-panel .team-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;border:1px solid var(--vl-border);border-radius:12px;padding:14px}.app .team-panel .team-table td{border:0;min-width:0;max-width:100%;padding:0;overflow-wrap:anywhere}.app .team-panel .team-table td:nth-child(2),.app .team-panel .team-table td:last-child{grid-column:1/-1}.app .team-panel .team-table td:last-child{padding-top:10px;border-top:1px solid var(--vl-border)}.app .team-panel .team-table td[data-label]::before{content:attr(data-label);display:block;margin-bottom:4px;font-size:11px;color:var(--vl-text-secondary)}}.team-purge-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--vl-bg-page)}.team-purge-summary>div{min-width:0;display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.team-purge-summary dt{font-size:13px;color:var(--vl-text-secondary)}.team-purge-summary dd{margin:0;font-size:15px;font-weight:600;font-variant-numeric:tabular-nums}.team-account-modal .team-form-body>label{display:grid;gap:8px;margin-top:18px}.team-account-modal .team-form-body>p{font-size:14px;line-height:1.8}@media(max-width:600px){.team-purge-summary{grid-template-columns:1fr}.team-account-modal .team-form input{font-size:16px}}.password-control{display:block;position:relative;width:100%;min-width:0}.password-control>input{width:100%;padding-right:54px!important;min-height:46px;border-radius:12px;font-size:14px;box-sizing:border-box}.login-fields .password-control{margin-top:8px}.login-fields .password-control>input{margin-top:0}.password-control>button.password-toggle{position:absolute;right:2px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;min-height:44px;padding:10px;margin:0;border:0;border-radius:11px;background:transparent;color:var(--vl-mocha-600);box-shadow:none;transition:background-color 180ms ease,color 180ms ease}.password-toggle>svg{width:20px;height:20px;flex:none;pointer-events:none}.password-control>button.password-toggle:focus-visible{outline:2px solid var(--vl-mocha-600);outline-offset:-3px}.password-control>button.password-toggle:active{background:#f1e6dc;color:#704b38}.login-fields .remember-choice{display:flex;align-items:center;gap:10px;min-height:44px;font-size:14px;font-weight:500;cursor:pointer;flex-wrap:wrap}.login-fields .remember-choice>input{appearance:auto;width:18px;height:18px;min-height:18px;margin:0;accent-color:#8b6048;flex:none;padding:0}.remember-choice>span{font-size:12px;color:#77685c;margin-left:auto}@media(max-width:700px){.password-control>input{font-size:16px}}@media(prefers-reduced-motion:reduce){.password-control>button.password-toggle{transition:none}}.login-options{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.login-options .forgot-password{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px;border-radius:10px;font-size:13px;color:var(--vl-mocha-600)}.auth-reset-success{margin-top:20px;padding:14px;border:1px solid #d9e5db;border-radius:12px;background:#f4f8f4;color:#365e46;font-size:14px;line-height:1.7}.period:has(.vl-month-control){flex-wrap:wrap;gap:12px}.vl-month-control{margin-left:auto;max-width:100%}.vl-month-control>button{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;min-width:190px;max-width:100%;padding:10px 12px;border:1px solid var(--vl-border);border-radius:11px;background:#fffdfb;font-size:13px;color:var(--vl-brown)}.vl-month-control .ui-icon,.vl-month-picker .ui-icon{width:18px;height:18px;flex:none}.vl-month-control>button>.ui-icon:last-child{width:13px;transform:rotate(90deg)}.app .settings-modal.vl-month-modal{width:320px;max-width:calc(100vw - 24px);padding:0;border:1px solid var(--vl-border);border-radius:16px;max-height:calc(100dvh - 24px);overflow:auto;background:var(--vl-bg-surface);box-shadow:0 12px 36px #4930201a}.vl-month-modal .promo-modal-header{padding:14px 16px;border-bottom:1px solid var(--vl-border);margin:0}.vl-month-modal .promo-modal-header h2{font-size:15px;font-weight:600;letter-spacing:-.02em}.vl-month-modal .promo-modal-header>button{width:44px;min-height:44px;border-radius:10px;padding:8px}.vl-month-modal .promo-sheet-handle{display:none}.vl-month-picker{padding:12px 16px 14px}.vl-month-year{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;gap:10px}.vl-month-year>strong{font-size:15px;color:var(--vl-text);font-variant-numeric:tabular-nums}.vl-month-year>button{display:grid;place-items:center;min-width:44px;min-height:44px;border-radius:10px;padding:10px;background:transparent;border:1px solid var(--vl-border)}.vl-month-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.vl-month-grid>button{min-height:44px;padding:10px 6px;border:1px solid transparent;border-radius:10px;background:transparent;font-size:13px;color:var(--vl-text-secondary)}.app.app .vl-month-grid>button.is-selected{background:var(--vl-brown);border-color:var(--vl-brown);color:#fff;font-weight:600}.vl-month-picker footer{border-top:1px solid var(--vl-border);margin-top:14px;padding-top:12px;display:flex;justify-content:flex-end}.vl-month-picker footer>button{display:flex;align-items:center;gap:8px;min-height:44px;padding:10px 12px;font-size:13px;border-radius:10px}.vl-month-modal :is(button,a):focus-visible{outline:2px solid var(--vl-brown);outline-offset:2px}@media(min-width:701px){.promo-modal-overlay:has(.vl-month-modal){background:transparent;backdrop-filter:none;animation:none}.app .settings-modal.vl-month-modal{position:fixed;left:var(--month-left,12px);top:var(--month-top,12px);margin:0;transform:none;animation:none}}@media(max-width:700px){.app .settings-modal.vl-month-modal{margin:auto;position:relative;transform:none}.vl-month-control>button{font-size:13px}}.multi-booking-form .form-grid{min-width:0}.multi-booking-form .multi-booking-name-row{margin-bottom:16px}.multi-booking-name{position:relative;min-width:0}.multi-booking-name>label{display:block}.multi-booking-person{min-width:0}.multi-booking-person+.multi-booking-person{margin-top:22px;padding-top:18px;border-top:1px solid #eae5df}.multi-booking-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:12px 0}.multi-booking-heading h3{font-size:14px;font-weight:600;margin:0;color:var(--vl-mocha-600)}.multi-booking-form .multi-booking-add{min-height:40px;margin-top:12px;padding:9px 12px;border-radius:8px;background:#fff;color:var(--vl-mocha-600);font-size:13px}.multi-booking-treatment-list{display:grid;gap:10px;margin-top:14px}.multi-booking-treatment-row{border:1px solid #eae5df;border-radius:10px;padding:12px;background:#fffdfb;min-width:0}.multi-booking-treatment-meta{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:10px;color:var(--vl-mocha-600);font-size:13px}.multi-booking-treatment-meta button,.multi-booking-heading button{min-height:36px;font-size:12px;padding:6px 10px}.multi-booking-series-summary{margin:14px 0;padding:12px;background:var(--vl-bg-page);border-radius:9px;font-size:13px;color:var(--vl-mocha-600)}.multi-booking-series-summary>button{margin-top:8px;font-size:12px;min-height:36px}.multi-booking-payment-history{margin-top:14px;background:#faf6f1;border-radius:9px;padding:12px;font-size:13px}.multi-booking-payment-history p+p{margin-top:8px}.multi-booking-help{margin:10px 0;color:#806e60;font-size:12px}.multi-booking-form .currency-input span{flex:0 0 auto;white-space:nowrap}.multi-booking-form .currency-input input{flex:1;width:0}.multi-booking-form .form-actions>button{white-space:normal;min-height:40px}.multi-booking-form .alert{margin-top:12px}.multi-booking-form :is(input,select,textarea){max-width:100%;min-width:0}.multi-booking-suggestions:empty{display:none}.multi-booking-suggestions{position:absolute;top:100%;left:0;right:0;background:#fffdfb;border:1px solid var(--vl-border);border-radius:8px;z-index:5;padding:4px;box-shadow:0 6px 18px #30251f12;max-height:220px;overflow:auto}.multi-booking-suggestions>button{display:block;width:100%;text-align:left;border:0;min-height:44px;padding:8px 10px;background:transparent}.multi-booking-suggestions small{font-size:11px}@media(min-width:768px){.app .settings-modal .multi-booking-form .multi-booking-treatment-row .form-grid{grid-template-columns:minmax(0,2fr) minmax(100px,.8fr) minmax(0,1.2fr)}.app .settings-modal .multi-booking-form .multi-booking-treatment-row .form-grid>label.wide{grid-column:auto}.app .settings-modal .multi-booking-form .form-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.app .settings-modal .multi-booking-form .form-grid>label.multi-booking-date{grid-column:auto}}@media(max-width:767px){.app .settings-modal .multi-booking-form .form-grid{grid-template-columns:minmax(0,1fr)}.multi-booking-form :is(input,select,textarea){font-size:16px}.multi-booking-form label{min-width:0}.multi-booking-treatment-meta{flex-wrap:wrap}}.app .settings-modal.series-settlement-modal{width:440px;max-width:calc(100vw - 24px);background:var(--vl-bg-surface);border:1px solid #e9ded4;border-radius:16px}.multi-booking-payment{container:booking-payment / inline-size;margin-top:16px;padding:16px;border:1px solid #e6ddd4;border-radius:12px;background:#fcfaf7;min-width:0}.multi-booking-payment>h3{margin:0 0 16px;font-size:14px;font-weight:600;line-height:1.6;color:#60442f}.multi-booking-payment-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:16px;margin:0;padding:0;border:0;min-width:0}.multi-booking-payment-fields>label{display:grid;align-content:start;gap:8px;min-width:0;font-size:var(--text-label);line-height:1.5;color:#7e6f63}.app .multi-booking-payment .currency-input{min-height:46px;margin:0;padding:0 12px;gap:8px;border:1px solid #dcd5ce;border-radius:8px;background:#fff;min-width:0}.app .multi-booking-payment .currency-input:has(input[readonly]){background:#f6f1eb}.app .multi-booking-payment .currency-input input{margin:0;padding:10px 0;border:0;border-radius:0;background:transparent;min-height:44px;min-width:0;font-size:var(--text-input);line-height:1.5}.app .multi-booking-payment .currency-input input:focus-visible{outline:none}.multi-booking-payment-balance{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-top:16px}.multi-booking-payment-remaining{min-width:0;flex:1 1 200px}.multi-booking-payment-remaining>div{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:12px;color:#806e60}.multi-booking-payment-remaining>strong{display:block;margin-top:6px;font-size:18px;font-weight:600;line-height:1.5;color:#4b3025;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.multi-booking-payment-status{display:inline-flex;align-items:center;padding:4px 7px;border-radius:6px;font-size:11px;line-height:1.5}.multi-booking-payment .payment-paid{background:#eaf0e6;color:#536b4c}.multi-booking-payment .payment-dp{background:#f5ebd9;color:#8b6b35}.multi-booking-payment .payment-unpaid{background:#f0e8df;color:#806551}.app .multi-booking-payment-balance>button{flex:0 1 auto;min-height:44px;max-width:100%;padding:10px 12px;white-space:normal;font-size:12px;line-height:1.5}.multi-booking-payment .multi-booking-help{margin:12px 0 0}.multi-booking-payment .alert{margin:12px 0 0}@container booking-payment (max-width:440px){.multi-booking-payment-fields{grid-template-columns:minmax(0,1fr)}.multi-booking-payment-balance{flex-direction:column;align-items:stretch;gap:12px}.multi-booking-payment-remaining{flex-basis:auto}.multi-booking-payment-balance>button{width:100%}}@media(max-width:767px){.app .multi-booking-payment .currency-input input{font-size:16px}}.series-settlement-modal .promo-sheet-handle{display:none}.series-settlement-body{padding:20px;min-width:0}.series-settlement-name{display:block;font-size:17px;color:#57351a;font-weight:600;overflow-wrap:anywhere}.series-settlement-body dl{margin:18px 0 0}.series-settlement-body dl>div{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:12px 0;border-bottom:1px solid #eee5dc}.series-settlement-body dt{font-size:13px;color:#927c69}.series-settlement-body dd{margin:0;color:#493526;font-size:14px;font-weight:500;text-align:right;overflow-wrap:anywhere}.series-settlement-body dl>.is-remaining,.series-settlement-body dl>.is-paid{margin-top:12px;padding:14px;border:0;border-radius:10px;background:#f3ebe2}.series-settlement-body dl>.is-paid{background:#eaf0e6}.series-settlement-body .is-paid :is(dt,dd){color:#536b4c}.series-settlement-body .form-actions{margin-top:20px;gap:8px}.series-settlement-body .form-actions>button{min-height:44px;white-space:normal}.series-settlement-body .alert{margin-top:14px}.multi-booking-form .multi-booking-treatment-meta>span{font-weight:500;color:var(--vl-mocha-600)}@media(max-width:600px){.series-settlement-body{padding:16px}.series-settlement-body .form-actions{flex-direction:column-reverse;align-items:stretch}.series-settlement-body .form-actions>button{width:100%}}.free-retouch-pending-list>.adaptive-pagination{margin-top:10px;padding:8px 0}.booking-batch-summary{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.65;font-size:13px;font-weight:600;overflow-wrap:anywhere}.booking-batch-counts{margin-top:8px}.booking-batch-toggle svg{flex:none}.booking-batch-panel{max-width:1120px;margin-inline:auto;background:var(--vl-bg-page);border:1px solid var(--vl-border);border-radius:12px;padding:16px;min-width:0;white-space:normal;color:var(--vl-text-primary)}.booking-batch-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.booking-batch-panel-heading h3{margin:0;font-size:17px;font-weight:600;color:var(--vl-text-primary)}.booking-batch-panel-heading small{font-size:12px;color:#89786e}.booking-batch-customer+.booking-batch-customer{margin-top:16px;border-top:1px solid var(--vl-border);padding-top:16px}.booking-batch-customer>h3{font-size:14px;font-weight:600;color:var(--vl-text-primary);margin:0 0 12px}.booking-journey-item{min-width:0}.booking-batch-customer>.booking-journey-item{background:var(--vl-bg-surface);border:1px solid var(--vl-border);border-radius:12px;padding:16px;transition:border-color 180ms ease,box-shadow 180ms ease}.booking-batch-customer>.booking-journey-item+.booking-journey-item{margin-top:12px}.booking-batch-treatment{min-width:0;white-space:normal}.booking-batch-treatment-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(130px,auto);align-items:start;gap:16px;min-width:0}.booking-batch-treatment-content:has(>.booking-selection-control){grid-template-columns:24px minmax(0,1fr) minmax(130px,auto)}.booking-batch-treatment-content>.booking-selection-control{align-self:start;min-height:40px;display:flex;align-items:center}.booking-batch-treatment-info{min-width:0}.booking-batch-treatment h4{font-size:15px;line-height:1.7;letter-spacing:.01em;font-weight:600;margin:0;color:var(--vl-text-primary);overflow-wrap:anywhere}.booking-batch-treatment h4>span{display:block;font-size:11px;line-height:1.5;letter-spacing:.07em;text-transform:uppercase;color:#94704e;font-weight:500;margin-bottom:4px}.booking-batch-treatment-info>p{font-size:13px;line-height:1.75;letter-spacing:.01em;color:var(--vl-mocha-600);margin:6px 0 0;font-variant-numeric:tabular-nums}.booking-batch-treatment-info>small{display:block;font-size:12px;margin-top:4px;line-height:1.6;overflow-wrap:anywhere;color:#89786e}.booking-batch-treatment-payment{min-width:0;text-align:right;padding-top:20px;font-variant-numeric:tabular-nums}.booking-batch-treatment-payment>strong{display:block;font-size:15px;line-height:1.6;font-weight:600;color:var(--vl-text-primary)}.booking-batch-treatment-payment>small{display:block;font-size:12px;margin-top:4px;color:#89786e}.booking-batch-treatment-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:12px}.booking-batch-treatment-status{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-width:0}.booking-batch-treatment-status>.badge{font-size:12px;line-height:1.5;margin:0;padding:4px 9px}.booking-batch-treatment-status>.payment-paid{background:#e7efe6;color:#46694c}.booking-batch-treatment-status>.green:not(.payment-paid){background:#efe9e3;color:#765746}.app.app .booking-batch-treatment-footer>.detail-action{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:44px;padding:10px 16px;color:var(--vl-mocha-600);border:1px solid transparent;border-radius:8px;white-space:normal;font-size:13px;line-height:1.7;letter-spacing:.015em;flex:none;background:transparent}.booking-batch-treatment-footer>.detail-action .ui-icon{height:15px;width:15px;transition:transform 180ms ease}.booking-batch-treatment-journey{margin-top:10px;padding-top:8px;border-top:1px solid var(--vl-border)}.booking-batch-treatment-journey .booking-history-control{margin:0}.booking-batch-treatment-journey .is-compact-control .ui-icon{height:17px;width:17px;flex:none;color:#94704e}.booking-batch-treatment-journey .booking-history-chevron{order:3;margin-left:auto;flex:none;transition:transform 180ms ease}.booking-batch-treatment-journey button[aria-expanded=true] .booking-history-chevron{transform:rotate(180deg)}.booking-batch-treatment-journey .is-compact-control>small{font-size:11px;color:#89786e;margin:4px 12px 4px 36px}.booking-batch-treatment.is-canceled h4{color:#89786e}.booking-batch-panel .booking-history-inline{padding:12px;background:var(--vl-bg-page);border-color:var(--vl-border)}.booking-batch-panel :is(button,input):focus-visible{outline:2px solid #765746;outline-offset:3px}.app.app .booking-batch-treatment-footer>.detail-action:hover:not(:disabled){background:#f1e9df;color:var(--vl-text-primary);border-color:var(--vl-border)}.booking-batch-treatment-footer>.detail-action:hover .ui-icon{transform:translateX(2px)}@media(hover:hover){.booking-batch-customer>.booking-journey-item:hover{border-color:#c5a47e;box-shadow:0 2px 10px #38272008}}@media(prefers-reduced-motion:reduce){.booking-batch-panel *{transition:none!important}}.booking-history-inline{margin-top:12px;padding:12px;background:#fffdfb;border:1px solid #eae5df;border-radius:10px;min-width:0}.app .booking-history-inline .booking-history-panel{max-width:100%;width:100%;white-space:normal}.booking-detail-journey{padding:16px 20px}.booking-batch-settlement{color:#967346}.app .booking-list-table .selection-checkbox:indeterminate{background:var(--vl-mocha-600);border-color:var(--vl-mocha-600);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10h10' stroke='white' stroke-width='2'/%3E%3C/svg%3E")}.app .studio-agenda{padding:20px}.app .studio-agenda .agenda-list{display:grid;gap:8px;margin:16px 0 0}.app .studio-agenda .compact-appointment{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:56px;padding:8px 10px;margin:0;border-radius:9px;min-width:0}.compact-appointment time{font-size:13px;color:#60442f;font-variant-numeric:tabular-nums}.compact-agenda-person{display:block;min-width:0;text-align:left}.app .studio-agenda .compact-agenda-person strong{display:block;font-size:13px;line-height:1.5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.app .studio-agenda .compact-agenda-person small{font-size:12px;line-height:1.5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:0}.app .studio-agenda .compact-appointment .badge{margin:0;max-width:82px;white-space:normal;font-size:11px;line-height:1.4;padding:4px 6px;text-align:center}.compact-agenda-pagination{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin:12px 0 16px;color:#927e6b;font-size:11px}.compact-agenda-pagination nav{display:flex;align-items:center;gap:6px}.compact-agenda-pagination nav>span{min-width:36px;text-align:center;font-variant-numeric:tabular-nums}.compact-agenda-pagination button{display:inline-flex;align-items:center;justify-content:center;width:44px;min-height:44px;padding:8px;background:transparent;border-color:transparent}.compact-agenda-pagination .ui-icon{width:16px;height:16px}.app .studio-agenda .agenda-list:has(.agenda-empty){margin-bottom:16px}@media(max-width:600px){.app .studio-agenda{padding:16px}.app .studio-agenda .compact-appointment{gap:8px;padding:8px;grid-template-columns:38px minmax(0,1fr) auto}}.finance-analytics{padding:20px;margin-bottom:20px;min-width:0}.finance-analytics>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.finance-analytics h2{font-size:18px;color:#60442f}.finance-analytics>header p{font-size:12px;margin-top:6px}.finance-filters,.finance-custom{display:flex;gap:12px;flex-wrap:wrap}.finance-filters label,.finance-custom label{font-size:12px;color:#927e6b;min-width:0}.finance-filters :is(select,.vit-select),.finance-custom input{display:block;min-height:44px;max-width:100%;margin-top:6px;font-size:13px;border-radius:10px;background:#fffdfa}.finance-custom{margin-top:16px}.finance-analytics .alert{margin:16px 0 0}.finance-chart-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:20px}.finance-chart-bar>div{display:flex;gap:8px}.finance-chart-bar button{min-height:44px;padding:8px 14px;border-color:transparent;background:transparent;font-size:13px}.app.app .finance-chart-bar button[aria-pressed=true]{background:#efe5db;color:#57351a;border-color:#e2d3c3;font-weight:600}.finance-chart-bar>small{font-size:11px}.finance-chart{position:relative;max-width:100%;min-width:0;margin-top:16px}.finance-chart>svg{display:block;width:100%;height:240px}.finance-chart :is(rect[role=button],circle){cursor:pointer}.finance-chart :is(rect[role=button],circle):focus-visible{outline:2px solid var(--vl-mocha-600);outline-offset:3px}.finance-tooltip{position:absolute;right:12px;top:4px;pointer-events:none;max-width:calc(100% - 24px);padding:10px 14px;border:1px solid #e4d6c7;border-radius:10px;background:#fffdfa;font-size:12px;line-height:1.6;color:#927e6b;box-shadow:0 4px 18px #30251f0d}.finance-tooltip>b{display:block;color:#57351a;font-size:14px;margin-top:4px}.finance-chart-empty{min-height:240px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:20px;font-size:14px;color:#927e6b;text-align:center}.finance-chart-empty small{font-size:12px}.finance-definition{font-size:12px;line-height:1.7;margin-top:12px}.monthly-summary-cards>article{background:var(--vl-bg-dark);border-color:var(--vl-bg-dark)}@media(max-width:600px){.finance-analytics{padding:16px}.finance-filters{width:100%}.finance-filters label,.finance-custom label{flex:1;min-width:0}.finance-filters :is(select,.vit-select),.finance-custom input{font-size:16px;width:100%}.finance-chart>svg{height:220px}.finance-chart-empty{min-height:220px}.finance-tooltip{right:4px}}.monthly-summary{margin-bottom:20px;min-width:0}.monthly-summary>header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.monthly-summary h2{font-size:18px;color:#60442f}.monthly-summary-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;gap:16px}.monthly-summary-cards.has-daily-income{grid-template-columns:repeat(4,minmax(0,1fr))}.today-income-card .today-income-date{display:block;margin-top:8px;font-size:11px;color:var(--vl-text-inverse-muted)}.today-income-card .today-income-error{font-size:12px;color:var(--vl-text-inverse-muted);margin-top:10px}.today-income-error button{margin-top:8px;min-height:44px}@media(max-width:1100px){.monthly-summary-cards.has-daily-income{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.monthly-summary-cards.has-daily-income{grid-template-columns:minmax(0,1fr)}}.app .monthly-summary-cards>article{padding:20px;min-width:0;background:var(--vl-bg-dark);border-color:var(--vl-bg-dark)}.monthly-summary-label{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--vl-text-inverse);font-size:13px}.monthly-summary-label .ui-icon{width:20px;height:20px;flex:none;color:var(--vl-accent)}.monthly-summary-cards strong{display:block;font-size:28px;line-height:1.4;font-weight:600;color:var(--vl-text-inverse);margin:12px 0 6px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.monthly-summary-cards p{font-size:12px;line-height:1.7;color:var(--vl-text-inverse-muted)}.monthly-summary .alert{margin-bottom:12px}@media(max-width:600px){.monthly-summary>header{align-items:flex-start;flex-wrap:wrap;gap:12px}.monthly-summary-cards{grid-template-columns:minmax(0,1fr);gap:12px}.monthly-summary-cards>article{padding:16px;background:var(--vl-bg-dark);border-color:var(--vl-bg-dark)}.monthly-summary-cards strong{font-size:26px;color:var(--vl-text-inverse)}.monthly-summary .vl-month-control{margin-left:0}.monthly-summary .vl-month-control>button{min-width:180px}}@media(max-width:900px){.booking-batch-treatment-content{gap:12px}.booking-batch-treatment-content:has(>.booking-selection-control){grid-template-columns:24px minmax(0,1fr) minmax(110px,auto)}}@media(max-width:600px){.booking-batch-panel-heading{align-items:flex-start;flex-direction:column;gap:6px}.booking-batch-panel{padding:12px;background:var(--vl-bg-page);color:var(--vl-text-primary)}.booking-batch-customer>.booking-journey-item{padding:16px;background:var(--vl-bg-surface);border:1px solid var(--vl-border)}.booking-batch-treatment-content,.booking-batch-treatment-content:has(>.booking-selection-control){grid-template-columns:minmax(0,1fr);gap:12px}.booking-batch-treatment-content:has(>.booking-selection-control){grid-template-columns:24px minmax(0,1fr)}.booking-batch-treatment-payment{grid-column:1/-1;text-align:left;padding:0}.booking-batch-treatment-footer{align-items:flex-start;flex-direction:column;gap:8px}.app.app .booking-batch-treatment-footer>.detail-action{width:100%;justify-content:space-between}.booking-batch-panel .booking-history-inline{padding:12px 8px}.booking-detail-journey{padding:16px}.booking-batch-treatment h4{font-size:14px}}.app .booking-date-panel{position:fixed;z-index:1400;box-sizing:border-box;overflow:auto;overscroll-behavior:contain;background:var(--vl-bg-surface);box-shadow:0 12px 28px #342e2b24}.vit-floating-root{display:contents}.app .vit-select,.app .vit-select-control{position:relative;min-width:0;max-width:100%}.app .vit-select-native{position:absolute;width:1px;height:1px;inset:0;opacity:0;pointer-events:none;clip-path:inset(50%);padding:0;border:0}.app .vit-select-control>button{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--vl-border);border-radius:11px;background:var(--vl-bg-surface);color:var(--vl-text-primary);font-family:inherit;font-size:13px;font-weight:400;text-align:left;line-height:1.6;transition:background-color 180ms ease,border-color 180ms ease,color 180ms ease}.app .vit-select-control.is-compact>button{padding:8px 12px}.app .vit-select-control>button>span{min-width:0;overflow-wrap:anywhere}.app .vit-select-control>button>.ui-icon{width:15px;height:15px;transform:rotate(90deg);flex:none}.app .vit-select-control>button[aria-expanded=true]>.ui-icon{transform:rotate(-90deg)}.app .vit-select-control>button:focus-visible{outline:2px solid var(--vl-mocha-600);outline-offset:2px}.app.app .vit-select-control>button:hover:not(:disabled){background:var(--vl-hover-light);color:var(--vl-text-primary);border-color:var(--vl-accent)}.app .vit-select-control>button:disabled{opacity:.55;cursor:not-allowed}.app .vit-select-control.has-error>button{border-color:#bd6a59}.app .vit-select-error{display:block;margin-top:5px;color:#a34d40;font-size:12px}.app .ct-select-menu{position:fixed;z-index:1400;overflow:auto;overscroll-behavior:contain;box-sizing:border-box;padding:6px;border:1px solid #dfcfc2;border-radius:12px;background:#fffdfa;box-shadow:0 10px 28px #392d271f;font-family:var(--font-primary);color:#5e493c;scrollbar-width:thin;scrollbar-color:#cdb8a8 transparent}.app .ct-select-options>button{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:44px;padding:10px 12px;border:0;border-radius:8px;background:transparent;color:var(--vl-text-primary);text-align:left;font-family:inherit;font-size:13px;font-weight:400;line-height:1.6;transition:background-color 180ms ease,color 180ms ease}.app .ct-select-options>button[aria-selected=true]{background:#f1e6dc;color:#704b38;font-weight:500}.app.app .ct-select-options>button:is(.is-focused,:hover):not(:disabled){background:#e8d6c6;color:#704b38}.app .ct-select-options>button:focus-visible{outline:2px solid var(--vl-mocha-600);outline-offset:-2px}.app .ct-select-options>button:disabled{opacity:.45;cursor:not-allowed}.app .ct-select-options>button>.ui-icon{width:16px;height:16px;flex:none}.app .vit-select-empty{padding:14px 10px;font-size:13px;color:var(--vl-text-secondary)}.app .vit-select-search{position:sticky;top:-6px;padding:4px 0 8px;background:#fffdfa;z-index:1}.app .vit-select-search input{width:100%;min-height:44px;border-radius:8px;font:inherit}@media(prefers-reduced-motion:reduce){.app .vit-select-control>button,.app .ct-select-options>button{transition:none}}.app .customer-options{position:fixed;z-index:1400;box-sizing:border-box;overflow:auto;overscroll-behavior:contain;padding:6px;background:var(--vl-bg-surface);border:1px solid #dfcfc2;border-radius:12px;box-shadow:0 10px 28px #392d271f;scrollbar-width:thin;scrollbar-color:#cdb8a8 transparent}.app .customer-options>button{display:block;width:100%;min-height:44px;padding:10px 12px;text-align:left;background:transparent;border:0;border-radius:8px;transition:background-color 180ms ease,color 180ms ease}.app.app .customer-options>button:is(:hover,.is-focused){background:#e8d6c6;color:#704b38}@media(prefers-reduced-motion:reduce){.app .studio-options button,.app .customer-options>button{transition:none}}.app .retouch-coverage-fields{grid-column:1/-1;padding:14px;border:1px solid #e5d9cd;border-radius:10px;background:#fcf9f5;display:grid;gap:12px;min-width:0}.app .free-retouch-modal form .retouch-coverage-fields>div>label{grid-column:auto}.app .retouch-coverage-fields legend{font-size:13px;padding:0 6px;color:var(--vl-mocha-600)}.app .retouch-coverage-fields>div{display:grid;grid-template-columns:minmax(0,1fr) 140px;align-items:center;gap:12px}.app .retouch-coverage-fields label{display:flex;align-items:center;gap:10px;font-size:13px;min-width:0;overflow-wrap:anywhere}.app .free-retouch-modal .retouch-coverage-fields input{width:18px;margin:0;height:18px;flex:none;min-height:0;accent-color:#765847}.app .retouch-coverage-fields strong{font-size:13px;color:var(--vl-mocha-600)}.app .retouch-covered-list{margin:0;padding:14px 14px 14px 30px;background:#f8f3ec;border:1px solid #e5d9cd;border-radius:10px;font-size:13px;line-height:1.8}@media(max-width:480px){.app .retouch-coverage-fields>div{grid-template-columns:minmax(0,1fr)}.app .retouch-coverage-fields .vit-select{max-width:170px}}.app .single-customer-booking-modal{display:flex;flex-direction:column;overflow:hidden}.app .single-customer-booking-modal>.promo-modal-header{flex:none}.app .single-customer-booking-modal>.booking-modal-body{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.app .single-customer-booking-modal .booking-edit-indicator{flex:none}.app .single-customer-booking-modal .multi-booking-form{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.app .single-booking-fields{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#cdb8a8 transparent;padding:4px 4px 12px;scroll-padding-block:12px}.app .single-customer-booking-modal .multi-booking-form>.form-actions{position:static;flex:none;margin:0;padding:14px 0 0;border-top:1px solid #eae5df;background:#fff;gap:8px}.app .single-booking-identity-row{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start;min-width:0}.app .single-booking-identity-row>.multi-booking-name{grid-column:auto}.app .single-booking-identity-row.is-single{grid-template-columns:minmax(0,1fr)}@media(max-width:480px){.app .single-booking-identity-row{grid-template-columns:minmax(0,1fr)}}.app.app button.booking-expand-trigger,.app.app .booking-history-control>button.text-button,.app.app button.booking-batch-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:auto;max-width:100%;min-height:0;padding:5px 12px;border:1px solid transparent;border-radius:6px;background:transparent;font-family:inherit;font-size:var(--text-button,13px);font-weight:var(--weight-medium,500);line-height:1.6;letter-spacing:normal;text-align:left;white-space:normal;vertical-align:middle;transition:background-color 180ms ease,color 180ms ease,border-color 180ms ease}.booking-expand-trigger .booking-expand-label{min-width:0;overflow-wrap:anywhere}.app.app button.booking-expand-trigger:hover:not(:disabled),.app.app .booking-history-control>button.text-button:hover:not(:disabled),.app.app button.booking-batch-toggle:hover:not(:disabled){background:var(--vl-brown);border-color:var(--vl-brown);color:#fff}.app.app button.booking-expand-trigger:hover:not(:disabled) :is(svg,.ui-icon,.booking-expand-label),.app.app .booking-history-control>button.text-button:hover:not(:disabled) svg,.app.app button.booking-batch-toggle:hover:not(:disabled) svg{color:#fff}.app.app button.booking-expand-trigger:focus-visible,.app.app .booking-history-control>button.text-button:focus-visible,.app.app button.booking-batch-toggle:focus-visible{outline:2px solid var(--vl-brown);outline-offset:3px}@media(prefers-reduced-motion:reduce){.app.app button.booking-expand-trigger,.app.app .booking-history-control>button.text-button,.app.app button.booking-batch-toggle{transition:none}}.booking-batch-customer>.booking-journey-item:nth-of-type(even){background:var(--vl-espresso-800);border-color:var(--vl-espresso-700);color:#fff}.booking-batch-customer>.booking-journey-item:nth-of-type(even) :is(.booking-batch-treatment h4,.booking-batch-treatment-payment>strong){color:#fff}.booking-batch-customer>.booking-journey-item:nth-of-type(even) :is(.booking-batch-treatment-info>p,.booking-batch-treatment-info>small,.booking-batch-treatment-payment>small,.is-compact-control>small){color:#f0ded0}.booking-batch-customer>.booking-journey-item:nth-of-type(even) .booking-batch-treatment h4>span{color:#d8b99a}.booking-batch-customer>.booking-journey-item:nth-of-type(even) .booking-batch-treatment-journey{border-color:#765746}.app.app .booking-batch-customer>.booking-journey-item:nth-of-type(even) :is(button.booking-expand-trigger,.detail-action,.is-compact-control .ui-icon){color:#fff}.app.app .booking-batch-customer>.booking-journey-item:nth-of-type(even) :is(button.booking-expand-trigger,.detail-action):hover:not(:disabled){background:#765746;color:#fff;border-color:#765746}.booking-batch-customer>.booking-journey-item:nth-of-type(even) .selection-checkbox{border-color:#d8b99a;background-color:#493127}.booking-batch-customer>.booking-journey-item:nth-of-type(even) .selection-checkbox:checked{background-color:var(--vl-mocha-600)}.booking-batch-customer>.booking-journey-item:nth-of-type(even) .booking-history-inline{background:#fffcf8;color:var(--vl-text-primary);border-color:#765746}.booking-batch-customer>.booking-journey-item:nth-of-type(even) :is(button,input):focus-visible{outline-color:#d8b99a}@media(hover:hover){.booking-batch-customer>.booking-journey-item:nth-of-type(odd):hover{background:#f8f1ea;border-color:#c9b29e}.booking-batch-customer>.booking-journey-item:nth-of-type(even):hover{background:#5a3e31;border-color:#94725b}}.monthly-summary-cards>article:nth-child(2){background:var(--vl-espresso-800);border-color:var(--vl-espresso-800)}.monthly-summary-cards>article:nth-child(3){background:var(--vl-espresso-700);border-color:var(--vl-espresso-700)}.app.app .booking-batch-customer>.booking-journey-item:nth-of-type(even) .booking-history-inline .detail-action{color:var(--vl-mocha-600)}.app.app .booking-batch-customer>.booking-journey-item:nth-of-type(even) .booking-history-inline .detail-action:hover:not(:disabled){color:var(--vl-text-inverse);background:var(--vl-mocha-600)}.app.app button:is(.danger,.danger-outline,.delete-button,.team-delete):hover:not(:disabled){background:#a63e48;color:#fff;border-color:#a63e48}.app .free-retouch-card{background:var(--vl-bg-surface);border-color:var(--vl-border)}.app.app :is(.stats>section,.free-retouch-stats>button,.at-stats>article,.ct-stats>.ct-stat){--vl-stat-bg:var(--vl-espresso-950);background:var(--vl-stat-bg);border-color:var(--vl-stat-bg);color:var(--vl-text-inverse);transition:background-color 180ms ease,border-color 180ms ease}.app.app :is(.stats>section,.free-retouch-stats>button,.at-stats>article,.ct-stats>.ct-stat):nth-child(3n+2){--vl-stat-bg:var(--vl-espresso-800)}.app.app :is(.stats>section,.free-retouch-stats>button,.at-stats>article,.ct-stats>.ct-stat):nth-child(3n){--vl-stat-bg:var(--vl-espresso-700)}.app.app :is(.stats>section,.free-retouch-stats>button,.at-stats>article,.ct-stats>.ct-stat) :is(span,strong,div){color:var(--vl-text-inverse)}.app.app :is(.stats>section,.free-retouch-stats>button,.at-stats>article,.ct-stats>.ct-stat) :is(p,small){color:var(--vl-text-inverse-muted)}.app.app :is(.stats>section,.free-retouch-stats>button,.at-stats>article,.ct-stats>.ct-stat) .ui-icon{color:var(--vl-accent)}.app.app :is(.free-retouch-stats>button,.ct-stats>button.ct-stat):hover:not(:disabled){background:var(--vl-mocha-600);border-color:var(--vl-accent);color:var(--vl-text-inverse)}.app.app .ct-stats>.ct-stat.ct-stat-selected{box-shadow:inset 0 0 0 2px var(--vl-accent);border-color:var(--vl-accent)}.app.app :is(.free-retouch-stats>button,.ct-stats>button.ct-stat):focus-visible{outline:2px solid var(--vl-accent);outline-offset:3px}@media(prefers-reduced-motion:reduce){.app.app :is(.stats>section,.free-retouch-stats>button,.at-stats>article,.ct-stats>.ct-stat){transition:none}}.app.app :is(.monthly-summary-cards,.stats,.free-retouch-stats)>.vl-signature-kpi{position:relative;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);transition:transform 280ms cubic-bezier(.2,.8,.2,1),box-shadow 280ms ease,filter 280ms ease}.vl-signature-kpi-icon{display:inline-flex;flex:none;align-items:center;transition:transform 280ms ease}@media(hover:hover)and (pointer:fine){.app.app :is(.monthly-summary-cards,.stats,.free-retouch-stats)>.vl-signature-kpi:hover{transform:translateY(-2px);box-shadow:inset 0 0 0 1px rgba(216,189,164,.53),0 9px 20px rgba(41,26,23,.14);filter:brightness(1.07)}.vl-signature-kpi:hover .vl-signature-kpi-icon{transform:translateY(-2px) scale(1.06)}.app.app .free-retouch-stats>button.vl-signature-kpi:hover:not(:disabled){background:var(--vl-stat-bg);border-color:var(--vl-stat-bg)}}@media(prefers-reduced-motion:reduce){.app.app :is(.monthly-summary-cards,.stats,.free-retouch-stats)>.vl-signature-kpi,.vl-signature-kpi-icon{transition:none}.app.app :is(.monthly-summary-cards,.stats,.free-retouch-stats)>.vl-signature-kpi:hover,.vl-signature-kpi:hover .vl-signature-kpi-icon{transform:none;filter:none}}.team-archive-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #e8dcd1}.team-archive-item p{margin:5px 0;font-size:12px}.team-archive-evidence{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;max-width:100%}.team-purge-summary dt{overflow-wrap:anywhere}.app .studio-sidebar .studio-nav-account{padding-top:10px}.app .studio-sidebar .studio-nav-account .profile{display:flex;gap:12px;align-items:center;padding:0 4px 16px;margin:0}.app .studio-sidebar .profile .avatar{width:36px;height:36px;min-width:36px;display:grid;place-items:center;border-radius:50%;background:#e9d8c8;color:#493027;font-size:13px}.app .studio-sidebar .profile>div:last-child{min-width:0}.app .studio-sidebar .profile b{color:#fffcf8;font-size:12px}.app .studio-sidebar .profile small{display:block;color:#d8bda4;font-size:11px;overflow-wrap:anywhere}.studio-account-links{border-top:1px solid #684739;padding-top:10px;display:grid;gap:5px}.app .studio-account-links>a,.app .studio-account-links>button{width:100%;display:flex;align-items:center;justify-content:flex-start;gap:12px;min-height:44px;padding:12px;border:0;border-radius:8px;color:#fffcf8;font-size:12px;text-decoration:none;background:transparent;text-align:left;line-height:20px}.app .studio-account-links svg{width:19px;height:19px;flex:none;color:#e8d5c5}.app .studio-account-links>button.studio-account-logout{background:transparent}.app .studio-account-links>button svg{color:#f0d4c6}.app .studio-account-links>a:hover,.app .studio-account-links>a:active{background:#493027}@media(hover:hover)and (pointer:fine){.app .studio-account-links>button.studio-account-logout:hover{background:#493027}}.app .studio-account-links>button.studio-account-logout:active{background:#493027}.app .studio-account-links :is(a,button):focus-visible{outline:2px solid #d8bda4;outline-offset:2px}.app .sidebar-logout-modal{width:420px;max-width:calc(100vw - 32px);padding:24px;border:1px solid #e7ddd2;border-radius:16px;background:#fffcf8;color:#382820;box-shadow:0 18px 50px #291a1726}.sidebar-logout-modal .promo-sheet-handle{display:none}.sidebar-logout-modal .promo-modal-header{position:relative;padding:0;border:0;align-items:flex-start}.sidebar-logout-modal .promo-modal-header>div{display:flex;flex-direction:column;padding:0;min-width:0}.sidebar-logout-modal .promo-modal-header h2{font-size:20px;line-height:1.4;margin:18px 0 10px;letter-spacing:-.3px}.sidebar-logout-modal .promo-modal-header p{font-size:13px;line-height:1.8;color:#806d61;margin:0}.sidebar-logout-icon{order:-1;display:grid;place-items:center;width:48px;height:48px;border-radius:10px;background:#f0e6dc;color:#765544}.sidebar-logout-icon svg{width:24px;height:24px}.sidebar-logout-modal .promo-modal-header>button{position:absolute;right:0;top:0;width:44px;height:44px;border:0;background:transparent;color:#806d61}.sidebar-logout-body:empty{display:none}.sidebar-logout-body p{font-size:12px;color:#963e31;line-height:1.7;margin:16px 0}.sidebar-logout-actions{display:flex;gap:10px;justify-content:flex-end;border-top:1px solid #e7ddd2;margin-top:24px;padding-top:18px}.sidebar-logout-actions button{min-height:44px;border:1px solid #e7ddd2;border-radius:8px;padding:10px 18px;font-size:12px;background:#fffcf8;color:#493027}.sidebar-logout-actions button.primary{background:#493027;border-color:#493027;color:#fffcf8}.sidebar-logout-actions button:disabled{opacity:.65;cursor:wait}@media(max-height:500px){.app .sidebar-logout-modal{max-height:calc(100dvh - 24px);overflow-y:auto;padding:18px}.sidebar-logout-modal .promo-modal-header h2{margin-top:10px}.sidebar-logout-actions{margin-top:14px;padding-top:12px}.app .sidebar.studio-sidebar{gap:10px;padding-top:12px;padding-bottom:12px}}@media(max-width:450px){.app .sidebar-logout-modal{padding:20px}.sidebar-logout-actions button{flex:1}}.booking-documentation{display:grid;gap:18px;margin:18px 0}.booking-notes{padding:16px 18px;border:1px solid #e7ddd2;border-radius:12px;background:#f5f1ec}.booking-section-eyebrow{font-size:10px;letter-spacing:1.2px;font-weight:600;color:#806d61}.booking-notes .booking-note{font-size:13px;line-height:1.7;margin:8px 0 0;overflow-wrap:anywhere}.booking-documentation .photo-panel{padding:20px;border:1px solid #d8bda4;border-radius:14px;background:#fff;color:#291a17}.photo-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.photo-panel-heading h3{font-size:17px!important;color:#291a17!important;text-transform:none!important;letter-spacing:-.3px!important;margin:7px 0!important}.photo-panel-heading p{font-size:12px;color:#684739;margin:0;line-height:1.7}.photo-panel-heading button{flex-shrink:0;min-height:44px}.photo-empty-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.photo-empty-pair:empty,.photo-grid:empty{display:none}.photo-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:155px;border:1px dashed #d8bda4;border-radius:10px;background:#f5f1ec;text-align:center;padding:16px}.photo-placeholder svg{width:27px;height:27px;color:#967662;margin-bottom:4px}.photo-placeholder strong{font-size:12px;font-weight:500;color:#493027}.photo-placeholder span{font-size:11px;color:#684739}.booking-documentation .photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px}.booking-documentation .photo-grid>div{min-width:0;border:1px solid #e7ddd2;border-radius:10px;overflow:hidden;background:#f5f1ec}.booking-documentation .photo-grid img{width:100%;height:180px;object-fit:contain;display:block}.booking-documentation .photo-grid small{display:block;font-size:11px;padding:10px;line-height:1.7}.booking-documentation .photo-grid>div>div{display:flex;gap:8px;padding:0 10px 10px}.photo-upload-form{border-top:1px solid #e7ddd2;margin-top:20px;padding-top:18px;display:grid;gap:14px}.photo-upload-heading h4{font-size:14px;margin:0 0 5px}.photo-upload-heading span{font-size:11px;color:#806d61}.photo-upload-form label{display:grid;gap:8px;font-size:12px}.photo-upload-form input[type=file]{width:100%;min-height:46px;background:#f5f1ec;border:1px solid #e7ddd2;border-radius:8px;padding:10px;font-size:12px;box-sizing:border-box}.photo-upload-form input[type=file]::file-selector-button{border:0;background:#493027;color:#fffcf8;padding:8px 12px;border-radius:6px;margin-right:10px;cursor:pointer}.photo-upload-form label.consent{display:flex;align-items:flex-start;gap:10px;font-size:11px;line-height:1.7}.photo-upload-form .consent input{width:18px;height:18px;min-height:0;flex-shrink:0;margin:0}.photo-upload-form>button{justify-self:end;min-height:44px}.app .booking-documentation .photo-unlock{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;padding:18px;margin:0;border:1px solid #e7ddd2;border-radius:12px;background:#f8f4f0;min-width:0;color:#382820}.photo-pin-title{display:flex;gap:12px;align-items:center}.photo-pin-title>span{display:grid;place-items:center;width:38px;height:38px;background:#291a17;color:#fff;border-radius:9px;flex:none}.photo-pin-title svg{width:18px;height:18px}.photo-pin-title h4{font-size:14px;margin:0 0 5px;color:#382820}.photo-pin-title p{margin:0;font-size:12px;line-height:1.7;color:#806d61}.app .booking-documentation .photo-unlock>label{font-size:12px;font-weight:500;display:block;margin:0;color:#382820}.photo-pin-input{position:relative;min-width:0}.booking-documentation .photo-pin-input input{width:100%;min-width:0;height:46px;box-sizing:border-box;border:1px solid #e7ddd2;border-radius:8px;background:#fff;padding:0 54px 0 12px;font-size:16px;color:#382820;box-shadow:none}.photo-pin-input input::placeholder{color:#806d61;opacity:1}.photo-pin-input input:focus{outline:2px solid #967662;outline-offset:2px}.booking-documentation .photo-pin-input>button{position:absolute;right:1px;top:1px;width:44px;height:44px;display:grid;place-items:center;padding:10px;border:0;border-radius:7px;background:transparent;color:#765544}.photo-pin-input button svg{width:20px;height:20px}.photo-pin-actions{display:flex;justify-content:flex-end;gap:10px}.booking-documentation .photo-pin-actions button{min-height:44px;padding:10px 16px;border:1px solid #493027;border-radius:8px;background:#493027;color:#fff;font-size:12px;line-height:20px}.photo-unlock button:focus-visible{outline:2px solid #967662;outline-offset:2px}.photo-unlock button:disabled{cursor:wait;opacity:.7}.photo-unlock .photo-pin-error{font-size:12px;line-height:1.7;color:#943e34;border:1px solid #d9aaa3;border-radius:8px;padding:10px;margin:0}.photo-unlock>small{font-size:11px;color:#806d61;line-height:1.7}@media(max-width:430px){.photo-pin-actions button{width:100%}}@media(max-width:600px){.booking-documentation .photo-panel{padding:16px}.photo-panel-heading{align-items:flex-start;flex-direction:column;gap:12px}.photo-panel-heading button{width:100%}.photo-placeholder{min-height:130px;padding:12px 8px}.photo-empty-pair,.booking-documentation .photo-grid{gap:10px}.photo-upload-form>button{width:100%}}@media(max-width:360px){.photo-empty-pair,.booking-documentation .photo-grid{grid-template-columns:1fr}}.photo-categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.photo-category{min-width:0}.photo-category>h4{font-size:12px;font-weight:500;color:#291a17;margin:0 0 10px}.booking-documentation .photo-category .photo-grid{grid-template-columns:1fr;margin-top:0}.photo-upload-form>.primary{background:#493027}.photo-category .photo-placeholder{min-height:145px}@media(max-width:600px){.photo-categories{gap:10px}}@media(max-width:360px){.photo-categories{grid-template-columns:1fr}}.treatment-photo-card{border:1px solid #d8bda4;border-radius:10px;overflow:hidden;background:#fff;min-width:0}.app .photo-thumbnail{display:grid;place-items:center;padding:0;width:100%;height:180px;border:0;border-radius:0;background:#f5f1ec;overflow:hidden}.booking-documentation .photo-thumbnail img{display:block;width:100%;height:180px;object-fit:contain}.treatment-photo-card>small{display:block;padding:10px;color:#684739;font-size:10px;line-height:1.7;overflow-wrap:anywhere}.treatment-photo-actions{display:flex;flex-wrap:wrap;gap:8px;padding:0 10px 10px}.app .treatment-photo-actions>button{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 10px;min-height:44px;min-width:44px;border:1px solid #e7ddd2;border-radius:7px;background:#fff;color:#493027;font-size:11px}.treatment-photo-actions svg{width:16px;height:16px}.photo-image-failure{display:grid;place-items:center;padding:20px;min-height:100px;font-size:12px;text-align:center;line-height:1.7;color:#684739}.photo-notice{font-size:12px;color:#245238;padding:12px;border:1px solid #bdd1bf;border-radius:8px;background:#edf4ed}.photo-upload-preview{margin:0;border:1px solid #d8bda4;border-radius:10px;background:#f5f1ec;padding:10px}.photo-upload-preview img{width:100%;height:180px;object-fit:contain;display:block}.photo-upload-preview figcaption{font-size:11px;color:#684739;margin-top:8px}.photo-upload-actions,.photo-delete-actions{display:flex;gap:10px;justify-content:flex-end}.photo-upload-actions button,.photo-delete-actions button{min-height:44px;padding:10px 14px}.photo-delete-actions{padding:18px 0 0;border-top:1px solid #e7ddd2;margin-top:18px}.app .photo-delete-modal{width:420px;max-width:calc(100vw - 32px);padding:24px;border-radius:16px;background:#fffcf8}.app .photo-delete-modal .photo-delete-confirm{border:1px solid #be7979;background:#be7979;color:#fff;border-radius:8px}.app .photo-delete-modal .photo-delete-confirm:disabled{cursor:wait;opacity:.65}.app .treatment-photo-viewer{width:min(1000px,calc(100vw - 32px));max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);padding:20px;display:flex;flex-direction:column;gap:16px;background:#291a17;border:1px solid #765544;border-radius:14px;color:#fff}.treatment-photo-viewer .promo-sheet-handle{display:none}.treatment-photo-viewer .promo-modal-header{padding:0;flex-shrink:0;border:0}.app .treatment-photo-viewer .promo-modal-header :is(h2,p,button){color:#fff}.app .treatment-photo-viewer .promo-modal-header button{background:#493027;border:1px solid #a78874;min-width:44px;min-height:44px}.photo-viewer-stage{display:grid;place-items:center;min-height:0;flex:1;overflow:hidden;background:#382521;border-radius:8px}.photo-viewer-stage img{display:block;width:100%;height:min(60dvh,650px);object-fit:contain}.photo-viewer-stage .photo-image-failure{color:#fff}.photo-viewer-actions{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;flex-shrink:0}.photo-viewer-actions>div{display:flex;gap:8px}.app .photo-viewer-actions button{min-height:44px;padding:10px 14px;border:1px solid #a78874;border-radius:8px;color:#fff;background:#493027;font-size:12px}.photo-viewer-actions button:focus-visible{outline:2px solid #fff;outline-offset:2px}@media(max-width:430px){.app .treatment-photo-viewer{padding:14px;gap:12px}.photo-viewer-actions{flex-direction:column}.photo-viewer-actions>div button{flex:1}.photo-upload-actions button,.photo-delete-actions button{flex:1}.app .treatment-photo-actions>button{flex:1}}@media(max-height:500px){.app .treatment-photo-viewer{gap:8px;padding:12px}.photo-viewer-stage img{height:42dvh}.treatment-photo-viewer .promo-modal-header h2{font-size:16px}.treatment-photo-viewer .promo-modal-header p{font-size:11px}}.photo-access-badge{font-size:10px;border:1px solid #e7ddd2;background:#f8f4f0;color:#806d61;border-radius:20px;padding:6px 10px;white-space:nowrap;flex:none}.photo-access-badge.is-active{background:#edf4ed;color:#245238;border-color:#c4d6c6}.photo-access-actions{display:flex;justify-content:flex-end;gap:10px;margin-bottom:18px}.photo-access-actions button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 14px}.photo-access-actions svg{width:16px;height:16px}.documentation-v2 .photo-category>h4{display:flex;justify-content:space-between;gap:8px}.photo-category h4>span{font-size:10px;color:#806d61;font-weight:400}.documentation-v2 .photo-placeholder{background:#f8f4f0;min-height:120px;border-color:#e7ddd2}.treatment-photo-card>strong{display:block;font-size:11px;font-weight:500;padding:10px 10px 0;color:#382820}.photo-compare-trigger{width:100%;min-height:44px;margin-top:18px;background:#f8f4f0;color:#493027;border:1px solid #e7ddd2;border-radius:8px;font-size:12px}.app .photo-upload-modal,.app .photo-comparison{width:600px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);padding:24px;border-radius:14px;background:#fff;overflow-y:auto}.app .photo-upload-modal .photo-upload-form{padding:16px 0 0;margin:0;border:0;display:grid;gap:14px}.photo-field-hint{font-size:11px;color:#806d61;margin:0}.photo-upload-modal .photo-upload-actions{border-top:1px solid #e7ddd2;padding-top:16px}.photo-upload-modal .photo-upload-preview img{height:200px;object-fit:contain}.photo-compare-selects,.photo-compare-images{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}.photo-compare-selects label{display:grid;gap:8px;min-width:0;font-size:12px}.photo-compare-images figure{min-width:0;margin:0;background:#f5f1ec;border:1px solid #e7ddd2;border-radius:10px;padding:10px}.photo-compare-images figcaption{font-size:12px;margin-bottom:10px;color:#493027}.photo-compare-images img{display:block;width:100%;height:270px;object-fit:contain}.photo-compare-images .photo-image-failure{height:270px}.app .photo-comparison{width:900px}.photo-comparison>p{font-size:12px;line-height:1.7;color:#806d61;padding:16px 0}.photo-upload-preview figcaption{overflow-wrap:anywhere}@media(max-width:600px){.documentation-v2 .photo-panel-heading{flex-direction:row}.photo-access-actions button{flex:1}.app .photo-upload-modal,.app .photo-comparison{padding:18px}.photo-compare-selects{grid-template-columns:1fr}.photo-compare-images{gap:8px}.photo-compare-images img{height:180px}.photo-compare-images figure{padding:6px}.photo-compare-images figcaption{font-size:10px}.documentation-v2 .photo-categories{grid-template-columns:1fr}}.multi-booking-treatment-row .multi-booking-note{display:grid;gap:8px;margin:14px 0 0;font-size:12px;color:#382820;min-width:0}.multi-booking-note-label em{font-size:11px;font-style:normal;font-weight:400;color:#806d61}.multi-booking-note textarea{width:100%;min-height:74px;box-sizing:border-box;resize:vertical;padding:11px 12px;border:1px solid #e7ddd2;border-radius:8px;background:#fffcf8;color:#382820;font:inherit;font-size:13px;line-height:1.7}.multi-booking-note textarea:focus{outline:2px solid #967662;outline-offset:2px}.multi-booking-note small{font-size:10px;font-weight:400;line-height:1.6;color:#806d61}.booking-notes .booking-note{white-space:pre-wrap}@media(max-width:900px),(pointer:coarse){.multi-booking-note textarea{font-size:16px}}
