:root{--accent: #b52672;--accent-hover: #9c2063;--accent-soft: #fdf0f7;--navy-900: #191e49;--navy-800: #1d2141;--navy-700: #2b2e5c;--navy-600: #3b4065;--navy-500: #525c82;--navy-400: #697498;--navy-300: #787992;--navy-125: #f1f2f6;--blue: #2e3289;--focus: #2e3289;--white: #ffffff;--bg-gray: #f5f6f8;--bg-grid: #f0f0f0;--border: #d6dce8;--border-strong: #dfe2e8;--text: #1d2141;--text-muted: #697498;--text-faint: #98a0b8;--text-invert: #ffffff;--green: #17a673;--green-ink: #0c6b49;--green-soft: #e8f7f1;--amber: #fa904b;--amber-soft: #ffe7d7;--amber-ink: #8a4416;--red: #db2e04;--red-soft: #fdece7;--teal: #9dddE0;--pink: #f7b6d2;--pink-soft: #fbdeeb;--purple: #cdbcf5;--highlight: #99d7dc;--marker-yellow: #ffe97f;--grid-hour: rgba(25, 30, 73, .17);--grid-quarter: rgba(25, 30, 73, .07);--font: "Mulish", "Muli", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--fs-xs: 11px;--fs-sm: 12px;--fs-base: 14px;--fs-md: 16px;--fs-lg: 17px;--fs-xl: 22px;--fs-2xl: 28px;--radius: 4px;--radius-md: 8px;--radius-pill: 100px;--shadow: 0 2px 10px 0 rgba(0, 0, 0, .05);--shadow-lg: 0 8px 32px 0 rgba(25, 30, 73, .18);--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--dur-fast: .15s;--dur-base: .2s;--nav-height: 56px;--detail-width: 360px}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}:root{--sa-top: env(safe-area-inset-top, 0px);--sa-right: env(safe-area-inset-right, 0px);--sa-bottom: env(safe-area-inset-bottom, 0px);--sa-left: env(safe-area-inset-left, 0px);--vh: 1vh}body{margin:0;font-family:var(--font);font-size:var(--fs-base);color:var(--text);background:var(--white);-webkit-font-smoothing:antialiased}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}button{cursor:pointer}a{color:var(--blue);text-decoration:none}.app{display:flex;flex-direction:column;height:100%}.app-body{flex:1;min-height:0;display:flex}.nav{height:var(--nav-height);flex:none;background:var(--navy-900);color:var(--text-invert);display:flex;align-items:center;padding:0 var(--sp-5);gap:var(--sp-2);-webkit-user-select:none;user-select:none}.nav-logo{width:26px;height:26px;margin-right:var(--sp-3);flex:none}.nav-items{display:flex;align-items:center;gap:2px}.nav-item{display:flex;align-items:center;gap:var(--sp-2);height:36px;padding:0 var(--sp-4);border:0;border-radius:var(--radius-pill);background:transparent;color:#ffffffe0;font-size:var(--fs-md);font-weight:500;white-space:nowrap;transition:background var(--dur-fast),color var(--dur-fast)}.nav-item:hover{background:#ffffff14;color:#fff}.nav-item.is-active{background:#ffffff24;color:#fff}.nav-badge{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--accent);color:#fff;font-size:12px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums}.nav-spacer{flex:1}.nav-icon-btn{width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:#ffffffd9}.nav-icon-btn:hover{background:#ffffff1a;color:#fff}.nav-divider{width:1px;height:26px;background:#ffffff2e;margin:0 var(--sp-3)}.nav-user{display:flex;align-items:center;gap:var(--sp-3);background:transparent;border:0;color:#fff;padding:0}.nav-user-name{font-size:var(--fs-base);font-weight:700;line-height:1.2;text-align:left}.nav-user-org{font-size:var(--fs-sm);font-style:italic;color:#ffffffb8;line-height:1.2;text-align:left}.account{position:relative}.account-menu{position:absolute;top:calc(100% + var(--sp-2));right:0;z-index:130;width:min(20rem,calc(100vw - 2 * var(--sp-3)));padding:var(--sp-3) var(--sp-4);background:var(--white);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);text-align:left}.account-menu dl{display:grid;grid-template-columns:auto 1fr;gap:.35rem var(--sp-3);margin:0;font-size:var(--fs-sm)}.account-menu dt{color:var(--text-muted);white-space:nowrap}.account-menu dd{margin:0;text-align:right;word-break:break-word}.account-note{margin:var(--sp-3) 0 0;padding-top:var(--sp-3);border-top:1px solid var(--border);font-size:var(--fs-sm);color:var(--text-muted);line-height:1.4}.split{flex:1;min-width:0;display:flex}.split-main{flex:1;min-width:0;display:flex;flex-direction:column}.split-detail{width:380px;flex:none;border-left:1px solid var(--border);background:var(--white);overflow-y:auto}.split-detail.is-floor{width:260px}.floor{padding:var(--sp-4) 0 var(--sp-6)}.floor-head{padding:0 var(--sp-4) var(--sp-3);font-size:var(--fs-md);font-weight:800}.floor-empty{padding:0 var(--sp-4);margin:0;color:var(--text-muted);font-size:var(--fs-sm)}.floor-group{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-4) var(--sp-4) var(--sp-1);font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.floor-group span{font-size:var(--fs-base);font-weight:800;letter-spacing:0;color:var(--text)}.floor-row{display:flex;align-items:baseline;gap:var(--sp-2);padding:var(--sp-2) var(--sp-4);border-top:1px solid var(--navy-125)}.floor-who{flex:1;min-width:0;display:flex;flex-direction:column}.floor-who strong{font-size:var(--fs-base);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.floor-who em{font-style:normal;font-size:var(--fs-sm);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.floor-who .floor-doing{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.3}.floor-who .floor-add{align-self:flex-start;margin-top:var(--sp-2)}.floor-who .floor-by{font-size:var(--fs-xs);color:var(--text-faint)}.orphan-bar{display:flex;flex-direction:column;gap:1px;background:var(--amber-soft);border-bottom:1px solid var(--amber)}.orphan-row{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-4)}.orphan-icon{flex:none;color:var(--amber-ink)}.orphan-what{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;color:var(--amber-ink)}.orphan-what strong{font-size:var(--fs-base);font-weight:700}.orphan-what em{font-style:normal;font-size:var(--fs-sm);font-weight:500;opacity:.85}.orphan-error{padding:0 var(--sp-4) var(--sp-2);font-size:var(--fs-sm);color:var(--red)}.floor-time{flex:none;font-size:var(--fs-sm);font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-muted)}.floor-row.is-ready{background:var(--pink-soft)}.floor-row.is-ready .floor-time{color:var(--text)}.walkin-search{width:100%;font-size:var(--fs-lg);padding:var(--sp-3) var(--sp-4)}.walkin-results{display:flex;flex-direction:column;margin:var(--sp-3) 0}.walkin-result{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-3) var(--sp-3);border:0;border-radius:var(--radius-md);background:transparent;text-align:left}.walkin-result:hover{background:var(--navy-125)}.walkin-result em{font-style:normal;color:var(--text-muted);font-size:var(--fs-sm)}.walkin-empty{padding:var(--sp-3);color:var(--text-muted)}.walkin-new{display:flex;align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-3) var(--sp-4);border:1px dashed var(--border);border-radius:var(--radius-md);background:transparent;text-align:left;color:var(--pink)}.walkin-new:hover{background:var(--pink-soft)}.walkin-new span{display:flex;flex-direction:column}.walkin-new em{font-style:normal;color:var(--text-muted);font-size:var(--fs-sm)}.walkin-fields{display:flex;flex-direction:column;gap:var(--sp-3);margin:var(--sp-3) 0 var(--sp-4)}.walkin-fields .input{width:100%}.walkin-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--sp-3);margin-top:var(--sp-3)}.walkin-tile{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-height:62px;padding:var(--sp-3) var(--sp-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);font-weight:700;text-align:left;line-height:1.25}.walkin-tile:hover{border-color:var(--pink)}.walkin-tile.is-on{border-color:var(--pink);background:var(--pink-soft);color:var(--pink)}.walkin-tile.is-other{border-style:dashed;font-weight:600;color:var(--text-muted)}.walkin-tile-price{font-size:var(--fs-sm);font-weight:600;color:var(--text-muted)}.walkin-tile.is-on .walkin-tile-price{color:var(--pink)}.walkin-choices{display:flex;flex-direction:column;gap:var(--sp-2);margin-top:var(--sp-3);max-height:56vh;overflow-y:auto}.walkin-choices.is-grouped{flex-direction:row;gap:var(--sp-5);align-items:flex-start}.walkin-choice-col{display:flex;flex-direction:column;gap:var(--sp-2);flex:1;min-width:0}.walkin-choice{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);text-align:left;font-weight:600}.walkin-choice:hover{border-color:var(--pink);background:var(--pink-soft)}.walkin-choice em{font-style:normal;color:var(--text-muted);font-size:var(--fs-sm);flex:none}.walkin-note{flex:1;margin:0;color:var(--text-muted);font-size:var(--fs-sm);line-height:1.35}.floor-row .checkin-remove{align-self:center;margin-right:0}.floor-row:hover .checkin-remove{color:var(--text-muted)}.floor-row.is-link{width:100%;font:inherit;color:inherit;border:0;border-top:1px solid var(--navy-125);border-radius:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;cursor:pointer}.floor-row.is-link:hover{background:color-mix(in srgb,var(--pink) 60%,var(--white))}.floor-row.is-link:active{background:color-mix(in srgb,var(--pink) 75%,var(--white))}.floor-ready{display:flex;flex-direction:column;background:var(--pink-soft)}.floor-party.is-ticket{background:var(--pink-soft);border-color:var(--pink)}.floor-party.is-ticket .floor-ready+.floor-ready{border-top:1px solid var(--pink)}.floor-party.is-shared .floor-ready,.floor-party.is-shared .floor-row.is-ready,.floor-party.is-shared .floor-row.is-link:hover,.floor-party.is-shared .floor-row.is-link:active{background:transparent}.floor-party.is-shared:has(.floor-row.is-link:hover){background:color-mix(in srgb,var(--pink) 60%,var(--white))}.floor-party.is-shared:has(.floor-row.is-link:active){background:color-mix(in srgb,var(--pink) 75%,var(--white))}.floor-party.is-shared .floor-row.is-drop{background:color-mix(in srgb,var(--pink) 85%,var(--white))}.floor-party-note{margin:0;padding:6px var(--sp-3) 8px;font-size:var(--fs-xs);font-weight:600;line-height:1.35;color:var(--amber-ink);background:var(--amber-soft)}.floor-arrivals{margin:var(--sp-2) 6px;padding:0 6px 6px;border:1px solid var(--border);border-radius:var(--radius-md)}.floor-arrivals-head{padding:6px var(--sp-2) 4px;font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.floor-arrivals .floor-party{margin:0 0 6px}.floor-arrivals .floor-party:last-child{margin-bottom:0}.floor-row.is-ready.is-link{cursor:grab;touch-action:none}.floor-row.is-carried{opacity:.45;cursor:grabbing}.floor-row.is-drop{background:color-mix(in srgb,var(--pink) 85%,var(--white));box-shadow:inset 0 0 0 2px var(--accent)}.floor-party-switch{display:block;margin:6px var(--sp-3) 8px auto;border:1px solid var(--border);border-radius:var(--radius-pill);padding:4px 12px;background:var(--white);font:inherit;font-size:var(--fs-sm);font-weight:700;color:var(--accent);cursor:pointer}.floor-party-switch:hover{background:var(--accent-soft)}.floor-party-switch:active{background:color-mix(in srgb,var(--pink) 45%,var(--white))}.floor-carry{position:fixed;left:0;top:0;z-index:200;will-change:transform;pointer-events:none;border-radius:var(--radius-md);background:var(--pink-soft);box-shadow:0 10px 24px #191e4947;transform:rotate(-1.5deg);overflow:hidden}.floor-carry[data-over=no] .on-target,.floor-carry[data-over=yes] .off-target{display:none}.floor-carry-tag{display:block;padding:4px var(--sp-3) 6px;border-top:1px solid var(--pink);font-size:var(--fs-xs);font-weight:700;color:var(--accent)}.floor-right{flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:1px}.floor-money{font-size:var(--fs-sm);font-weight:800;font-variant-numeric:tabular-nums;color:var(--navy-900)}.floor-go{flex:none;align-self:center;color:var(--text-muted)}.client-edit-btn{flex:none;display:inline-flex;align-items:center;margin-left:6px;padding:2px;border:0;border-radius:var(--radius-sm, 4px);background:transparent;color:var(--text-faint);vertical-align:middle;cursor:pointer}.client-edit-btn:hover{background:var(--accent-soft);color:var(--accent)}.mine-go{flex:none;color:var(--text-faint)}.logged-detail{padding:0 var(--sp-4)}.logged-detail-head{display:flex;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-4)}.logged-detail-mark{flex:none;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:var(--navy-125);color:var(--navy-800);font-size:17px;font-weight:800}.logged-detail-mark.is-bonus{background:var(--accent-soft);color:var(--accent)}.logged-detail-mark.is-booked{background:var(--amber-soft);color:var(--amber-ink)}.logged-detail-mark.is-ticket{background:var(--navy-125);color:var(--text-muted)}.logged-detail-who{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.logged-detail-name{font-size:var(--fs-lg);font-weight:800;color:var(--navy-900);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logged-detail-kind{font-size:var(--fs-sm);color:var(--text-muted)}.logged-detail-close{flex:none;display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:50%;background:var(--navy-125);color:var(--navy-800)}.logged-detail-title{margin-bottom:6px;font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.logged-panel{margin-bottom:var(--sp-4);padding:4px var(--sp-3);border-radius:var(--radius-md);background:var(--bg-gray)}.logged-line{padding:8px 0}.logged-line+.logged-line{border-top:1px solid var(--navy-125)}.logged-line-head{display:flex;justify-content:space-between;gap:var(--sp-3);font-size:var(--fs-base);font-weight:700;color:var(--navy-900)}.logged-line-head span:last-child,.logged-line-option span:last-child{flex:none;font-variant-numeric:tabular-nums}.logged-line-option{display:flex;justify-content:space-between;gap:var(--sp-3);margin-top:2px;padding-left:var(--sp-3);font-size:var(--fs-sm);color:var(--text-muted)}.logged-line-total{display:flex;justify-content:space-between;gap:var(--sp-3);padding:10px 0;border-top:1px solid var(--navy-125);font-size:var(--fs-base);font-weight:800;color:var(--navy-900)}.logged-line-total span:last-child{font-variant-numeric:tabular-nums}.logged-kv{display:flex;justify-content:space-between;gap:var(--sp-3);padding:8px 0;font-size:var(--fs-base);color:var(--navy-900)}.logged-kv+.logged-kv{border-top:1px solid var(--navy-125)}.logged-kv span:last-child{flex:none;color:var(--text-muted);font-variant-numeric:tabular-nums}.logged-detail-empty{margin:0 0 var(--sp-4);padding:var(--sp-3);border-radius:var(--radius-md);background:var(--bg-gray);font-size:var(--fs-sm);color:var(--text-muted)}.logged-detail-done{width:100%;min-height:46px;border:0;border-radius:var(--radius-pill);background:var(--navy-125);font:inherit;font-size:var(--fs-md);font-weight:700;color:var(--navy-800);cursor:pointer}.logged-detail-done:active{background:var(--navy-125)}.toolbar{flex:none;height:68px;display:flex;align-items:center;gap:var(--sp-3);padding:0 var(--sp-6)}.toolbar-spacer{flex:1}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);height:36px;padding:0 25px;border:0;border-radius:var(--radius-pill);font-size:var(--fs-md);font-weight:500;white-space:nowrap;transition:background var(--dur-fast),color var(--dur-fast)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-secondary{background:var(--navy-125);color:var(--text)}.btn-secondary:hover:not(:disabled){background:var(--border)}.btn-navy{background:var(--navy-900);color:#fff}.btn-navy:hover:not(:disabled){background:var(--navy-700)}.btn-ghost{background:transparent;color:var(--text);padding:0 10px;height:32px;border-radius:var(--radius)}.btn-ghost:hover:not(:disabled){background:var(--navy-125)}.btn-outline{background:transparent;color:var(--text);border:1px solid var(--border)}.btn-outline:hover:not(:disabled){background:var(--navy-125)}.btn-danger{background:var(--red);color:#fff}.btn-danger:hover:not(:disabled){filter:brightness(.92)}.btn-block{width:100%}.btn-lg{height:44px;font-size:var(--fs-md)}.search{position:relative;width:320px}.search svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.search input{width:100%;height:36px;border:0;border-radius:25px;background:var(--navy-125);padding:0 34px 0 40px;font-size:var(--fs-md);outline:none}.search input::placeholder{color:var(--text-muted)}.search input:focus{box-shadow:0 0 0 2px #2e328940}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--sp-4)}.field label{font-size:var(--fs-sm);font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.field input,.field select,.field textarea{height:38px;border:1px solid var(--border);border-radius:var(--radius);padding:0 12px;font-size:var(--fs-base);outline:none;background:#fff}.field textarea{height:auto;padding:10px 12px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--focus);box-shadow:0 0 0 2px #2e328926}.field-row{display:flex;gap:var(--sp-3)}.field-row>.field{flex:1;min-width:0}.field-row>.field input,.field-row>.field select,.field-row>.field textarea{width:100%;min-width:0}.segmented{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;height:36px}.segmented button{border:0;background:transparent;padding:0 var(--sp-5);font-size:var(--fs-md);font-weight:500;color:var(--text)}.segmented button.is-active{background:var(--navy-900);color:#fff}.table{flex:1;min-height:0;overflow-y:auto}.table-head,.table-row{display:grid;align-items:center;gap:var(--sp-4);padding:0 var(--sp-6)}.table-head{height:34px;font-size:var(--fs-base);color:var(--text-muted);position:sticky;top:0;background:#fff;z-index:1}.table-row{min-height:53px;border-top:1px solid var(--navy-125);font-size:var(--fs-md);cursor:pointer;text-align:left;background:#fff;border-left:0;border-right:0;border-bottom:0;width:100%;color:inherit;font-family:inherit}.table-row:hover{background:var(--bg-gray)}.table-row.is-selected{background:var(--accent-soft)}.cell-right{text-align:right}.cell-ok,.cell-warn{display:flex;flex-direction:column;line-height:1.25;font-weight:700}.cell-ok em,.cell-warn em{font-style:normal;font-size:var(--fs-sm);font-weight:600;opacity:.75}.cell-ok{color:var(--green)}.cell-warn{color:var(--amber-ink)}.cell-muted{color:var(--text-muted)}.cell-link{color:var(--blue)}.cell-name{display:flex;align-items:center;gap:var(--sp-3);font-weight:700}.status{display:inline-flex;align-items:center;gap:var(--sp-2)}.status-dot{width:10px;height:10px;border-radius:50%;background:var(--border);flex:none}.status-dot.open{background:var(--amber)}.status-dot.closed{background:var(--border)}.status-dot.voided{background:var(--red)}.empty{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-4);padding:var(--sp-8);text-align:center;color:var(--text-muted);font-size:var(--fs-md);line-height:1.5}.empty svg{color:var(--navy-900)}.cal{flex:1;min-height:0;display:flex;flex-direction:column}.cal-toolbar{flex:none;display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-4) var(--sp-6)}.cal-date{display:flex;align-items:center;gap:6px;font-size:var(--fs-lg);font-weight:700;background:transparent;border:0;padding:0}.cal-nav-btn{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--border);border-radius:50%;background:#fff;color:var(--text)}.cal-nav-btn:hover{background:var(--navy-125)}.cal-staff{flex:none;display:flex;position:sticky;top:0;z-index:3;background:#fff;width:max-content;min-width:100%;border-bottom:1px solid var(--border);margin-bottom:10px}.cal-staff-gutter{width:62px;flex:none;position:sticky;left:0;z-index:1;background:#fff}.cal-staff-col{flex:1 0 0;min-width:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;height:58px;font-size:var(--fs-md);font-weight:600;overflow:hidden}.cal-staff-btn{display:flex;align-items:center;gap:var(--sp-2);border:0;background:transparent;color:inherit;font:inherit;padding:2px 6px;border-radius:var(--radius);max-width:100%}.cal-staff-btn:not(.as-text):hover{background:var(--navy-125)}.cal-staff-hours{font-size:10px;font-weight:600;color:var(--text-faint);white-space:nowrap}.cal-staff-off{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint)}.cal-staff-select{height:36px;border:1px solid var(--border);border-radius:var(--radius);padding:0 10px;font-weight:600;background:#fff}.cal-grid-wrap{flex:1;min-height:0;overflow-x:auto;overflow-y:hidden;position:relative}.cal-grid{display:flex;width:max-content;min-width:100%;-webkit-user-select:none;user-select:none}.cal-gutter{width:62px;flex:none;position:sticky;left:0;background:#fff;z-index:2}.cal-gutter-slot{height:calc(60px * var(--cal-ppm, 1));position:relative}.cal-gutter-slot span{position:absolute;top:-8px;right:10px;font-size:var(--fs-sm);color:var(--text-muted)}.cal-col{flex:1 0 0;min-width:120px;position:relative;border-left:1px solid var(--grid-hour);background:var(--bg-grid)}.cal-slot{height:calc(60px * var(--cal-ppm, 1));border-bottom:1px solid var(--grid-hour);background-image:linear-gradient(to bottom,transparent 14px,var(--grid-quarter) 14px 15px,transparent 15px 29px,var(--grid-quarter) 29px 30px,transparent 30px 44px,var(--grid-quarter) 44px 45px,transparent 45px);cursor:pointer}.cal-slot.is-open{background-color:#fff}.cal-now{position:absolute;left:-1px;right:0;height:1px;background:var(--red);z-index:1;pointer-events:none}.cal-appt{position:absolute;border-radius:2px;padding:4px 6px;overflow:hidden;font-size:var(--fs-xs);line-height:1.25;cursor:pointer;background:var(--marker-yellow);color:var(--navy-800);text-align:left;border:0;font-family:inherit}.cal-appt:hover{filter:brightness(.96)}.cal-appt{cursor:grab;touch-action:none}.cal-appt.is-dragging{cursor:grabbing;opacity:.9;box-shadow:0 6px 20px #191e494d}.cal-grid-wrap.is-dragging{cursor:grabbing}.cal-grid-wrap.is-dragging .cal-slot{pointer-events:none}.cal-appt-service{display:flex;align-items:baseline;gap:2px;text-transform:uppercase;font-size:9px;letter-spacing:.02em}.cal-appt-service-name{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-appt-client{font-weight:700;font-size:var(--fs-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-appt-time{font-size:10px;color:var(--navy-500);white-space:nowrap}.cal-appt.is-checked-in{background:var(--pink)}.cal-appt.is-started{background:var(--pink);box-shadow:inset 3px 0 0 var(--green)}.cal-live{position:absolute;z-index:0;display:flex;flex-direction:column;overflow:hidden;padding:4px 6px;border-radius:2px;border:1px solid var(--green);background:color-mix(in srgb,var(--green) 12%,var(--white));color:var(--green-ink);font-size:var(--fs-xs);line-height:1.25;pointer-events:none;text-align:left;font-family:inherit}.cal-live.is-link{pointer-events:auto;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;font-size:var(--fs-xs)}.cal-live.is-link:hover{filter:brightness(.95)}.cal-live.is-link:active{filter:brightness(.9)}.cal-live-who{flex:none;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-live.is-done{border-color:var(--pink);background:var(--pink-soft);color:var(--navy-800)}.cal-live.is-paid{border-style:solid;border-color:var(--border);background:var(--navy-125);color:var(--text)}.cal-appt-seq{flex:none;font-weight:700;opacity:.8}.cal-appt.is-selected{outline:2px solid var(--navy-900);outline-offset:-2px}.cal-badge-new{position:absolute;right:4px;bottom:2px;font-size:9px;font-weight:700;color:var(--navy-500)}.register{flex:1;min-height:0;display:flex}.register-catalog{flex:1;min-width:0;display:flex;flex-direction:column;border-right:1px solid var(--border)}.catalog-tabs{flex:none;display:flex;gap:var(--sp-1);padding:0 var(--sp-6) var(--sp-3)}.catalog-tab{height:32px;padding:0 var(--sp-4);border:0;border-radius:var(--radius-pill);background:transparent;font-size:var(--fs-base);font-weight:600;color:var(--text-muted)}.catalog-tab.is-active{background:var(--navy-125);color:var(--text)}.catalog-grid{flex:1;min-height:0;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:var(--sp-3);padding:var(--sp-2) var(--sp-6) var(--sp-6);align-content:start}.catalog-card{border:1px solid var(--border);border-radius:var(--radius-md);background:#fff;padding:var(--sp-3) var(--sp-4);text-align:left;display:flex;flex-direction:column;gap:4px;height:108px;transition:border-color var(--dur-fast),box-shadow var(--dur-fast)}.catalog-card:hover{border-color:var(--accent);box-shadow:var(--shadow)}.catalog-card-name{font-size:var(--fs-base);font-weight:700;line-height:1.3;flex:none;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.catalog-card-meta{flex:none;font-size:var(--fs-sm);color:var(--text-muted)}.catalog-card-price{margin-top:auto;font-size:var(--fs-md);font-weight:700}.catalog-group-label{grid-column:1 / -1;font-size:var(--fs-sm);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);padding-top:var(--sp-3)}.ticket{width:400px;flex:none;display:flex;flex-direction:column;background:var(--white)}.ticket-header{flex:none;padding:var(--sp-5) var(--sp-5) var(--sp-3);border-bottom:1px solid var(--navy-125)}.ticket-title{font-size:var(--fs-xl);font-weight:800;margin:0 0 var(--sp-3)}.ticket-client{display:flex;align-items:center;gap:var(--sp-3);width:100%;border:1px dashed var(--border);border-radius:var(--radius);background:#fff;padding:var(--sp-2) var(--sp-3);font-size:var(--fs-base);color:var(--text-muted);min-height:44px}.ticket-client:hover{border-color:var(--accent);color:var(--text)}.ticket-client.has-client{border-style:solid;color:var(--text);font-weight:700}.ticket-lines{flex:1;min-height:0;overflow-y:auto;padding:var(--sp-2) var(--sp-5)}.ticket-line{display:flex;gap:var(--sp-3);padding:var(--sp-3) 0;border-bottom:1px solid var(--navy-125)}.ticket-line-main{flex:1;min-width:0}.ticket-line-name{font-size:var(--fs-base);font-weight:700;line-height:1.3}.ticket-line-meta{font-size:var(--fs-sm);color:var(--text-muted);margin-top:2px;display:flex;align-items:center;gap:var(--sp-2)}.ticket-line-staff{border:0;background:transparent;color:var(--blue);padding:0;font-size:var(--fs-sm);text-decoration:underline dotted}.ticket-line-price{font-size:var(--fs-base);font-weight:700;white-space:nowrap}.ticket-line-remove{border:0;background:transparent;color:var(--text-faint);padding:0 2px;display:grid;place-items:center}.ticket-line-remove:hover{color:var(--red)}.ticket-totals{flex:none;padding:var(--sp-4) var(--sp-5);border-top:1px solid var(--border);background:var(--bg-gray)}.total-row{display:flex;justify-content:space-between;font-size:var(--fs-base);padding:3px 0;color:var(--text-muted)}.total-row.grand{font-size:var(--fs-lg);font-weight:800;color:var(--text);border-top:1px solid var(--border);margin-top:var(--sp-2);padding-top:var(--sp-3)}.total-row button{border:0;background:transparent;color:var(--blue);padding:0;font-size:var(--fs-base)}.ticket-actions{flex:none;padding:var(--sp-4) var(--sp-5);display:flex;flex-direction:column;gap:var(--sp-2);border-top:1px solid var(--border)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#191e496b;display:grid;place-items:center;z-index:100;padding:var(--sp-5)}.modal{background:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-lg);width:100%;max-width:520px;max-height:calc(90 * var(--vh));display:flex;flex-direction:column}.modal-header{flex:none;display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-5) var(--sp-5) var(--sp-3)}.modal-header h2{margin:0;font-size:var(--fs-xl);font-weight:800;flex:1}.modal-close{border:0;background:transparent;color:var(--text-muted);display:grid;place-items:center;width:32px;height:32px;border-radius:50%}.modal-close:hover{background:var(--navy-125)}.modal-body{flex:1;min-height:0;overflow-y:auto;padding:var(--sp-2) var(--sp-5) var(--sp-5)}.modal-footer{flex:none;display:flex;justify-content:flex-end;gap:var(--sp-3);padding:var(--sp-4) var(--sp-5);border-top:1px solid var(--navy-125)}.detail{padding:var(--sp-6)}.detail-head{display:flex;align-items:center;gap:var(--sp-4);margin-bottom:var(--sp-5)}.detail-name{font-size:var(--fs-xl);font-weight:800;margin:0;line-height:1.2}.detail-sub{font-size:var(--fs-base);color:var(--text-muted)}.detail-section{border-top:1px solid var(--navy-125);padding:var(--sp-4) 0}.detail-section h4{margin:0 0 var(--sp-3);font-size:var(--fs-sm);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.detail-kv{display:flex;justify-content:space-between;gap:var(--sp-4);padding:5px 0;font-size:var(--fs-base)}.detail-kv span:first-child{color:var(--text-muted)}.detail-kv span:last-child{font-weight:600;text-align:right}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:var(--sp-4);padding:0 var(--sp-6) var(--sp-6)}.stat{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--sp-4) var(--sp-5);background:#fff}.stat-label{font-size:var(--fs-sm);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.stat-value{font-size:var(--fs-2xl);font-weight:800;margin-top:6px}.stat-note{font-size:var(--fs-sm);color:var(--text-muted);margin-top:2px}.section-title{font-size:var(--fs-lg);font-weight:800;padding:0 var(--sp-6) var(--sp-3)}.pill{display:inline-flex;align-items:center;height:22px;padding:0 10px;border-radius:var(--radius-pill);font-size:var(--fs-sm);font-weight:700;background:var(--navy-125);color:var(--navy-500)}.pill.green{background:var(--green-soft);color:var(--green)}.pill.amber{background:var(--amber-soft);color:#b5591f}.pill.red{background:var(--red-soft);color:var(--red)}.scroll{flex:1;min-height:0;overflow-y:auto}.client-search{position:relative}.client-search input{width:100%;height:38px;border:1px solid var(--border);border-radius:var(--radius);padding:0 38px 0 12px;font-size:var(--fs-base);outline:none;background:#fff}.client-search input:focus{border-color:var(--focus);box-shadow:0 0 0 2px #2e328926}.client-search-add{position:absolute;right:6px;top:5px;width:28px;height:28px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:var(--text-muted)}.client-search-add:hover{background:var(--navy-125);color:var(--accent)}.client-search-list{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:20;background:#fff;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);max-height:264px;overflow-y:auto;padding:4px 0}.client-option{display:block;width:100%;border:0;background:transparent;text-align:left;padding:8px 14px;font-family:inherit;color:inherit}.client-option.is-active{background:var(--highlight)}.client-option-name{display:flex;align-items:center;gap:8px;font-size:var(--fs-md);font-weight:700;line-height:1.35}.client-option-meta{font-size:var(--fs-base);color:var(--text-muted);line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-option.is-add{border-top:1px solid var(--navy-125);margin-top:4px;padding-top:12px;padding-bottom:12px}.client-option.is-add .client-option-name{color:var(--accent)}.client-chip{display:flex;align-items:center;gap:var(--sp-3);border:1px solid var(--border);border-radius:var(--radius);padding:7px 8px 7px 12px;background:#fff;min-height:38px}.client-chip-main{flex:1;min-width:0}.client-chip-name{font-size:var(--fs-md);font-weight:700;line-height:1.3}.client-chip-meta{font-size:var(--fs-sm);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-chip-clear{flex:none;width:26px;height:26px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:var(--text-muted)}.client-chip-clear:hover{background:var(--navy-125);color:var(--red)}.client-new{border:1px solid var(--border);border-radius:var(--radius);padding:var(--sp-3) var(--sp-3) var(--sp-2);background:var(--bg-gray)}.client-new-head,.new-client-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--sp-3);font-size:var(--fs-base)}.client-new .field{margin-bottom:var(--sp-3)}.svc-row{display:grid;grid-template-columns:1fr 120px 110px 30px;gap:var(--sp-2);align-items:center;margin-bottom:var(--sp-2)}.svc-row:has(.svc-row-seq){grid-template-columns:20px 1fr 120px 110px 30px}.svc-row-seq{width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:var(--navy-125);color:var(--text-muted);font-size:var(--fs-xs);font-weight:700}.svc-row select{height:36px;min-width:0;border:1px solid var(--border);border-radius:var(--radius);padding:0 8px;background:#fff;font-size:var(--fs-base)}.svc-row-remove{width:30px;height:30px;display:grid;place-items:center;border:0;border-radius:var(--radius);background:transparent;color:var(--text-faint)}.svc-row-remove:hover:not(:disabled){background:var(--red-soft);color:var(--red)}.svc-row-remove:disabled{opacity:.3;cursor:not-allowed}.svc-add{height:34px;padding:0 14px;font-size:var(--fs-base)}.svc-hint{margin:var(--sp-2) 0 0;font-size:var(--fs-sm);color:var(--text-muted);line-height:1.45}.appt-item{padding:var(--sp-2) 0;border-bottom:1px solid var(--navy-125)}.appt-item:last-of-type{border-bottom:0}.appt-item-head{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-base)}.appt-item-seq{width:18px;height:18px;flex:none;display:grid;place-items:center;border-radius:50%;background:var(--navy-125);color:var(--text-muted);font-size:10px;font-weight:700}.appt-item-name{flex:1;font-weight:700}.appt-item-price{font-weight:600}.appt-item-meta{display:flex;align-items:center;gap:6px;margin-top:3px;font-size:var(--fs-sm);color:var(--text-muted)}.options{position:relative;margin-top:4px}.option-row{display:flex;align-items:baseline;gap:6px;padding:2px 0;font-size:var(--fs-sm);color:var(--navy-600)}.option-name{flex:1;min-width:0}.option-price{font-weight:600;color:var(--text-muted);white-space:nowrap}.option-remove{display:grid;place-items:center;width:16px;height:16px;border:0;border-radius:50%;background:transparent;color:var(--text-faint);padding:0}.option-remove:hover{background:var(--red-soft);color:var(--red)}.option-add{border:0;background:transparent;padding:2px 0;font-size:var(--fs-sm);font-weight:600;color:var(--blue)}.option-add:hover{text-decoration:underline}.option-add-big{margin-top:var(--sp-2)}.option-menu{position:fixed;top:0;left:0;z-index:110;background:#fff;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.option-search{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--navy-125);color:var(--text-muted)}.option-search input{flex:1;min-width:0;border:0;outline:none;font-size:var(--fs-base);background:transparent}.option-list{max-height:260px;overflow-y:auto;padding-bottom:4px}.option-group{padding:10px 12px 4px;font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;color:var(--text-muted)}.option-item{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-3);width:100%;border:0;background:transparent;text-align:left;padding:7px 12px;font-family:inherit;font-size:var(--fs-base);color:inherit}.option-item:hover{background:var(--highlight)}.option-item-price{font-weight:600;color:var(--text-muted);white-space:nowrap}.option-empty{padding:14px 12px;font-size:var(--fs-sm);color:var(--text-muted)}.ticket-clients{display:flex;flex-wrap:wrap;gap:6px}.ticket-client-chip{display:flex;align-items:center;gap:6px;border:1px solid var(--border);border-radius:var(--radius-pill);background:#fff;padding:5px 12px;font-size:var(--fs-base);font-weight:700;color:var(--text)}.ticket-client-chip:hover:not(:disabled){border-color:var(--accent)}.ticket-client-chip.is-active{background:var(--accent);border-color:var(--accent);color:#fff}.ticket-client-sub{font-weight:500;opacity:.75;font-size:var(--fs-sm)}.ticket-client-add{display:flex;align-items:center;gap:5px;border:1px dashed var(--border);border-radius:var(--radius-pill);background:transparent;padding:5px 12px;font-size:var(--fs-base);color:var(--text-muted)}.ticket-client-add:hover{border-color:var(--accent);color:var(--accent)}.ticket-group-head{display:flex;justify-content:space-between;align-items:baseline;padding:var(--sp-3) 0 2px;font-size:var(--fs-sm);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.register-target{flex:none;margin:0 var(--sp-6) var(--sp-2);padding:7px 12px;border-radius:var(--radius);background:var(--accent-soft);color:var(--navy-700);font-size:var(--fs-sm)}.book-later-step{padding:var(--sp-4) var(--sp-4) 0}.book-later-guest{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);padding:var(--sp-2) 0;border-bottom:1px solid var(--border);margin-bottom:var(--sp-2);font-size:var(--fs-md)}.book-later-guest-form{display:flex;flex-direction:column;gap:var(--sp-2)}.book-later-guest-actions{display:flex;justify-content:flex-end;gap:var(--sp-2)}.lbl-sm{font-size:var(--fs-xs);font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--sp-2)}.find-box{display:flex;align-items:center;gap:var(--sp-2);padding:0 var(--sp-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);color:var(--text-muted)}.find-box input{flex:1;min-width:0;border:0;outline:none;padding:11px 0;font:inherit;font-size:var(--fs-md);background:none;color:var(--text)}.find-hint{margin:var(--sp-2) 0 0;font-size:var(--fs-sm);color:var(--text-muted)}.find-row{display:block;width:100%;margin-top:6px;padding:12px 13px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);font:inherit;font-size:var(--fs-md);font-weight:700;color:inherit;text-align:left;cursor:pointer}.find-row:active{background:var(--bg-gray)}.picked-row{display:flex;align-items:baseline;justify-content:space-between;width:100%;padding:12px 13px;border:1px solid var(--accent);border-radius:var(--radius-md);background:var(--accent-soft);font:inherit;color:inherit;text-align:left;cursor:pointer}.picked-row strong{font-size:var(--fs-md)}.picked-row span{font-size:var(--fs-sm);color:var(--accent);font-weight:700}.chip-date{font:inherit;font-size:var(--fs-md);color:var(--text)}.slot-row{display:flex;flex-wrap:wrap;gap:6px}.tech .slot-row .book-slot{min-width:74px;min-height:44px;padding:0 10px;font-size:var(--fs-base)}.tech .chip-row .chip{height:40px;padding:0 14px;font-size:var(--fs-md)}.fld-select{width:100%;padding:11px 10px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);font:inherit;font-size:var(--fs-md);color:var(--text)}.book-later-pick{text-align:left}.book-later-more{margin-top:var(--sp-3)}.book-later-foot{padding:var(--sp-5) var(--sp-4) var(--sp-6)}.who-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.who-btn{min-height:46px;padding:0 12px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);font:inherit;font-size:var(--fs-md);font-weight:700;color:inherit;cursor:pointer}.who-btn:active{background:var(--bg-gray)}.set-group{padding:var(--sp-4) var(--sp-4) 0}.set-row{display:flex;align-items:center;gap:var(--sp-3);width:100%;padding:12px 13px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);font:inherit;color:inherit;text-align:left}.set-row.is-tappable{cursor:pointer}.set-row.is-tappable:active{background:var(--bg-gray)}.set-row-icon{display:grid;place-items:center;flex:none;width:32px;height:32px;border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--accent)}.set-row-main{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.set-row-main strong{font-size:var(--fs-md)}.set-row-main span{font-size:var(--fs-sm);color:var(--text-muted);line-height:1.35}.set-note{margin:var(--sp-2) 0 0;padding:0 2px;font-size:var(--fs-sm);line-height:1.45;color:var(--text-muted)}.seg{display:flex;flex:none;border:1px solid var(--border);border-radius:var(--radius-pill);overflow:hidden}.seg-btn{min-height:40px;padding:0 12px;border:0;background:var(--white);font:inherit;font-size:var(--fs-sm);font-weight:700;color:var(--text-muted);cursor:pointer;white-space:nowrap}.seg-btn.is-on{background:var(--accent);color:var(--white)}.sw{display:flex;align-items:center;flex:none;width:52px;height:32px;padding:3px;border-radius:var(--radius-pill);background:var(--navy-200, #cfd3e2);transition:background .12s ease}.sw.is-on{background:var(--green, #17a673)}.sw-dot{width:26px;height:26px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000047;transition:transform .12s ease}.sw.is-on .sw-dot{transform:translate(20px)}.booked-done{padding:var(--sp-6) var(--sp-4);text-align:center}.booked-when{margin:0 0 var(--sp-4);font-size:var(--fs-md);font-weight:700;color:var(--text-muted)}.booked-card{display:flex;flex-direction:column;gap:3px;padding:var(--sp-4);border:1px solid var(--pink);border-radius:var(--radius-md);background:var(--pink-soft);text-align:left}.booked-card strong{font-size:var(--fs-lg)}.booked-card span{font-size:var(--fs-sm);color:var(--navy-800)}.booked-note{margin:var(--sp-4) 0;font-size:var(--fs-sm);color:var(--text-muted)}.book-month{font-size:var(--fs-md);font-weight:800}.book-week{flex:none;display:flex;gap:6px;padding:0 var(--sp-5) var(--sp-4)}.book-day{flex:1;padding:7px 0;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);text-align:center;cursor:pointer;font-family:inherit;color:inherit}.book-day strong{display:block;font-size:var(--fs-lg);font-weight:800}.book-day span{font-size:var(--fs-xs);letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.book-day.is-on{border-color:var(--navy-900);background:var(--navy-900);color:var(--white)}.book-day.is-on span{color:#ffffffbf}.book-grid{flex:1;min-height:0;overflow-y:auto;padding:0 var(--sp-5) var(--sp-6)}.book-empty{padding:var(--sp-6) 0;text-align:center;color:var(--text-muted)}.book-techrow{display:grid;grid-template-columns:96px 1fr;gap:var(--sp-3);align-items:start;padding:var(--sp-3) 0;border-bottom:1px solid var(--navy-125)}.book-tech{padding-top:4px;font-size:var(--fs-base);font-weight:800}.book-tech em{display:block;font-style:normal;font-size:var(--fs-xs);font-weight:600;color:var(--text-muted)}.book-slots{display:flex;flex-wrap:wrap;gap:5px}.book-slot{padding:5px 9px;border:1px solid color-mix(in srgb,var(--green) 35%,var(--white));border-radius:var(--radius-md);background:var(--green-soft);color:var(--green-ink);font-family:inherit;font-size:var(--fs-sm);font-weight:700;font-variant-numeric:tabular-nums;cursor:pointer}.book-slot:hover:not(:disabled){border-color:var(--green)}.book-slot.is-off-shift{border-style:dashed;background:var(--white);color:var(--green-ink)}.book-slot.is-busy,.book-slot.is-past{border-color:var(--border);background:var(--navy-125);color:var(--text-faint);cursor:default}.book-slot.is-busy{text-decoration:line-through}.book-slot.is-on{border-color:var(--accent);background:var(--accent);color:var(--white)}.book-picked{margin-top:var(--sp-3);padding:var(--sp-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-gray)}.book-picked strong{display:block;font-size:var(--fs-md)}.book-picked span{font-size:var(--fs-sm);color:var(--text-muted)}.book-cats{display:flex;flex-wrap:wrap;gap:5px;margin:var(--sp-3) 0}.book-matches{max-height:220px;overflow-y:auto;border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:var(--sp-4)}.book-match{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-3);width:100%;padding:9px 11px;border:0;border-bottom:1px solid var(--navy-125);background:var(--white);font-family:inherit;font-size:var(--fs-base);color:inherit;text-align:left;cursor:pointer}.book-match:last-child{border-bottom:0}.book-match:hover{background:var(--bg-gray)}.book-match em{flex:none;font-style:normal;font-size:var(--fs-sm);color:var(--text-muted);font-variant-numeric:tabular-nums}.book-when{margin-top:var(--sp-3);font-size:var(--fs-sm);font-weight:600;color:var(--text-muted)}.inline-select{border:0;background:transparent;color:var(--blue);font-size:var(--fs-sm);font-family:inherit;padding:0;max-width:110px}.ticket-line-name .appt-item-seq{margin-right:6px;vertical-align:1px}.split-summary{border:1px solid var(--border);border-radius:var(--radius);padding:var(--sp-2) var(--sp-3);background:var(--bg-gray)}.checkin-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding-bottom:var(--sp-4);margin-bottom:var(--sp-4);border-bottom:1px solid var(--navy-125)}.checkin-state{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-md);font-weight:600}.checkin-state .status-dot{background:var(--teal)}.checkin-state .status-dot.is-in{background:var(--pink)}.btn-checkin{height:32px;padding:0 18px;font-size:var(--fs-sm);font-weight:700;letter-spacing:.04em;text-transform:uppercase}.checkin-failed{margin:calc(var(--sp-4) * -1) 0 var(--sp-4);font-size:var(--fs-sm);line-height:1.35;color:#8a1c13}.detail-select{width:100%;height:38px;border:1px solid var(--border);border-radius:var(--radius);padding:0 10px;background:#fff}.notice{margin-top:var(--sp-3);padding:10px 12px;border-radius:var(--radius);background:var(--amber-soft);color:var(--amber-ink);font-size:var(--fs-sm);line-height:1.45}.sched-row{display:grid;grid-template-columns:96px 96px 1fr 1fr;align-items:center;gap:var(--sp-3);padding:var(--sp-2) 0;border-bottom:1px solid var(--navy-125)}.sched-row:last-child{border-bottom:0}.sched-day{font-weight:700;font-size:var(--fs-base)}.sched-toggle{display:flex;align-items:center;gap:6px;font-size:var(--fs-sm);color:var(--text-muted)}.sched-toggle input{accent-color:var(--accent);width:15px;height:15px}.sched-row select{height:34px;border:1px solid var(--border);border-radius:var(--radius);padding:0 8px;background:#fff;font-size:var(--fs-base)}.sched-online{display:flex;align-items:flex-start;gap:var(--sp-3);margin-bottom:var(--sp-4);padding:var(--sp-3);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-gray);cursor:pointer}.sched-online input{margin-top:3px;flex:none;width:18px;height:18px;accent-color:var(--accent)}.sched-online span{display:flex;flex-direction:column;gap:2px}.sched-online em{font-style:normal;font-size:var(--fs-sm);color:var(--text-muted);line-height:1.4}.sched-off{margin-top:var(--sp-4)}.sched-off .sched-row{grid-template-columns:96px 96px 1fr 1fr auto}.sched-add{display:flex;align-items:center;gap:var(--sp-2);margin-top:var(--sp-3)}.sched-add input[type=date]{height:34px;border:1px solid var(--border);border-radius:var(--radius);padding:0 8px;background:#fff;font-size:var(--fs-base)}.hrs-lede{margin:var(--sp-4) var(--sp-4) 0;font-size:var(--fs-sm);line-height:1.45;color:var(--text-muted)}.day-list{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);overflow:hidden}.day-row{display:flex;align-items:center;gap:var(--sp-3);width:100%;min-height:56px;padding:10px 12px;border:0;border-bottom:1px solid var(--navy-125);background:transparent;font:inherit;color:inherit;text-align:left;cursor:pointer}.day-row:last-child{border-bottom:0}.day-row:active{background:var(--navy-125)}.day-when{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0}.day-when strong{font-size:var(--fs-md)}.day-when span{font-size:var(--fs-sm);color:var(--text-muted)}.day-what{display:flex;flex-direction:column;align-items:flex-end;gap:3px;flex:none;text-align:right}.day-hours{font-size:var(--fs-base);font-weight:700;white-space:nowrap}.day-what.is-off .day-hours{color:var(--text-muted)}.day-go{flex:none;color:var(--text-faint)}.hrs-anyday{position:relative}.hrs-anyday input[type=date]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;padding:0;border:0;opacity:0;cursor:pointer}.hrs-sheet .start-option,.hrs-sheet .hrs-pick,.hrs-sheet .hrs-done{width:calc(100% - var(--sp-4) * 2);margin-left:var(--sp-4);margin-right:var(--sp-4)}.hrs-now{display:block;margin-top:2px;font-size:var(--fs-sm);font-weight:600;color:var(--text-muted)}.hrs-sheet .start-option.is-on{border-color:var(--accent);background:var(--accent-soft)}.hrs-sheet .start-option span{flex:1;min-width:0}.hrs-sheet .opt-on{flex:none;color:var(--accent)}.hrs-pick{display:flex;flex-direction:column;gap:var(--sp-2)}.hrs-pick label{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius);background:#fff}.hrs-pick label>span{font-size:15px;font-weight:700}.hrs-pick select{height:44px;min-width:128px;border:1px solid var(--border);border-radius:var(--radius);padding:0 8px;background:#fff;font:inherit;font-size:15px;font-weight:700;color:var(--navy-900)}.hrs-done{min-height:50px;margin-top:var(--sp-3);border:0;border-radius:var(--radius);background:var(--accent);color:#fff;font:inherit;font-size:16px;font-weight:800}.hrs-flash{position:fixed;left:50%;bottom:calc(18px + var(--sa-bottom));transform:translate(-50%);z-index:120;display:flex;align-items:center;gap:8px;max-width:calc(100% - 32px);padding:10px 18px;border-radius:var(--radius-pill);background:var(--navy-900);color:#fff;font-size:var(--fs-sm);font-weight:700;box-shadow:var(--shadow-lg)}.hrs-flash.is-error{background:var(--red)}.sched-note{margin:var(--sp-4) 0 0;font-size:var(--fs-sm);color:var(--text-muted);line-height:1.45}.detail-origin{display:flex;align-items:center;flex-wrap:wrap;gap:var(--sp-2);margin-top:6px}.detail-origin .origin-tag{margin-left:0}.detail-booked{font-size:var(--fs-sm);color:var(--text-muted)}.cal-badge-src{position:absolute;top:4px;left:4px;width:7px;height:7px;border-radius:50%;box-shadow:0 0 0 1.5px var(--white)}.cal-badge-src.is-paid{background:var(--accent)}.cal-badge-src.is-online{background:var(--text-faint)}.origin-tag.is-online{background:var(--navy-125);color:var(--text-muted)}.origin-tag{display:inline-flex;align-items:center;margin-left:6px;padding:1px 7px;border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent);font-size:var(--fs-xs);font-weight:800;letter-spacing:.03em;white-space:nowrap;vertical-align:1px}.cal-online-bar{flex:none;margin:0 var(--sp-4) var(--sp-2);border:1px solid var(--accent);border-radius:var(--radius-md);background:var(--accent-soft);overflow:hidden}.cal-online-head{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);color:var(--accent);font-size:var(--fs-sm);font-weight:800;letter-spacing:.02em}.cal-online-dismiss{margin-left:auto;display:inline-flex;align-items:center;padding:2px;border:0;border-radius:var(--radius);background:none;color:var(--accent);cursor:pointer}.cal-online-dismiss:hover{background:#b526721f}.cal-online-row{display:flex;align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-2) var(--sp-3);border:0;border-top:1px solid rgba(181,38,114,.2);background:var(--white);font-size:var(--fs-sm);text-align:left;cursor:pointer}.cal-online-row:hover{background:var(--accent-soft)}.cal-online-verb{flex:none;padding:1px 7px;border-radius:var(--radius-pill);background:var(--accent);color:var(--text-invert);font-size:var(--fs-xs);font-weight:800}.cal-online-verb.is-changed{background:var(--amber-soft);color:var(--amber-ink)}.cal-online-verb.is-cancelled{background:var(--red-soft);color:var(--red)}.cal-online-who{font-weight:800;color:var(--text);white-space:nowrap}.cal-online-what{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted)}.cal-online-when{flex:none;color:var(--text);font-weight:700;white-space:nowrap}.cal-online-go{flex:none;color:var(--accent);font-weight:800}.cal-appt.is-fresh{box-shadow:0 0 0 2px var(--white),0 0 0 4px var(--accent)}.hist{margin:0;padding:0;list-style:none}.hist-row{position:relative;display:flex;align-items:flex-start;gap:var(--sp-3);padding:0 0 var(--sp-3) var(--sp-4);border-left:2px solid var(--border)}.hist-row:last-child{padding-bottom:0;border-left-color:transparent}.hist-dot{position:absolute;left:-5px;top:4px;width:8px;height:8px;border-radius:50%;background:var(--border);box-shadow:0 0 0 2px var(--white)}.hist-row:first-child .hist-dot{background:var(--accent)}.hist-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.hist-verb{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-sm);font-weight:700;color:var(--text)}.hist-online{padding:0 6px;border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent);font-size:var(--fs-xs);font-weight:800}.hist-detail{font-size:var(--fs-sm);color:var(--text-muted);line-height:1.4}.hist-who{font-size:var(--fs-xs);color:var(--text-faint)}.hist-when{flex:none;padding-top:1px;font-size:var(--fs-xs);color:var(--text-faint);white-space:nowrap}.hist.is-tech{margin-top:var(--sp-1)}.hist.is-tech .hist-row{padding-bottom:var(--sp-2)}.price-group{padding:var(--sp-5) var(--sp-6) var(--sp-2);font-size:var(--fs-sm);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.price-row{display:grid;grid-template-columns:1fr 90px 110px auto auto;align-items:center;gap:var(--sp-4);padding:0 var(--sp-6);min-height:46px;border-top:1px solid var(--navy-125);font-size:var(--fs-md)}.price-row-name{font-weight:600}.price-row-meta{font-size:var(--fs-base);color:var(--text-muted)}.price-row-amount{text-align:right;font-weight:700}.price-editor{border-top:1px solid var(--navy-125);background:var(--bg-gray);padding:var(--sp-4) var(--sp-6)}.price-editor .field{margin-bottom:var(--sp-2)}.price-editor-foot{display:flex;align-items:center;gap:var(--sp-4)}.price-btn{display:inline-flex;align-items:baseline;gap:6px;border:0;background:transparent;padding:1px 4px;margin:-1px -4px;border-radius:var(--radius);font:inherit;color:inherit}.price-btn:hover{background:var(--navy-125);box-shadow:inset 0 0 0 1px var(--border)}.price-was{text-decoration:line-through;color:var(--text-faint);font-weight:400}.price-quoted{color:var(--accent);font-weight:600}.price-edit{display:inline-flex;align-items:center;gap:6px}.price-edit input{width:84px;height:28px;border:1px solid var(--focus);border-radius:var(--radius);padding:0 6px;font-size:var(--fs-base);text-align:right;outline:none}.price-reset{border:0;background:transparent;padding:0;font-size:var(--fs-sm);color:var(--blue)}.ticket-line-net{font-size:var(--fs-sm);color:var(--text-muted);font-weight:600;margin-top:2px}.cal-date-wrap{position:relative}.datepicker{position:absolute;top:calc(100% + 8px);left:0;z-index:50;width:300px;padding:var(--sp-4);background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.dp-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--sp-3)}.dp-nav{width:30px;height:30px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:var(--text)}.dp-nav:hover{background:var(--navy-125)}.dp-title{font-size:var(--fs-lg);font-weight:700}.dp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.dp-dow{display:grid;place-items:center;height:28px;font-size:var(--fs-sm);font-weight:700;color:var(--text-muted)}.dp-day{height:34px;border:0;border-radius:var(--radius);background:transparent;font-size:var(--fs-md);color:var(--text)}.dp-day:hover{background:var(--navy-125)}.dp-day.is-outside{color:var(--text-faint)}.dp-day.is-today{box-shadow:inset 0 0 0 1px var(--accent);font-weight:700}.dp-day.is-selected{background:var(--navy-900);color:#fff;font-weight:700}.dp-day:has(.dp-dots){height:auto;min-height:40px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:var(--sp-1) 0}.dp-dots{display:flex;gap:2px;height:4px}.dp-dot{width:4px;height:4px;border-radius:50%;background:var(--accent)}.dp-day.is-selected .dp-dot{background:#fff}.dp-day.is-off{background:var(--navy-125);color:var(--text-faint)}.dp-weeks{display:flex;align-items:center;gap:4px;margin-top:var(--sp-4);padding-top:var(--sp-3);border-top:1px solid var(--navy-125)}.dp-week-btn{width:38px;height:34px;border:1px solid var(--border);border-radius:var(--radius-md);background:#fff;font-size:var(--fs-md)}.dp-week-btn:hover{border-color:var(--accent);color:var(--accent)}.dp-weeks-label{font-size:var(--fs-base);color:var(--text-muted);margin-left:2px}.staffpicker{flex:none;display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:0 var(--sp-6) var(--sp-3)}.staffpicker-label{font-size:var(--fs-sm);color:var(--text-muted);margin-right:2px}.staff-chip{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px 0 5px;border:1px solid var(--border);border-radius:var(--radius-pill);background:#fff;font-size:var(--fs-base);font-weight:600;color:var(--text);transition:border-color var(--dur-fast),box-shadow var(--dur-fast)}.staff-chip:hover{border-color:var(--navy-400)}.staff-chip.is-active{border-color:var(--red);box-shadow:0 0 0 1px var(--red)}.tech{flex:1;min-height:0;width:100%;max-width:480px;margin:0 auto;overflow-y:auto;background:#fff;-webkit-overflow-scrolling:touch;padding-bottom:var(--sa-bottom)}@media(min-width:481px){.tech{border-left:1px solid var(--border);border-right:1px solid var(--border)}}.tech-head{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:var(--sp-3);background:var(--navy-900);color:#fff;padding:var(--sp-4) var(--sp-4);padding-top:calc(var(--sp-4) + var(--sa-top))}.tech-who,.tech-back{display:flex;align-items:center;gap:var(--sp-3);border:0;background:transparent;color:#fff;padding:0;font-size:var(--fs-md);font-weight:600}.tech-who-name{font-size:var(--fs-lg);font-weight:800;line-height:1.2;text-align:left}.tech-head-actions{display:flex;align-items:center;gap:var(--sp-2);margin-left:auto}.tech-notes{display:grid;place-items:center;width:32px;min-height:32px;border:1px solid rgba(255,255,255,.35);background:transparent;color:#fff;border-radius:var(--radius-sm)}.owner-day{padding:var(--sp-5) var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-3);max-width:34rem;color:var(--text-muted);line-height:1.5}.owner-day p{margin:0}.tech-lang{border:1px solid rgba(255,255,255,.35);background:transparent;color:#fff;font-family:inherit;font-size:var(--fs-sm);font-weight:800;letter-spacing:.04em;padding:5px 10px;border-radius:var(--radius-sm);min-height:32px}.tech-datebar{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--navy-125)}.tech-datebar button{border:0;background:transparent;padding:var(--sp-3) var(--sp-4);color:var(--text);min-height:48px}.tech-date{flex:1;font-size:var(--fs-md);font-weight:700}.tech-summary{display:flex;align-items:baseline;justify-content:space-between;padding:var(--sp-3) var(--sp-4);background:var(--bg-gray);font-size:var(--fs-md);color:var(--text-muted)}.tech-summary strong{font-size:var(--fs-xl);color:var(--text)}.tech-list{display:flex;flex-direction:column}.tech-row{display:flex;align-items:stretch;gap:var(--sp-3);width:100%;border:0;border-bottom:1px solid var(--navy-125);background:#fff;text-align:left;padding:var(--sp-3) var(--sp-4);min-height:76px;font-family:inherit}.tech-row.is-flat{cursor:default}.tech-row.is-flat:active{background:inherit}.tech-row:active{background:var(--navy-125)}.tech-row-time{flex:none;width:72px;display:flex;flex-direction:column;gap:2px;color:var(--text);white-space:nowrap}.tech-row-time strong{font-size:var(--fs-md);font-weight:800}.tech-row-time span{font-size:var(--fs-sm);color:var(--text-muted)}.tech-row-bar{flex:none;width:4px;border-radius:2px;background:var(--teal)}.tech-row-bar.is-in{background:var(--pink)}.tech-row-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.tech-row-service{font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tech-row-client{font-size:var(--fs-lg);font-weight:700;line-height:1.2}.tech-row-options{font-size:var(--fs-sm);color:var(--accent);font-weight:600}.tech-row-right{flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:4px}.tech-row-price{font-size:var(--fs-md);font-weight:700}.tech-row-in{display:inline-flex;align-items:center;gap:3px;font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;color:var(--accent)}.tech-row-in.is-now{color:var(--amber-ink)}.tech-row-in.is-done{color:var(--text-faint)}.tech-row-bar.is-now{background:var(--amber-soft)}.tech-row-bar.is-done{background:var(--border)}.tech-row-by{display:block;font-size:var(--fs-xs);font-weight:600;color:var(--text-faint)}.tech-empty{padding:var(--sp-8) var(--sp-4);text-align:center;color:var(--text-muted)}.tech-status{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-4) var(--sp-4) 0;font-size:var(--fs-md);font-weight:600}.tech-status .status-dot{background:var(--teal)}.tech-status .status-dot.is-in{background:var(--pink)}.tech-client{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4) 0}.tech-client-main{flex:1;min-width:0}.tech-client-name{font-size:var(--fs-2xl);font-weight:800;line-height:1.15}.tech-client-date{font-size:var(--fs-base);color:var(--text-muted)}.tech-meta{padding:var(--sp-2) var(--sp-4) 0;font-size:var(--fs-md);color:var(--text-muted)}.tech-section-title{padding:var(--sp-5) var(--sp-4) var(--sp-2);font-size:var(--fs-sm);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.tech-service{padding:var(--sp-3) var(--sp-4);border-top:1px solid var(--navy-125)}.tech-service.is-mine{border-left:3px solid var(--accent);background:var(--accent-soft)}.tech-service-head{display:flex;justify-content:space-between;gap:var(--sp-3);align-items:baseline}.tech-service-name{font-size:var(--fs-md);font-weight:700}.tech-service-price{font-weight:700;white-space:nowrap}.tech-service-meta{font-size:var(--fs-base);color:var(--text-muted);margin-top:2px}.tech-option{display:flex;justify-content:space-between;gap:var(--sp-3);margin-top:4px;font-size:var(--fs-base);color:var(--navy-600)}.tech-total{display:flex;justify-content:space-between;align-items:baseline;padding:var(--sp-4);border-top:1px solid var(--border);background:var(--bg-gray);font-size:var(--fs-md);color:var(--text-muted)}.tech-total strong{font-size:var(--fs-xl);color:var(--text)}.tech-note{margin:0 var(--sp-4) var(--sp-2);padding:var(--sp-3);border-radius:var(--radius);background:var(--amber-soft);color:#7a3f14;font-size:var(--fs-md);line-height:1.45}.tech-note.is-client{background:var(--navy-125);color:var(--navy-700)}.tech-note-label{display:block;font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.06em;opacity:.7;margin-bottom:2px}.tech-actions{padding:var(--sp-4);padding-bottom:calc(var(--sp-4) + var(--sa-bottom))}.set-link{display:block;margin:var(--sp-2) 0 0;padding:4px 2px;border:0;background:none;color:var(--accent);font:inherit;font-size:var(--fs-sm);font-weight:700;text-align:left;cursor:pointer}.tech-signout-wrap{padding:var(--sp-5) var(--sp-4) calc(var(--sp-5) + var(--sa-bottom));text-align:center}.tech-signout{border:0;background:transparent;font:inherit;font-size:var(--fs-sm);font-weight:700;color:var(--text-muted);text-decoration:underline;padding:var(--sp-2)}.tech-sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#191e4973;display:flex;align-items:flex-end;justify-content:center}.tech-sheet{width:100%;max-width:480px;background:#fff;border-radius:16px 16px 0 0;padding:var(--sp-4) 0 calc(var(--sp-4) + var(--sa-bottom));max-height:calc(80 * var(--vh));overflow-y:auto}.tech-sheet-title{padding:0 var(--sp-4) var(--sp-3);font-size:var(--fs-md);font-weight:800}.sort-body{display:flex;flex-direction:column;gap:var(--sp-3);padding:0 var(--sp-4) var(--sp-3)}.sort-note{font-size:var(--fs-sm);color:var(--text-muted)}.sort-note.is-error{color:#8a1c13}.sort-row{display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-3);border:1px solid var(--border);border-radius:var(--radius);background:#fff}.sort-row-head{display:flex;justify-content:space-between;gap:var(--sp-3);align-items:baseline}.sort-row-head strong{overflow-wrap:anywhere}.sort-row-head span{flex:none;font-variant-numeric:tabular-nums;font-weight:700}.sort-row-head span.is-out{color:var(--red)}.sort-row-head span.is-in{color:var(--green-ink)}.sort-row-sub{font-size:var(--fs-sm);color:var(--text-muted)}.sort-row-remember{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-sm);color:var(--text-muted)}.pay-state-btn{display:flex;justify-content:space-between;align-items:center;gap:var(--sp-2);width:100%;border:0;font:inherit;text-align:left;cursor:pointer}.pay-state-btn em{flex:none;font-style:normal;font-weight:700;white-space:nowrap}.tech-sheet-title.has-back{display:grid;grid-template-columns:28px 1fr;align-items:center;gap:var(--sp-1);padding-left:var(--sp-2)}.tech-sheet-back{display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:50%;background:transparent;color:var(--text-muted)}.tech-sheet-back:active{background:var(--navy-125)}.tech-sheet-cat{display:flex;align-items:center;gap:var(--sp-3);width:100%;min-height:62px;border:0;border-top:1px solid var(--navy-125);background:transparent;padding:var(--sp-2) var(--sp-4);text-align:left;font-family:inherit}.tech-sheet-cat:active{background:var(--navy-125)}.tech-sheet-cat-go{flex:none;color:var(--text-faint)}.tech-sheet-empty{padding:var(--sp-6) var(--sp-4);color:var(--text-muted);text-align:center}.tech-sheet-row{display:flex;align-items:center;gap:var(--sp-3);width:100%;border:0;background:transparent;padding:var(--sp-3) var(--sp-4);min-height:56px;text-align:left;font-family:inherit}.tech-sheet-row .tech-who-name{flex:1;min-width:0;color:var(--text)}.tech-sheet-row.is-active{background:var(--accent-soft);color:var(--accent)}.tech-service-head{gap:var(--sp-2)}.tech-service-remove{flex:none;width:34px;height:34px;margin:-6px -6px -6px 0;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:var(--text-faint)}.tech-service-remove:active{background:var(--red-soft);color:var(--red)}.tech-service .option-row{padding:6px 0;font-size:var(--fs-md)}.tech-service .option-add,.tech-service .price-btn{min-height:32px;font-size:var(--fs-md)}.tech-service .option-remove{width:28px;height:28px}.tech-service .price-edit input{height:36px;width:96px;font-size:var(--fs-md)}.tech-add-wrap{padding:var(--sp-3) var(--sp-4) 0;border-top:1px solid var(--navy-125)}.tech-add{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:46px;border:1px dashed var(--border);border-radius:var(--radius-md);background:transparent;color:var(--accent);font-size:var(--fs-md);font-weight:700}.tech-add:active{background:var(--accent-soft)}.tech-foot-note{margin:var(--sp-3) 0 0;text-align:center;font-size:var(--fs-sm);color:var(--text-muted)}.tech-delete{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-top:var(--sp-3);border:0;background:transparent;font:inherit;font-size:var(--fs-sm);font-weight:700;color:var(--red);padding:var(--sp-2);min-height:44px;border-radius:var(--radius)}.tech-delete:active{background:var(--red-soft)}.tech-delete-confirm{margin-top:var(--sp-3);padding:var(--sp-3);border-radius:var(--radius);background:var(--red-soft)}.tech-delete-ask{margin:0;text-align:center;font-size:var(--fs-md);font-weight:700;color:var(--text)}.tech-delete-reassure{margin:4px 0 var(--sp-3);text-align:center;font-size:var(--fs-sm);color:var(--text-muted)}.tech-delete-row{display:flex;gap:var(--sp-2)}.tech-delete-row .btn{flex:1;justify-content:center;min-height:44px}.tech-sheet.is-tall{height:calc(85 * var(--vh));display:flex;flex-direction:column}.tech-sheet-search{display:flex;align-items:center;gap:8px;margin:0 var(--sp-4) var(--sp-2);padding:0 12px;height:42px;border-radius:var(--radius-pill);background:var(--navy-125);color:var(--text-muted)}.tech-sheet-search input{flex:1;min-width:0;border:0;background:transparent;outline:none;font-size:var(--fs-md)}.tech-sheet-list{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch}.tech-sheet-group{position:sticky;top:0;z-index:1;padding:var(--sp-3) var(--sp-4) var(--sp-1);background:var(--white);font-size:var(--fs-sm);font-weight:700;letter-spacing:.04em;color:var(--text-muted)}.tech-sheet-service{display:flex;align-items:center;gap:var(--sp-3);width:100%;min-height:56px;border:0;border-top:1px solid var(--navy-125);background:transparent;padding:var(--sp-2) var(--sp-4);text-align:left;font-family:inherit}.tech-sheet-service:active{background:var(--navy-125)}.tech-sheet-service-main{flex:1;min-width:0;display:flex;flex-direction:column}.tech-sheet-service-name{font-size:var(--fs-md);font-weight:700}.tech-sheet-service-meta{font-size:var(--fs-base);color:var(--text-muted)}.tech-sheet-service-price{font-weight:700;white-space:nowrap}.tech-add-wrap.tech-add-top{padding:var(--sp-3) var(--sp-4);border-top:0;border-bottom:1px solid var(--navy-125)}.tech-client-main{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;text-align:left;border:0;background:transparent;padding:0;font-family:inherit}.tech-client-main .tech-client-name{display:flex;align-items:center;gap:8px}.tech-client-main svg{color:var(--text-faint);flex:none}.tech-sheet-none{padding:var(--sp-6) var(--sp-4);text-align:center;color:var(--text-muted);font-size:var(--fs-md);line-height:1.5}.tech-sheet-foot{flex:none;padding:var(--sp-3) var(--sp-4) 0;border-top:1px solid var(--navy-125)}.tech-sheet-foot.is-split{display:grid;grid-template-columns:1fr 1.4fr;gap:var(--sp-3)}.tech-form{padding:var(--sp-2) var(--sp-4)}.tech-form .field input{height:46px;font-size:var(--fs-md)}.tech-form .field label{font-size:var(--fs-base)}.time-edit{display:inline-flex;align-items:center;gap:6px}.time-edit input{border:1px solid var(--border);border-radius:var(--radius);background:#fff;padding:3px 6px;font-family:inherit;font-size:var(--fs-base);color:var(--text);min-height:32px}.time-edit input:focus{border-color:var(--focus);outline:none}.time-edit-end{color:var(--text-muted)}.offline-bar{flex:none;display:flex;align-items:center;justify-content:center;gap:8px;padding:7px var(--sp-4);background:var(--amber-soft);color:var(--amber-ink);font-size:var(--fs-sm);font-weight:600;text-align:center}.viewas-bar{flex:none;display:flex;align-items:center;gap:10px;padding:6px var(--sp-4);background:var(--navy-125);color:var(--text);font-size:var(--fs-sm);font-weight:500}.viewas-bar.is-acting{background:var(--navy-900);color:#fff}.viewas-text{flex:1;min-width:0}.viewas-bar strong{font-weight:700}.viewas-pick{display:flex;align-items:center;gap:6px;white-space:nowrap;font-weight:600}.viewas-pick select{font:inherit;padding:3px 6px;border-radius:var(--radius-sm);border:1px solid var(--navy-200);background:#fff;color:var(--text)}.viewas-bar.is-acting .viewas-pick select{border-color:transparent}.turn-doing{display:flex;align-items:center;gap:8px;margin:3px 0 4px;font-size:var(--fs-sm);color:var(--text);min-width:0}.turn-doing-dot{flex:none;width:7px;height:7px;border-radius:50%;background:var(--accent)}.turn-doing.is-bonus .turn-doing-dot{background:var(--text-muted)}.turn-doing-what{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.turn-doing-time{flex:none;color:var(--text-muted);font-variant-numeric:tabular-nums}.turn-next.is-nobody{background:var(--bg-gray);border-color:var(--border)}.turn-next.is-nobody .turn-next-label,.turn-next.is-nobody .turn-next-name{color:var(--text-muted)}.turn-done{gap:4px;border:1px solid var(--border);font-size:var(--fs-sm);font-weight:500;color:var(--text-muted)}.turn-done:hover{border-color:var(--accent);color:var(--accent)}.turn-row.is-busy{background:var(--navy-050)}.doing-now{display:flex;flex-direction:column;width:100%;padding:var(--sp-3);border-radius:var(--radius-md);background:var(--accent-soft);border:1px solid var(--accent)}.doing-now-top{display:flex;align-items:baseline;gap:var(--sp-3)}.doing-now-label{display:flex;align-items:center;gap:6px;flex:1;min-width:0;font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--accent)}.doing-now-dot{flex:none;width:7px;height:7px;border-radius:50%;background:var(--accent)}.doing-now-time{flex:none;font-size:var(--fs-sm);font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-muted)}.doing-now-name{display:block;margin:2px 0 var(--sp-3);font-size:var(--fs-lg);line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doing-now-actions{display:flex;flex-direction:column;gap:var(--sp-2)}.doing-now-actions .btn{min-height:46px}.doing-now-confirm{display:flex;gap:var(--sp-2)}.doing-now-confirm .btn-primary{flex:2 1 0;min-width:0}.doing-now-confirm .btn-secondary{flex:1 1 0;min-width:0}.doing-now-need{margin:0;padding:var(--sp-2) var(--sp-3);border-radius:var(--radius-md);background:var(--red-soft);color:var(--red);font-size:var(--fs-base);font-weight:700;line-height:1.35}.doing-now-actions .btn-secondary{background:var(--border);border:1px solid var(--navy-400);color:var(--navy-800)}.doing-now-actions .btn-secondary:active{background:var(--border-strong)}.checkin{display:grid;grid-template-columns:1fr 320px;gap:var(--sp-5);align-items:start;padding:var(--sp-5);max-width:1100px;margin:0 auto}@media(max-width:820px){.checkin{grid-template-columns:1fr}}.checkin-main{display:flex;flex-direction:column;gap:var(--sp-3);min-width:0}.checkin-title{margin:0;font-size:var(--fs-2xl);color:var(--navy-900)}.checkin-back{display:flex;align-items:center;gap:4px;align-self:flex-start;border:0;background:none;padding:0;font-size:var(--fs-md);font-weight:700;color:var(--accent)}.checkin-search{display:flex;align-items:center;gap:var(--sp-3);padding:0 var(--sp-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);color:var(--text-muted)}.checkin-search input{flex:1;min-width:0;border:0;outline:none;padding:var(--sp-4) 0;font-size:var(--fs-xl);font-family:inherit;background:none}.checkin-row{display:flex;align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);text-align:left}.checkin-row.is-new{border-style:dashed;color:var(--accent)}.checkin-row:active{background:var(--accent-soft)}.checkin-row-main{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.checkin-row-main strong{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-lg)}.checkin-row-main em{font-style:normal;font-size:var(--fs-base);color:var(--text-muted)}.checkin-row-visits{flex:none;font-size:var(--fs-sm);font-weight:700;color:var(--text-muted)}.checkin-fields{display:flex;flex-direction:column;gap:var(--sp-3)}.checkin-fields label{display:flex;flex-direction:column;gap:4px}.checkin-fields span{font-size:var(--fs-sm);font-weight:700;color:var(--text-muted)}.checkin-fields input{padding:var(--sp-3) var(--sp-4);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--fs-xl);font-family:inherit}.checkin-actions{display:flex;gap:var(--sp-3)}.checkin-actions .btn{flex:1}.checkin-services{display:flex;flex-direction:column;gap:var(--sp-3)}.checkin-group{font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;color:var(--text-muted)}.checkin-chips{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.checkin-chip{display:flex;flex-direction:column;gap:2px;padding:var(--sp-3) var(--sp-4);min-height:56px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);text-align:left;font-size:var(--fs-md)}.checkin-chip em{font-style:normal;font-size:var(--fs-sm);color:var(--text-muted)}.checkin-chip.is-on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:700}.checkin-chip.is-on em{color:var(--accent)}.checkin-footer{position:sticky;bottom:0;padding-top:var(--sp-3);background:var(--bg-gray)}.checkin-note{margin:0 0 var(--sp-2);font-size:var(--fs-sm);color:var(--text-muted)}.checkin-done{display:flex;flex-direction:column;align-items:center;gap:var(--sp-3);padding:var(--sp-8) var(--sp-4);text-align:center}.checkin-done-tick{display:flex;align-items:center;justify-content:center;width:76px;height:76px;border-radius:50%;background:var(--green-soft);color:var(--green)}.checkin-next{margin:0;font-size:var(--fs-xl);color:var(--text-muted)}.checkin-next strong{color:var(--navy-900)}.checkin-next.is-none{font-size:var(--fs-md)}.checkin-done .btn{margin-top:var(--sp-4);max-width:360px}.checkin-empty{margin:0;padding:var(--sp-3) 0;font-size:var(--fs-base);color:var(--text-muted)}.checkin-waiting{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);padding:var(--sp-3) var(--sp-4)}.checkin-waiting-head{display:flex;justify-content:space-between;font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);padding-bottom:var(--sp-2)}.checkin-waiting-row{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3) 0;border-top:1px solid var(--navy-125)}.checkin-waiting-main{display:flex;flex-direction:column;flex:1;min-width:0}.checkin-waiting-main em{font-style:normal;font-size:var(--fs-sm);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.checkin-booked{display:flex;flex-direction:column;gap:2px;margin-top:var(--sp-1)}.checkin-booked-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--sp-2);font-size:var(--fs-xs)}.checkin-booked-who{display:flex;flex-direction:column;gap:1px;flex:1 1 100%;color:var(--text-muted);font-weight:600}.checkin-booked-what{color:var(--text)}.checkin-booked-holder{color:var(--text-muted);font-weight:500}.checkin-booked-who.is-away .checkin-booked-holder{align-self:flex-start;color:var(--amber-ink);background:var(--amber-soft);padding:1px var(--sp-2);border-radius:var(--radius-pill)}.checkin-booked-move,.checkin-booked-opt{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--white);color:var(--accent);padding:1px var(--sp-2);font-size:var(--fs-xs);font-weight:700}.checkin-booked-opt.is-cancel{color:var(--text-muted)}.checkin-booked-opt.is-anyone{background:var(--accent);border-color:var(--accent);color:var(--white);margin-right:var(--sp-1)}.checkin-booked-opt.is-away{color:var(--text-muted);border-style:dashed}.checkin-booked-opt.is-away em{font-style:normal;color:var(--text-faint)}.checkin-booked-pick{display:flex;flex-wrap:wrap;gap:var(--sp-1)}.checkin-booked-none{font-style:normal;color:var(--text-faint)}.floor-row.is-part{border-left:2px solid var(--border);padding-left:var(--sp-2)}.floor-part-with{font-style:normal;color:var(--text-faint);font-weight:500;margin-top:1px}.floor-moves{display:flex;flex-wrap:wrap;gap:var(--sp-1);margin-top:2px;min-width:0}.floor-ready-moves{padding:0 var(--sp-4) var(--sp-2);margin-top:0}.floor-move{align-self:flex-start;border:1px solid var(--border);border-radius:var(--radius-pill);background:transparent;color:var(--text-muted);padding:1px var(--sp-2);font-size:var(--fs-xs);font-weight:700}.floor-move:hover{background:var(--white);color:var(--accent)}.floor-row:has(.floor-move-panel){flex-wrap:wrap}.floor-row:has(.floor-move-panel)>.floor-time{display:none}.floor-move-panel{margin-top:var(--sp-1);display:flex;flex-direction:column;min-width:0;width:100%;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);overflow:hidden}.floor-move-head{display:flex;align-items:center;gap:var(--sp-1);padding:var(--sp-1) var(--sp-1) var(--sp-1) var(--sp-2);border-bottom:1px solid var(--border);background:var(--bg-gray)}.floor-move-title{flex:1 1 auto;min-width:0;font-size:var(--fs-xs);font-weight:700;color:var(--accent);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.floor-move-x{flex:none;border:0;background:none;padding:0 var(--sp-1);line-height:1;font-size:var(--fs-xs);color:var(--text-faint);cursor:pointer}.floor-move-x:hover{color:var(--accent)}.floor-move-list{max-height:46vh;overflow-y:auto;padding:2px}.floor-move-heading{position:sticky;top:0;z-index:1;margin:0;padding:var(--sp-1) var(--sp-1) 2px;background:var(--white);font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-faint);white-space:normal;line-height:1.3}.floor-move-opt{display:flex;align-items:baseline;gap:var(--sp-1);width:100%;border:0;border-radius:var(--radius);background:none;padding:5px var(--sp-1);text-align:left;font-size:var(--fs-xs);color:var(--accent);cursor:pointer}.floor-move-opt:hover{background:var(--accent-soft)}.floor-move-who{flex:0 1 auto;min-width:0;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.floor-move-note{flex:1 1 auto;min-width:0;text-align:right;font-weight:500;color:var(--text-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.floor-move-opt.is-cannot .floor-move-who,.floor-move-opt.is-cannot .floor-move-note{color:var(--amber-ink)}.floor-move-empty{margin:0;padding:var(--sp-1) var(--sp-2) var(--sp-2);font-size:var(--fs-xs);color:var(--text-faint)}.floor-move-back{flex:none;border:0;border-top:1px solid var(--border);background:none;padding:var(--sp-1) var(--sp-2);text-align:left;font-size:var(--fs-xs);font-weight:700;color:var(--text-muted);cursor:pointer}.floor-move-back:hover{background:var(--accent-soft);color:var(--accent)}.checkin-booked-opt.is-cannot{border-color:var(--amber-ink);color:var(--amber-ink)}.checkin-booked-opt.is-cannot em{color:var(--amber-ink)}.checkin-booked-opt.is-swap{background:var(--accent);border-color:var(--accent);color:var(--white)}.checkin-booked-opt.is-swap em{color:var(--white);opacity:.85}.checkin-booked-opt.is-swap.is-cannot{border-color:var(--accent);color:var(--white)}.checkin-waiting-state{display:flex;flex-direction:column;align-items:flex-end;flex:none;font-size:var(--fs-sm);color:var(--text-muted);font-variant-numeric:tabular-nums}.checkin-with{font-weight:700;color:var(--accent)}.checkin-ready{font-weight:700;color:var(--green)}.checkin-passed{font-weight:700;color:var(--amber-ink);cursor:help}.checkout-page{display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-5);max-width:720px;margin:0 auto}.checkout-heading{margin:var(--sp-3) 0 0;font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.checkout-card{display:flex;flex-direction:column;gap:var(--sp-3);width:100%;padding:var(--sp-4);border:1px solid var(--accent);border-radius:var(--radius-md);background:var(--white);text-align:left}.checkout-card.is-quiet{border-color:var(--border)}.checkout-card.is-link:active{background:var(--bg-gray)}.checkout-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-3);font-size:var(--fs-lg)}.checkout-card-total{font-size:var(--fs-xl);font-weight:700;font-variant-numeric:tabular-nums;color:var(--navy-900)}.checkout-card-with{display:flex;align-items:center;gap:6px;font-size:var(--fs-base);font-weight:600;color:var(--text-muted)}.checkout-paid{display:flex;align-items:center;gap:6px;font-size:var(--fs-base);font-weight:700;color:var(--green)}.checkout-lines{display:flex;flex-direction:column;gap:var(--sp-3)}.checkout-tech-name{font-size:var(--fs-sm);font-weight:700;color:var(--accent);padding-bottom:2px}.checkout-line{display:flex;justify-content:space-between;gap:var(--sp-3);padding:2px 0;font-size:var(--fs-md);font-variant-numeric:tabular-nums}.checkout-line.is-option{padding-left:var(--sp-4);font-size:var(--fs-base);color:var(--text-muted)}.ticket-line-for{font-weight:700;color:var(--accent)}.floor-party,.new-client-party{border:1px solid var(--border);border-radius:var(--radius-md);padding:0;margin:var(--sp-2) 6px;overflow:hidden}.new-client-party>.new-client{box-shadow:none}.floor-party-head,.new-client-party-head{padding:6px var(--sp-3);font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent)}.floor-party .floor-row{border:0}.new-client-party>.new-client{margin-bottom:4px}.new-client-party>.new-client:last-child{margin-bottom:0}.checkout-party{display:flex;align-items:center;gap:6px;margin:0 0 var(--sp-2);font-size:var(--fs-sm);font-weight:600;color:var(--accent)}.checkout-party.is-waiting{display:block;margin:var(--sp-2) 0;padding:8px 10px;border-radius:var(--radius);background:var(--amber-soft);color:var(--amber-ink);font-weight:600}.checkout-person{margin-top:var(--sp-2);font-size:var(--fs-sm);font-weight:700;color:var(--navy-900)}.checkout-split-btn{display:block;margin:var(--sp-3) 0 0 auto;border:1px solid var(--border);border-radius:var(--radius-pill);padding:5px 12px;background:var(--white);font:inherit;font-size:var(--fs-sm);font-weight:700;color:var(--accent);cursor:pointer}.checkout-split-btn:hover{background:var(--accent-soft)}.checkout-person.is-alone{margin-top:var(--sp-2);font-weight:600;color:var(--text-muted)}.checkout-person button{flex:none;border:1px solid var(--border);border-radius:999px;padding:3px 10px;background:var(--white);font:inherit;font-size:var(--fs-sm);font-weight:600;color:var(--navy-800)}.checkout-person button:active{background:var(--accent-soft)}.checkout-nothing{margin:0;font-size:var(--fs-base);color:var(--text-muted)}@media(max-width:900px){.register{flex-direction:column}.register-catalog{border-right:0;border-bottom:1px solid var(--border)}.catalog-grid{max-height:240px}.ticket{width:100%}}.session-work{display:flex;flex-direction:column;gap:var(--sp-2);margin-bottom:var(--sp-3)}.session-work .tech-service{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--sp-2) var(--sp-3);margin:0}.session-work-add{margin-top:var(--sp-4)}.session-work-add .tech-add{border-style:solid}.session-also{display:flex;flex-direction:column;gap:var(--sp-2);margin-bottom:var(--sp-3)}.session-also-row{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);width:100%;min-height:60px;padding:10px var(--sp-3);border:0;border-radius:var(--radius-md);background:var(--accent);color:#fff;font:inherit;text-align:left}.session-also-row:active{filter:brightness(.92)}.session-also-text{display:flex;flex-direction:column;gap:1px;min-width:0}.session-also-lead{font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;opacity:.82}.session-also-name{font-size:var(--fs-lg);font-weight:800;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-also-go{flex:none;display:flex;align-items:center;gap:4px;font-weight:800;font-size:var(--fs-md)}.session-work-add{display:flex;gap:var(--sp-2)}.session-work-add .tech-add{flex:1;min-width:0}.session-work-total{display:flex;justify-content:space-between;align-items:baseline;padding:var(--sp-2) var(--sp-1) 0;font-size:var(--fs-sm);color:var(--text-muted)}.session-work-total strong{font-size:var(--fs-lg);color:var(--navy-900);font-variant-numeric:tabular-nums}.session-partners{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.session-partner{display:flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:var(--white);border:1px solid var(--border);font-size:var(--fs-sm);font-weight:600;color:var(--navy-800)}.mine-today{border-top:1px solid var(--navy-125);padding:var(--sp-3) var(--sp-4) var(--sp-4)}.mine-today-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-3);margin-bottom:var(--sp-2)}.mine-today-title{font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.mine-today-total{font-size:var(--fs-base);font-weight:800;font-variant-numeric:tabular-nums;color:var(--navy-900)}.mine-card{width:100%;display:flex;align-items:center;gap:var(--sp-3);margin-bottom:8px;padding:10px var(--sp-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);font:inherit;color:inherit;text-align:left;cursor:pointer}.mine-card:last-of-type{margin-bottom:0}.mine-card:active{background:var(--bg-gray)}.mine-mark{flex:none;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--navy-125);color:var(--navy-800);font-size:15px;font-weight:800}.mine-card.is-bonus .mine-mark{background:var(--accent-soft);color:var(--accent)}.mine-card.is-booked .mine-mark{background:var(--amber-soft);color:var(--amber-ink)}.mine-card.is-ticket .mine-mark{background:var(--navy-125);color:var(--text-muted)}.mine-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px;line-height:1.3}.mine-name{font-size:var(--fs-base);font-weight:700;color:var(--navy-900);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mine-what{font-size:var(--fs-sm);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mine-when{font-size:var(--fs-xs);color:var(--text-faint)}.mine-right{flex:none;display:flex;align-items:center;gap:4px}.mine-money{font-size:var(--fs-base);font-weight:700;font-variant-numeric:tabular-nums;color:var(--navy-900)}.merge-row{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2) 0;border-bottom:1px solid var(--navy-125)}.merge-row:last-of-type{border-bottom:0}.merge-row-main{flex:1;min-width:0}.merge-row-name{font-size:var(--fs-base);font-weight:700}.merge-row-meta{font-size:var(--fs-sm);color:var(--text-muted);margin-top:2px}.merge-note{margin:var(--sp-2) 0 0;font-size:var(--fs-sm);color:var(--text-muted);line-height:1.45}.tech-merge{display:flex;align-items:center;gap:var(--sp-3);margin:var(--sp-3) var(--sp-4) 0;padding:var(--sp-3);border:1px solid var(--amber);border-radius:var(--radius-md);background:var(--amber-soft)}.tech-merge-main{flex:1;min-width:0}.tech-merge-title{font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--amber-ink)}.tech-merge-name{font-size:var(--fs-md);font-weight:700;margin-top:2px}.tech-merge-meta{font-size:var(--fs-base);color:var(--text-muted)}.tech-merge .btn{flex:none;background:#fff}.staff-select{position:relative;display:inline-flex}.staff-select-btn{display:inline-flex;align-items:center;gap:5px;border:1px solid transparent;border-radius:var(--radius-pill);background:transparent;padding:2px 7px 2px 3px;margin-left:-3px;font-family:inherit;font-size:var(--fs-sm);font-weight:600;color:var(--text);white-space:nowrap}.staff-select-btn:hover{border-color:var(--border);background:#fff}.staff-select-btn svg{color:var(--text-faint)}.staff-select-btn.is-static{padding-right:0}.staff-select-btn.is-unset{font-weight:500;color:var(--text-faint)}.option-who{font-size:var(--fs-xs);padding:1px 5px 1px 3px;flex:none}.option-who svg{width:11px;height:11px}.tech-service .option-who{font-size:var(--fs-sm);min-height:28px}.staff-select-menu{position:absolute;top:calc(100% + 4px);left:0;z-index:30;min-width:170px;max-height:300px;overflow-y:auto;padding:4px;background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.staff-select-item{display:flex;align-items:center;gap:var(--sp-3);width:100%;min-height:38px;padding:5px 8px;border:0;border-radius:var(--radius);background:transparent;text-align:left;font-family:inherit;color:var(--text)}.staff-select-item:hover{background:var(--navy-125)}.staff-select-item.is-active{background:var(--accent-soft);color:var(--accent)}.staff-select-name{flex:1;min-width:0;font-size:var(--fs-md);font-weight:700}.inline-select{border:1px solid transparent;border-radius:var(--radius-pill);padding:3px 6px;font-weight:600}.inline-select:hover{border-color:var(--border);background:#fff}.time-select{position:relative;display:inline-flex}.time-select-btn{display:inline-flex;align-items:center;gap:4px;border:1px solid transparent;border-radius:var(--radius-pill);background:transparent;padding:2px 7px;font-family:inherit;font-size:var(--fs-sm);font-weight:600;color:var(--text);white-space:nowrap}.time-select-btn:hover{border-color:var(--border);background:#fff}.time-select-btn svg{color:var(--text-faint)}.time-select-btn.is-static{padding:0}.time-select-menu{position:absolute;top:calc(100% + 4px);left:0;z-index:30;min-width:146px;max-height:280px;overflow-y:auto;padding:4px;background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.time-select-item{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);width:100%;min-height:34px;padding:4px 10px;border:0;border-radius:var(--radius);background:transparent;text-align:left;font-family:inherit;font-size:var(--fs-md);font-weight:600;color:var(--text);white-space:nowrap}.time-select-item:hover{background:var(--navy-125)}.time-select-item.is-active{background:var(--accent-soft);color:var(--accent)}.book-people{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px}.book-people .chip{cursor:pointer}.book-person{display:inline-flex;align-items:center;gap:4px}.book-person button{display:inline-flex;background:none;border:0;padding:0 0 0 2px;color:inherit;opacity:.7;cursor:pointer}.book-person-add{display:flex;gap:6px;margin-top:6px}.book-person-add input{flex:1;min-width:0}.ticket-line-for{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px}.update-block{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:grid;place-items:center;padding:calc(var(--sp-5) + var(--sa-top)) var(--sp-5) calc(var(--sp-5) + var(--sa-bottom));background:#191e49b8;touch-action:none}.update-block-card{width:100%;max-width:360px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--sp-3);padding:var(--sp-6) var(--sp-5);border-radius:var(--radius-md);background:#fff;box-shadow:var(--shadow-lg)}.update-block-icon{display:grid;place-items:center;width:62px;height:62px;border-radius:50%;background:var(--accent-soft);color:var(--accent)}.update-block-title{margin:0;font-size:var(--fs-xl);font-weight:800}.update-block-sub{margin:0;font-size:var(--fs-base);color:var(--text-muted);line-height:1.4}.update-block-go{width:100%;margin-top:var(--sp-2);border:0;border-radius:var(--radius-pill);background:var(--accent);color:#fff;padding:14px var(--sp-5);font-family:inherit;font-size:var(--fs-lg);font-weight:700}.update-block-go:hover{background:var(--accent-hover)}.update-block-go:disabled{opacity:.7}.app[data-portrait-lock="90"]{--sa-top: env(safe-area-inset-left, 0px);--sa-right: env(safe-area-inset-top, 0px);--sa-bottom: env(safe-area-inset-right, 0px);--sa-left: env(safe-area-inset-bottom, 0px)}.app[data-portrait-lock="270"]{--sa-top: env(safe-area-inset-right, 0px);--sa-right: env(safe-area-inset-bottom, 0px);--sa-bottom: env(safe-area-inset-left, 0px);--sa-left: env(safe-area-inset-top, 0px)}.whatsnew{padding-left:var(--sp-4);padding-right:var(--sp-4)}.whatsnew-head{display:flex;align-items:center;gap:var(--sp-2);color:var(--accent);font-size:var(--fs-md);font-weight:800}.whatsnew-list{display:flex;flex-direction:column;gap:var(--sp-3);margin:var(--sp-3) 0 var(--sp-4);padding:0;list-style:none}.whatsnew-list li{position:relative;padding-left:var(--sp-4);font-size:var(--fs-base);line-height:1.45}.whatsnew-list li:before{content:"";position:absolute;left:0;top:7px;width:6px;height:6px;border-radius:50%;background:var(--accent)}.whatsnew-go{width:100%;border:0;border-radius:var(--radius-md);background:var(--accent);color:#fff;padding:13px;font-family:inherit;font-size:var(--fs-md);font-weight:700}.whatsnew-go:hover{background:var(--accent-hover)}.notice-quiet{display:flex;align-items:center;gap:var(--sp-2);background:var(--navy-125);color:var(--text-muted)}.notice-quiet svg{flex:none}.pct-btn{display:inline-flex;align-items:baseline;border:0;background:transparent;padding:1px 4px;margin:-1px -4px;border-radius:var(--radius);font:inherit;font-variant-numeric:tabular-nums;color:inherit}.pct-btn:hover{background:var(--navy-125);box-shadow:inset 0 0 0 1px var(--border)}.pct-edit{display:inline-flex;align-items:center;gap:4px}.pct-edit input{width:58px;height:28px;border:1px solid var(--focus);border-radius:var(--radius);padding:0 6px;font-size:var(--fs-base);text-align:right;outline:none}.pct-sign{color:var(--text-muted)}.split-bar-wrap{display:inline-flex;align-items:center;gap:var(--sp-2);width:100%;justify-content:flex-end}.split-bar{flex:1;max-width:64px;height:6px;border-radius:3px;background:var(--navy-125);box-shadow:inset 0 0 0 1px var(--border);overflow:hidden}.split-bar-fill{display:block;height:100%;border-radius:3px}.split-bar-value{font-variant-numeric:tabular-nums;color:var(--text-muted);font-size:var(--fs-sm);min-width:48px;text-align:right}.report-layout{display:grid;grid-template-columns:264px 1fr;min-height:0;height:100%}.report-index{border-right:1px solid var(--border);background:var(--bg-gray);overflow-y:auto;padding:var(--sp-3) 0 var(--sp-6)}.report-group{margin-bottom:var(--sp-3)}.report-group-title{padding:var(--sp-2) var(--sp-4) 4px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.report-link{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);width:100%;border:0;background:transparent;text-align:left;padding:6px var(--sp-4);font:inherit;font-size:var(--fs-base);color:var(--navy-900);border-left:2px solid transparent}.report-link:hover{background:var(--navy-125)}.report-link.is-active{background:var(--accent-soft);border-left-color:var(--accent);color:var(--accent);font-weight:600}.report-link.is-locked{color:var(--text-muted)}.report-panel{min-width:0;display:flex;flex-direction:column}.report-empty{margin:auto;text-align:center;color:var(--text-muted);padding:var(--sp-6)}.report-empty-title{font-size:20px;font-weight:700;color:var(--navy-900);margin-bottom:6px}.report-head{padding:var(--sp-5) var(--sp-6) 0}.report-head h1{font-size:20px;font-weight:700;margin:0 0 4px}.report-head p{margin:0;color:var(--text-muted);font-size:var(--fs-base);max-width:70ch}.report-note{margin-top:6px!important;font-size:var(--fs-sm)!important;font-style:italic}.report-controls{display:flex;align-items:center;flex-wrap:wrap;gap:var(--sp-3);padding:var(--sp-4) var(--sp-6)}.report-range{display:flex;align-items:center;gap:var(--sp-2)}.report-range-sep{color:var(--text-muted);font-size:var(--fs-sm)}.report-filter{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-base);color:var(--navy-900)}.report-meta{padding:0 var(--sp-6) var(--sp-2);color:var(--text-muted);font-size:var(--fs-sm)}.report-table{margin:0 var(--sp-6) var(--sp-6)}.report-table .table-row>div,.report-table .table-head>div{font-variant-numeric:tabular-nums}.report-total{font-weight:700;background:var(--bg-gray)}.report-blank{padding:var(--sp-6);color:var(--text-muted)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:0;background:transparent;border-radius:var(--radius);color:var(--text-muted)}.icon-btn:hover{background:var(--navy-125);color:var(--navy-900)}.chip-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.chip{height:30px;padding:0 12px;border:1px solid var(--border);border-radius:var(--radius-pill);background:#fff;font-size:var(--fs-base);color:var(--text)}.chip:hover{border-color:var(--navy-400)}.chip.is-active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:600}.tag{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--radius-pill);background:var(--navy-125);color:var(--text-muted);font-size:var(--fs-sm);font-weight:600;white-space:nowrap}.tag button{display:inline-flex;border:0;background:transparent;padding:0;color:inherit;opacity:.6}.tag button:hover{opacity:1}.tag-sm{font-size:10px;padding:1px 6px}.tag-input{display:flex;flex-wrap:wrap;align-items:center;gap:5px;border:1px solid var(--border);border-radius:var(--radius);padding:5px 8px;background:#fff}.tag-input input{flex:1;min-width:90px;border:0;outline:none;padding:2px 0;font:inherit}.form-section{border-top:1px solid var(--navy-125);margin-top:var(--sp-2)}.form-section-head{display:flex;align-items:center;justify-content:space-between;width:100%;border:0;background:transparent;padding:10px 0;font:inherit;font-weight:600;color:var(--navy-900)}.form-section-head svg{transition:transform var(--dur-fast);color:var(--text-muted)}.form-section.is-open .form-section-head svg{transform:rotate(180deg)}.form-section-body{padding-bottom:var(--sp-3)}.pref-group{margin-bottom:var(--sp-3)}.pref-label{font-size:var(--fs-sm);font-weight:700;color:var(--text-muted);margin-bottom:4px}.pref-check{display:flex;align-items:center;gap:8px;padding:3px 0;font-size:var(--fs-base)}.client-notes{width:100%;border:1px solid var(--border);border-radius:var(--radius);padding:10px;font-size:var(--fs-base);font-family:inherit;resize:vertical}.client-menu-wrap{position:relative}.client-menu-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40}.client-menu{position:absolute;top:30px;right:0;z-index:41;min-width:230px;background:#fff;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);padding:4px}.client-menu button{display:flex;align-items:center;gap:8px;width:100%;border:0;background:transparent;text-align:left;padding:7px 10px;border-radius:var(--radius);font:inherit;font-size:var(--fs-base);color:var(--navy-900)}.client-menu button:hover{background:var(--navy-125)}.client-menu button.is-danger{color:var(--red)}.client-tabs{display:flex;gap:2px;padding:0 var(--sp-5);border-bottom:1px solid var(--border);overflow-x:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 24px),transparent);mask-image:linear-gradient(to right,#000 calc(100% - 24px),transparent)}.client-tabs::-webkit-scrollbar{display:none}.client-tabs button{border:0;background:transparent;padding:9px 7px;font:inherit;font-size:11.5px;font-weight:600;color:var(--text-muted);white-space:nowrap;border-bottom:2px solid transparent;margin-bottom:-1px}.client-tabs button:hover{color:var(--navy-900)}.client-tabs button.is-active{color:var(--accent);border-bottom-color:var(--accent)}.timeline-composer{display:flex;gap:var(--sp-2);align-items:flex-start;margin-bottom:var(--sp-3)}.timeline-composer textarea{flex:1;border:1px solid var(--border);border-radius:var(--radius);padding:8px 10px;font:inherit;font-size:var(--fs-base);resize:vertical}.timeline-filters{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:var(--sp-3);font-size:var(--fs-sm);color:var(--text-muted)}.timeline-filters button{border:0;background:transparent;padding:3px 8px;border-radius:var(--radius-pill);font:inherit;font-size:var(--fs-sm);color:var(--text-muted)}.timeline-filters button:hover{background:var(--navy-125)}.timeline-filters button.is-active{background:var(--accent-soft);color:var(--accent);font-weight:600}.timeline-entry{position:relative;padding:0 0 var(--sp-4) var(--sp-4);border-left:2px solid var(--navy-125)}.timeline-entry:before{content:"";position:absolute;left:-5px;top:4px;width:8px;height:8px;border-radius:50%;background:var(--navy-400)}.timeline-entry.is-appointment:before{background:var(--teal)}.timeline-entry.is-sale:before{background:var(--accent)}.timeline-entry.is-note:before{background:var(--purple)}.timeline-when{font-size:11px;font-weight:700;letter-spacing:.04em;color:var(--text-muted)}.timeline-title{font-size:var(--fs-base);color:var(--navy-900);margin-top:1px}.timeline-body{font-size:var(--fs-sm);color:var(--text-muted);margin-top:2px}.detail-blank,.detail-hint{font-size:var(--fs-sm);color:var(--text-muted);line-height:1.5;margin:0 0 6px}.duration-edit{display:inline-flex;align-items:center;gap:5px;font-size:var(--fs-sm);color:var(--text-muted)}.duration-edit input{width:62px;height:28px;border:1px solid var(--border);border-radius:var(--radius);padding:0 6px;text-align:right;font-size:var(--fs-base)}.merge-list{margin-top:var(--sp-2);max-height:260px;overflow-y:auto}.merge-row{display:flex;align-items:center;gap:var(--sp-2);width:100%;border:1px solid transparent;background:transparent;border-radius:var(--radius);padding:6px 8px;font:inherit;font-size:var(--fs-base);text-align:left}.merge-row>span:nth-child(2){flex:1;min-width:0}.merge-row:hover{background:var(--navy-125)}.merge-row.is-active{border-color:var(--accent);background:var(--accent-soft)}.date-nav{display:inline-flex;align-items:center;gap:2px}.date-nav button{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid var(--border);background:#fff;border-radius:var(--radius);color:var(--navy-900)}.date-nav button:hover{background:var(--navy-125)}.date-nav-label{width:auto!important;padding:0 12px;font:inherit;font-weight:600}.turn-empty{padding:48px;text-align:center;color:var(--text-muted)}.turn-next{display:flex;align-items:center;gap:var(--sp-3);margin:var(--sp-4) var(--sp-6) 0;padding:var(--sp-4);border-radius:var(--radius-lg, 8px);background:var(--accent-soft);border:1px solid var(--accent)}.turn-next-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.turn-next-name{display:flex;flex-direction:column;font-size:20px;font-weight:700;color:var(--navy-900)}.turn-next-name span{font-size:var(--fs-sm);font-weight:500;color:var(--text-muted)}.turn-last{margin-left:auto;text-align:right;font-size:var(--fs-sm);color:var(--text-muted)}.turn-last strong{display:block;font-size:var(--fs-base);color:var(--navy-900)}.turn-last em{font-style:normal;font-size:11px}.turn-board{margin:var(--sp-4) var(--sp-6) 0;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.turn-row{display:flex;align-items:center;gap:var(--sp-3);padding:10px var(--sp-4);border-bottom:1px solid var(--navy-125);background:#fff}.turn-row:last-child{border-bottom:0}.turn-row.is-next{background:var(--accent-soft)}.turn-pos{width:20px;font-variant-numeric:tabular-nums;font-weight:700;color:var(--text-muted);text-align:right}.turn-who{display:flex;flex-direction:column;min-width:108px}.turn-name{font-weight:600;color:var(--navy-900)}.turn-tally{font-size:var(--fs-sm);color:var(--text-muted)}.turn-entries{display:flex;flex-wrap:wrap;align-items:center;gap:5px;flex:1;min-width:0}.turn-none{font-size:var(--fs-sm);color:var(--text-muted);font-style:italic}.turn-chip{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 8px;border:1px solid var(--border);border-radius:var(--radius-pill);background:#fff;font-size:var(--fs-sm);color:var(--navy-900);max-width:200px}.turn-chip em{font-style:normal;color:var(--text-muted)}.turn-chip.is-appt{border-style:dashed;color:var(--text-muted)}.turn-chip.is-appt.is-counted{border-style:solid;border-color:var(--navy-400);color:var(--navy-900);font-weight:600}.turn-chip.is-appt:hover{border-color:var(--accent)}.turn-chip.is-bonus{background:var(--bg-gray)}.turn-chip-x{display:inline-flex;border:0;background:transparent;padding:0;color:var(--text-muted);opacity:.6}.turn-chip-x:hover{opacity:1;color:var(--red)}.turn-dot{width:8px;height:8px;border-radius:50%;flex:none}.turn-dot.is-walkin{background:var(--accent)}.turn-dot.is-appt{background:transparent;box-shadow:inset 0 0 0 2px var(--teal)}.turn-dot.is-appt.is-counted{background:var(--teal)}.turn-dot.is-bonus{background:var(--navy-400)}.turn-actions{display:flex;gap:2px;margin-left:auto}.btn-sm{height:28px;padding:0 8px}.turn-legend{display:flex;flex-wrap:wrap;gap:var(--sp-4);padding:var(--sp-4) var(--sp-6) var(--sp-6);font-size:var(--fs-sm);color:var(--text-muted)}.turn-legend span{display:inline-flex;align-items:center;gap:6px}.turnstrip{border-bottom:1px solid var(--border);background:var(--accent-soft)}.turnstrip-head{display:flex;align-items:center;gap:var(--sp-2);width:100%;border:0;background:transparent;padding:10px var(--sp-4);font:inherit;text-align:left}.turnstrip-you{font-weight:700;color:var(--accent)}.turnstrip-next{display:inline-flex;align-items:center;gap:5px;margin-left:auto;font-size:var(--fs-sm);color:var(--text-muted)}.turnstrip-head svg{color:var(--text-muted);transition:transform var(--dur-fast)}.turnstrip-head svg.is-open{transform:rotate(180deg)}.turnstrip-bonus{display:flex;align-items:center;gap:6px;padding:7px var(--sp-4);border-top:1px solid rgba(25,30,73,.08);font-size:var(--fs-sm);color:var(--text-muted)}.turnstrip-bonus.is-me{font-weight:700;color:var(--accent)}.turnstrip-bonus-mark{flex:none;width:18px;height:18px;display:grid;place-items:center;border-radius:var(--radius);background:var(--red-soft);color:var(--red);font-size:11px;font-weight:800}.turnstrip-list{list-style:none;margin:0;padding:0 var(--sp-4) var(--sp-3)}.turnstrip-list li{display:grid;grid-template-columns:14px 140px 1fr 26px 18px;align-items:center;gap:6px;padding:6px 0;font-size:var(--fs-base)}.turnstrip-list li.is-me .turnstrip-name{font-weight:700;color:var(--accent)}.turnstrip-pos{width:16px;font-variant-numeric:tabular-nums;font-weight:700;color:var(--text-muted)}.turnstrip-name{display:inline-flex;align-items:center;gap:6px;min-width:0;color:var(--navy-900)}.turnstrip-count{font-size:var(--fs-sm);font-variant-numeric:tabular-nums;text-align:right;color:var(--text-muted)}.turn-arrived{border:0;background:transparent;padding:0 0 0 6px;font:inherit;font-size:var(--fs-sm);color:var(--text-muted);opacity:.75}.turn-arrived:hover{opacity:1;color:var(--accent);text-decoration:line-through}.turn-waiting{margin:var(--sp-4) var(--sp-6) 0;padding:var(--sp-3) var(--sp-4);border:1px dashed var(--border);border-radius:var(--radius);background:var(--bg-gray)}.turn-waiting-title{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}.turn-waiting-row{display:flex;align-items:center;gap:var(--sp-2);width:100%;padding:5px var(--sp-2);border:0;border-radius:var(--radius);background:none;font:inherit;font-size:var(--fs-base);color:var(--text-muted);text-align:left;cursor:pointer}.turn-waiting-row:hover,.turn-waiting-row:focus-visible{background:var(--accent-soft)}.turn-waiting-name{color:var(--navy-900)}.turn-waiting-go{display:inline-flex;align-items:center;gap:6px;margin-left:auto;white-space:nowrap}.turn-waiting-row:hover .turn-waiting-go,.turn-waiting-row:focus-visible .turn-waiting-go{color:var(--accent)}.turnstrip.is-arrive{background:var(--accent-soft)}.turnstrip-arrive{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);font-size:var(--fs-sm);color:var(--navy-900);line-height:1.4}.turnstrip-arrive button{flex:none;white-space:nowrap}.turnstrip-count strong{color:var(--navy-900);font-weight:600}.tally{margin:var(--sp-4) var(--sp-6) 0;padding:var(--sp-4);border:1px solid var(--border);border-radius:var(--radius);background:#fff}.tally-head{display:flex;align-items:center;flex-wrap:wrap;gap:var(--sp-3);margin-bottom:var(--sp-3)}.tally-title{font-size:var(--fs-sm);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.tally-legend{display:flex;flex-wrap:wrap;gap:var(--sp-3);margin-left:auto;font-size:var(--fs-sm);color:var(--text-muted)}.tally-legend span{display:inline-flex;align-items:center;gap:5px}.tally-rows{display:flex;flex-direction:column;gap:6px}.tally-row{display:grid;grid-template-columns:22px 184px 1fr 96px 48px;align-items:center;gap:var(--sp-3)}.tally-pos{font-variant-numeric:tabular-nums;font-weight:700;color:var(--text-muted);text-align:right}.tally-name{display:inline-flex;align-items:center;gap:7px;font-size:var(--fs-base);color:var(--navy-900);min-width:0}.tally-marks{display:flex;flex-wrap:wrap;align-items:center;gap:3px;min-height:26px}.mark{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex:none;border:0;background:transparent;border-radius:3px;font-family:var(--font);font-size:14px;font-weight:700;line-height:1;color:var(--navy-900);font-style:normal}.mark.is-turn{color:var(--navy-900)}.mark.is-booked{background:var(--marker-yellow);box-shadow:inset 0 0 0 1px #b4960047}button.mark.is-booked:hover{box-shadow:inset 0 0 0 1px #b4960099}button.mark.is-turn:hover{background:var(--navy-125)}button.mark{cursor:pointer}.tally-hint{color:var(--text-faint);font-style:italic}.mark-change{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2);margin-top:var(--sp-3)}.mark-change-label{font-size:13px;color:var(--text-muted);margin-right:var(--sp-1)}.mark-facts{display:grid;grid-template-columns:64px 1fr;gap:6px var(--sp-3);margin:0 0 var(--sp-3)}.mark-facts dt{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);align-self:center}.mark-facts dd{margin:0;font-size:var(--fs-base);color:var(--navy-900)}.mark.is-bonus{color:var(--red);background:var(--red-soft);font-size:12px;font-style:italic}.pick-list{display:flex;flex-direction:column;gap:2px;margin:0 -6px}.pick-row{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:42px;padding:0 10px;border:0;border-radius:var(--radius-md);background:transparent;font-family:inherit;font-size:var(--fs-base);font-weight:600;color:var(--text);text-align:left;cursor:pointer}.pick-row:hover{background:var(--navy-125)}.pick-row:active{background:var(--red-soft)}.mark.is-bonus.has-amount{width:auto;min-width:24px;padding:0 6px;font-style:normal;font-variant-numeric:tabular-nums}.tally-count{font-variant-numeric:tabular-nums;font-size:var(--fs-base);color:var(--text-muted);text-align:right}.tally-count strong{font-size:15px;color:var(--navy-900)}.tally-marks.is-static .mark{width:18px;height:18px;font-size:11px;border-radius:2px}.working-tag{flex:none;padding:1px 7px;border-radius:var(--radius-pill);background:var(--red-soft);color:var(--red);font-size:11px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap}.turnstrip-list li .tally-marks{min-width:0;min-height:0;gap:2px}.turnstrip-list li .tally-bonus{padding-left:6px;min-height:0;gap:2px}.tally-bonus{display:flex;flex-wrap:wrap;align-items:center;gap:3px;padding-left:var(--sp-3);border-left:1px solid var(--navy-125);min-height:26px}.tally-row.is-header{padding-bottom:2px}.tally-col{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint)}.tally-row.is-header .tally-col:last-of-type{padding-left:var(--sp-3)}.tally-none{color:var(--text-faint);font-size:var(--fs-sm)}.mark.is-booked.is-done{color:var(--navy-900)}.start-bar{padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--border)}.start-option.is-skip{border-color:var(--amber);background:var(--amber-soft);color:var(--amber-ink)}.start-option.is-skip svg{color:var(--amber-ink)}.start-option.is-skip em{color:var(--amber-ink);opacity:.75}.start-option{display:flex;align-items:center;gap:var(--sp-3);width:100%;border:1px solid var(--border);border-radius:var(--radius);background:#fff;padding:14px var(--sp-4);margin-bottom:var(--sp-2);font:inherit;text-align:left;color:var(--navy-900)}.start-option:active{background:var(--navy-125)}.start-option svg{flex:none;color:var(--accent)}.start-option span{display:flex;flex-direction:column}.start-option strong{font-size:15px}.start-option em{font-style:normal;font-size:var(--fs-sm);color:var(--text-muted)}.start-hint{margin:0 0 var(--sp-3);font-size:var(--fs-sm);color:var(--text-muted);line-height:1.45}.start-warn{margin:0 0 var(--sp-3);padding:8px 10px;border-radius:var(--radius);background:var(--amber-soft);color:var(--amber-ink);font-size:var(--fs-sm)}.start-asked{margin-bottom:var(--sp-2);color:var(--navy-900);font-size:15px;font-weight:700}.start-booked-row{display:flex;align-items:center;gap:var(--sp-2);padding:8px 0}.start-booked-row span{display:flex;flex-direction:column}.start-booked-row em{font-style:normal;font-size:var(--fs-sm);color:var(--text-muted)}.start-divider{margin:var(--sp-3) 0 var(--sp-2);padding-top:var(--sp-3);border-top:1px solid var(--navy-125);font-size:var(--fs-sm);font-weight:700;color:var(--text-muted)}.tech-month{padding:0 var(--sp-4) var(--sp-2)}.tech-month .datepicker{position:static;width:100%;padding:0;border:0;box-shadow:none}.dp-day:has(.dp-count){height:auto;min-height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}.dp-count{min-width:18px;height:16px;padding:0 5px;border-radius:8px;background:var(--accent);color:#fff;font-size:11px;font-weight:700;line-height:16px}.dp-count.is-none{background:transparent}.dp-day.is-selected .dp-count{background:#fff;color:var(--accent)}.tech-month-day{padding:var(--sp-3) var(--sp-4) var(--sp-1);font-size:var(--fs-sm);font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.tech-month-list{padding:0 var(--sp-4);max-height:calc(32 * var(--vh));overflow-y:auto}.tech-peek-when{display:flex;align-items:center;gap:var(--sp-2);padding:0 var(--sp-4);font-size:var(--fs-md);color:var(--text-muted)}.tech-row.is-theirs .tech-row-service,.tech-row.is-theirs .tech-row-client{color:var(--text-muted)}.tech-peek-notes{white-space:pre-wrap;padding-bottom:var(--sp-3)}.tech-month-open{display:block;width:calc(100% - 2 * var(--sp-4));margin:var(--sp-3) var(--sp-4) 0}.tech-sheet-cancel{width:100%;border:0;background:transparent;padding:14px;margin-top:var(--sp-2);font:inherit;font-size:15px;color:var(--text-muted)}.pay-back{display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:50%;background:transparent;color:#fff}.pay-body{padding:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-4)}.pay-empty{padding:var(--sp-6) var(--sp-4);text-align:center;color:var(--text-muted);font-size:var(--fs-base)}.pay-periods{display:flex;gap:var(--sp-2);overflow-x:auto;margin:0 calc(-1 * var(--sp-4));padding:0 var(--sp-4)}.pay-period-tab{flex:none;border:1px solid var(--border);border-radius:var(--radius-pill);background:#fff;color:var(--text-muted);font-family:inherit;font-size:var(--fs-sm);font-weight:700;padding:6px 12px;white-space:nowrap}.pay-period-tab.is-active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.pay-periods{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.pay-periods::-webkit-scrollbar{display:none}.pay-period-tab.is-more{display:inline-flex;align-items:center;gap:4px}.pay-period-tab.is-more svg{transition:transform .15s ease}.pay-period-tab.is-more.is-open svg{transform:rotate(180deg)}.pay-history{margin-top:var(--sp-3);border:1px solid var(--border);border-radius:var(--radius-md);background:#fff;max-height:320px;overflow-y:auto}.pay-history-head{position:sticky;top:0;background:var(--navy-125);color:var(--text-muted);font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;padding:6px var(--sp-3)}.pay-history-row{display:flex;align-items:center;gap:var(--sp-2);width:100%;border:0;border-top:1px solid var(--border);background:none;color:inherit;font-family:inherit;font-size:var(--fs-sm);text-align:left;padding:10px var(--sp-3)}.pay-history-year:first-child .pay-history-row:first-of-type{border-top:0}.pay-history-row.is-active{background:var(--accent-soft);color:var(--accent);font-weight:700}.pay-history-total{margin-left:auto;font-variant-numeric:tabular-nums}.pay-history-open{flex:none;border-radius:var(--radius-pill);background:#fdf3dc;color:#8a6100;font-size:var(--fs-xs);font-weight:700;padding:2px 8px}.pay-head{display:flex;flex-direction:column;gap:2px}.pay-label{font-size:var(--fs-lg);font-weight:800}.pay-state{align-self:flex-start;font-size:var(--fs-sm);font-weight:700;color:#8a6100;background:#fdf3dc;border-radius:var(--radius-pill);padding:2px 10px}.pay-state.is-final{color:var(--text-muted);background:var(--navy-125)}.pay-tiles{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-3)}.pay-tile{display:flex;flex-direction:column;gap:1px;padding:var(--sp-3);border:1px solid var(--border);border-radius:var(--radius-md);background:#fff}.pay-tile.is-total{grid-column:1 / -1;border-color:var(--accent);background:var(--accent);color:#fff}.pay-tile-label{font-size:var(--fs-xs);font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.pay-tile.is-total .pay-tile-label,.pay-tile.is-total .pay-tile-note{color:#ffffffd9}.pay-tile-value{font-size:var(--fs-xl);font-weight:800}.pay-tile-note{font-size:var(--fs-xs);color:var(--text-muted)}.pay-days{border:1px solid var(--border);border-radius:var(--radius-md);background:#fff;overflow:hidden}.pay-day-head,.pay-day{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1.05fr) minmax(0,1.05fr) minmax(0,1fr);gap:9px;align-items:center;padding:9px 10px;font-size:12px;font-variant-numeric:tabular-nums}.pay-day-head>*+*,.pay-day>*+*{text-align:right}.pay-day-head{font-size:10px;font-weight:800;line-height:1.25;text-transform:uppercase;color:var(--text-muted);background:var(--navy-125)}.pay-day+.pay-day,.pay-day.is-total{border-top:1px solid var(--border)}.pay-day.is-tappable{width:100%;font:inherit;color:inherit;text-align:left;background:none;border:0;border-radius:0;cursor:pointer;-webkit-tap-highlight-color:transparent}.pay-day.is-tappable:active{background:var(--navy-125)}.pay-day-date{font-weight:700;text-align:left;white-space:nowrap}.pay-day-clients{margin-left:5px;font-style:normal;font-weight:400;color:var(--text-faint)}.pay-day-clients:before{content:"·";margin-right:4px}.pay-day-comm{color:var(--accent);font-weight:800}.pay-day.is-total{border-top-width:2px;border-top-color:var(--navy-900);font-weight:800}.pay-facts{margin-top:var(--sp-3);border:1px solid var(--border);border-radius:var(--radius-md);background:#fff;overflow:hidden}.pay-facts-head{padding:9px 10px;background:var(--navy-125);font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.pay-fact{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-3);padding:9px 10px;font-size:12px}.pay-fact+.pay-fact{border-top:1px solid var(--border)}.pay-fact-label{flex:none;color:var(--text-muted)}.pay-fact-right{min-width:0;text-align:right}.pay-fact-value{display:block;font-size:15px;font-weight:800;font-variant-numeric:tabular-nums;color:var(--navy-900)}.pay-fact-note{display:block;margin-top:2px;font-size:11px;color:var(--text-faint)}.pay-extra-head,.pay-extra{display:grid;grid-template-columns:1.05fr 1.6fr .9fr;gap:9px;align-items:center;padding:9px 10px;font-size:12px;font-variant-numeric:tabular-nums}.pay-extra-head span+span,.pay-extra span+span,.pay-extra strong{text-align:right}.pay-extra-head{font-size:10px;font-weight:800;line-height:1.25;text-transform:uppercase;color:var(--text-muted);background:var(--navy-125)}.pay-extra+.pay-extra{border-top:1px solid var(--border)}.pay-extra .pay-extra-label{text-align:left;font-weight:600;color:var(--text-muted);overflow-wrap:anywhere}.pay-note{margin:0;font-size:var(--fs-xs);color:var(--text-muted);line-height:1.45}.pay-roster-head,.pay-roster-row{display:grid;grid-template-columns:1.25fr .5fr 1fr 1fr 1fr;gap:9px;align-items:center;width:100%;padding:11px 10px;font-size:12px;font-variant-numeric:tabular-nums;text-align:right;border:0;background:#fff;font-family:inherit;color:inherit}.pay-roster-head{font-size:10px;font-weight:800;line-height:1.25;text-transform:uppercase;color:var(--text-muted);background:var(--navy-125)}.pay-roster-row+.pay-roster-row,.pay-roster-row.is-total{border-top:1px solid var(--border)}.pay-roster-row:hover{background:var(--navy-125)}.pay-roster-row.is-total{border-top-width:2px;border-top-color:var(--navy-900);font-weight:800}.pay-roster-row.is-idle,.pay-roster-row.is-idle .pay-day-comm{color:var(--text-faint);font-weight:600}.pay-salon-head,.pay-salon{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:9px;align-items:center;padding:11px 10px;font-size:12px;font-variant-numeric:tabular-nums}.pay-salon-head span+span,.pay-salon span+span,.pay-salon strong{text-align:right}.pay-salon-head{font-size:10px;font-weight:800;line-height:1.25;text-transform:uppercase;color:var(--text-muted);background:var(--navy-125)}.pay-salon+.pay-salon{border-top:1px solid var(--border)}.pay-day-pick{width:auto;max-width:100%;min-width:0;padding:3px 8px;border:1px solid var(--border);border-radius:var(--radius-pill);background:#fff;font:inherit;font-size:11px;font-weight:700;font-variant-numeric:tabular-nums;color:inherit}.pay-day-pick::-webkit-calendar-picker-indicator{opacity:.55;margin-left:2px}.pay-day-today{display:inline-block;margin-left:6px;font-style:normal;font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);vertical-align:middle}.pay-cash{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 10px;font-size:12px;font-weight:800;font-variant-numeric:tabular-nums;border-top:2px solid var(--navy-900)}.pay-cash strong{color:var(--accent);font-size:15px}.pay-cash-note{display:block;margin-top:2px;font-size:10px;font-weight:600;color:var(--text-muted)}.inbox{display:grid;grid-template-columns:20rem minmax(0,1fr) auto;height:100%;min-height:0;flex:1;min-width:0}.inbox-back{display:none;border:0;background:none;color:var(--text);padding:0;margin-right:var(--sp-1);cursor:pointer}@media(max-width:900px){.inbox{grid-template-columns:minmax(0,1fr)}.inbox-details,.inbox.has-thread .inbox-list{display:none}.inbox:not(.has-thread) .inbox-thread{display:none}.inbox-back{display:grid;place-items:center}}.inbox-list,.inbox-thread,.inbox-details{min-height:0;overflow-y:auto}.inbox-list{border-right:1px solid var(--border);background:var(--white)}.inbox-list-head{display:flex;gap:.25rem;padding:.6rem .75rem;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--white)}.inbox-filter{border:0;background:none;color:var(--text-muted);font:inherit;font-size:.85rem;padding:.25rem .6rem;border-radius:999px;cursor:pointer}.inbox-filter.is-on{background:var(--accent-soft);color:var(--accent);font-weight:600}.inbox-row{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid var(--border);background:none;font:inherit;padding:.7rem .75rem;cursor:pointer}.inbox-row:hover{background:var(--bg-gray)}.inbox-row.is-selected{background:var(--accent-soft)}.inbox-row-top{display:flex;justify-content:space-between;gap:.5rem}.inbox-row-name{font-weight:600;color:var(--text)}.inbox-row-when{color:var(--text-faint);font-size:.8rem;white-space:nowrap}.inbox-row-preview{color:var(--text-muted);font-size:.85rem;margin-top:.15rem;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.inbox-call{border-bottom:1px solid var(--border);padding:.7rem .75rem}.inbox-call:hover{background:var(--bg-gray)}.inbox-call.is-selected{background:var(--accent-soft)}.inbox-call-main{display:block;width:100%;text-align:left;border:0;background:none;font:inherit;padding:0;cursor:pointer}.inbox-call .inbox-row-name{display:inline-flex;align-items:center;gap:.35rem}.inbox-call.is-missed .inbox-row-preview{color:var(--red);font-weight:600}.inbox-empty-note{color:var(--text-muted);font-size:.85rem;padding:1.25rem .9rem;margin:0;line-height:1.5}.inbox-dot{display:inline-block;width:.45rem;height:.45rem;border-radius:50%;background:var(--accent);margin-right:.35rem;vertical-align:middle}.inbox-thread{display:flex;flex-direction:column;background:var(--bg-gray)}.inbox-thread-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;background:var(--white);border-bottom:1px solid var(--border)}.inbox-thread-sub{color:var(--text-muted);font-size:.85rem;margin-left:.6rem}.inbox-messages{flex:1;min-height:0;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.75rem}.msg{display:flex;flex-direction:column;max-width:34rem}.msg-in{align-self:flex-start;align-items:flex-start}.msg-out{align-self:flex-end;align-items:flex-end}.msg-bubble{padding:.55rem .8rem;border-radius:.9rem;white-space:pre-wrap;word-break:break-word}.msg-in .msg-bubble{background:var(--white);border:1px solid var(--border);color:var(--text)}.msg-out .msg-bubble{background:var(--accent);color:var(--text-invert)}.msg-meta{font-size:.75rem;color:var(--text-faint);margin-top:.2rem}.msg-image{display:block;max-width:100%;border-radius:.5rem;margin-top:.4rem}.msg-note{align-self:center;flex-direction:row;gap:.5rem;align-items:flex-start;background:var(--marker-yellow);color:var(--text);padding:.5rem .75rem;border-radius:.5rem;max-width:30rem}.msg-call{align-self:center;flex-direction:row;gap:.5rem;align-items:flex-start;background:var(--bg-gray);border:1px solid var(--border);color:var(--text-muted);padding:.5rem .75rem;border-radius:.5rem;max-width:30rem}.msg-call>svg{flex:none;margin-top:.15rem}.msg-call.is-missed{background:var(--red-soft);border-color:var(--red);color:var(--red)}.call-audio{display:block;margin:.4rem 0 .1rem;width:15rem;max-width:100%;height:2rem}.msg-call-body{flex:1;min-width:0}.msg-call.has-transcript{width:100%;max-width:34rem}.call-transcript{margin-top:.5rem}.call-transcript>summary{cursor:pointer;font-size:.8rem;font-weight:600;color:var(--text-muted)}.call-transcript-lines{display:flex;flex-direction:column;gap:.2rem;margin-top:.3rem}.call-line{display:flex;flex-direction:column;max-width:85%}.call-line.is-first{margin-top:.4rem}.call-line.is-client{align-self:flex-start;align-items:flex-start}.call-line.is-salon{align-self:flex-end;align-items:flex-end}.call-line-who{font-size:.72rem;font-weight:700;color:var(--text-muted);margin-bottom:.1rem}.call-line.is-salon .call-line-who{color:var(--accent)}.call-line-text{padding:.35rem .6rem;border-radius:.7rem;font-size:.88rem;line-height:1.35;color:var(--text);background:var(--white);border:1px solid var(--border);word-break:break-word}.call-line.is-salon .call-line-text{background:var(--accent-soft);border-color:transparent}.call-transcript-note,.call-transcript-empty{font-size:.72rem;color:var(--text-faint);margin:.4rem 0 0}.inbox-empty-dial{display:flex;justify-content:center;padding-bottom:var(--sp-6)}.inbox-stopped,.inbox-note,.inbox-error{display:flex;align-items:center;gap:.4rem;padding:.5rem 1rem;font-size:.9rem}.inbox-stopped{background:var(--red-soft);color:var(--red)}.inbox-note{background:var(--amber-soft);color:var(--amber-ink)}.inbox-error{background:var(--red-soft);color:var(--red)}.inbox-compose{background:var(--white);border-top:1px solid var(--border);padding:.6rem 1rem .8rem}.inbox-tabs{display:flex;gap:1rem;margin-bottom:.4rem}.inbox-tabs button{border:0;background:none;font:inherit;font-size:.9rem;color:var(--text-muted);padding:.2rem 0;cursor:pointer;border-bottom:2px solid transparent}.inbox-tabs button.is-on{color:var(--accent);font-weight:600;border-bottom-color:var(--accent)}.inbox-compose textarea{width:100%;resize:vertical;border:1px solid var(--border);border-radius:.4rem;padding:.5rem .6rem;font:inherit}.inbox-compose-foot{display:flex;align-items:center;justify-content:space-between;margin-top:.5rem}.inbox-count{color:var(--text-faint);font-size:.8rem}.inbox-details{width:15rem;border-left:1px solid var(--border);background:var(--white);padding:.9rem}.inbox-details h3{margin:0 0 .6rem;font-size:.95rem}.inbox-details-name{font-weight:600;margin:0 0 .2rem}.inbox-details-line{color:var(--text-muted);font-size:.9rem;margin:0 0 .2rem}.inbox-details-warn{color:var(--amber-ink);background:var(--amber-soft);font-size:.85rem;padding:.4rem .5rem;border-radius:.35rem;margin-top:.5rem}.page-title{font-size:var(--fs-lg);font-weight:800;margin:0;color:var(--text)}.page-sub{margin:2px 0 0;font-size:var(--fs-base);color:var(--text-muted)}.muted-note{display:flex;align-items:center;gap:var(--sp-1);margin:var(--sp-2) 0 0;font-size:var(--fs-sm);color:var(--text-muted)}.warn-note{margin:var(--sp-2) 0 0;font-size:var(--fs-sm);color:var(--amber-ink);background:var(--amber-soft);border-radius:var(--radius);padding:var(--sp-2) var(--sp-3)}.auto-body{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:var(--sp-6);padding:var(--sp-5) var(--sp-6) var(--sp-8);overflow-y:auto;flex:1;min-height:0}.timeline{position:relative;padding-left:var(--sp-6);align-self:start}.timeline:before{content:"";position:absolute;left:5px;top:12px;bottom:26px;width:2px;background:var(--border)}.timeline-slot{position:relative;margin-bottom:var(--sp-5)}.timeline-dot{position:absolute;left:calc(var(--sp-6) * -1);top:14px;width:12px;height:12px;border-radius:50%;background:var(--white);border:2px solid var(--border)}.timeline-dot.is-on{background:var(--accent);border-color:var(--accent)}.timeline-dot.is-end{background:var(--navy-900);border-color:var(--navy-900)}.timeline-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--sp-4)}.timeline-card.is-plain{background:transparent;border:0;padding:var(--sp-3) 0}.timeline-slot.is-fixed .timeline-card{background:var(--bg-gray)}.slot-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-4)}.slot-when{display:block;font-size:var(--fs-sm);color:var(--text-muted);margin-top:2px}.msg-row{display:flex;align-items:center;gap:var(--sp-2);width:100%;margin-top:var(--sp-3);padding:var(--sp-3);background:var(--white);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;font:inherit;color:var(--text);text-align:left}.msg-row:hover{border-color:var(--accent)}.msg-preview{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted);font-size:var(--fs-base)}.msg-segs{flex:none;font-size:var(--fs-xs);color:var(--text-faint);white-space:nowrap}.msg-editor{margin-top:var(--sp-3);padding-top:var(--sp-3);border-top:1px solid var(--navy-125)}.tag-row{display:flex;flex-wrap:wrap;gap:var(--sp-1);margin-bottom:var(--sp-3)}.tag-row .chip{cursor:pointer;font-size:var(--fs-xs)}.bubble-wrap{margin-top:var(--sp-2)}.bubble{background:var(--navy-125);border-radius:14px 14px 14px 4px;padding:var(--sp-3) var(--sp-4);font-size:var(--fs-base);line-height:1.5;max-width:34rem;white-space:pre-wrap}.auto-side,.flow-side{display:flex;flex-direction:column;gap:var(--sp-4)}.side-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--sp-4)}.side-card h3{display:flex;align-items:center;gap:var(--sp-2);margin:0 0 var(--sp-2);font-size:var(--fs-base);font-weight:800}.side-card p{margin:0 0 var(--sp-2);font-size:var(--fs-sm);color:var(--text-muted);line-height:1.55}.side-card textarea{width:100%;font:inherit;font-size:var(--fs-base);border:1px solid var(--border);border-radius:var(--radius);padding:var(--sp-2);resize:vertical}.side-card.is-warn{border-color:var(--amber);background:var(--amber-soft)}.side-card.is-warn h3{color:var(--amber-ink)}.switch{display:inline-flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-base);cursor:pointer;white-space:nowrap}.switch input{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}.switch input:disabled{cursor:not-allowed}.switch-lg,.flow-name{font-weight:700}.built-in-flow{flex:none;border:1px solid var(--navy-125);border-radius:10px;overflow:hidden;margin:0 var(--sp-6) var(--sp-5);background:#fff}.built-in-flow .table-row{border-top:0;cursor:default}.built-in-flow .table-row:hover{background:#fff}.built-in-flow .flow-name{display:flex;align-items:center;gap:6px}.built-in-flow .msg-row{margin:0;border:0;border-top:1px solid var(--navy-125);border-radius:0;padding:var(--sp-3) var(--sp-6)}.built-in-flow .msg-editor{margin-top:0;padding:var(--sp-4) var(--sp-6);border-top:1px solid var(--navy-125)}.review-stats{display:flex;flex-direction:column;gap:var(--sp-3)}.rs-summary{display:flex;flex-wrap:wrap;gap:var(--sp-2) var(--sp-5);padding:var(--sp-3) var(--sp-4);background:var(--bg-gray);border-radius:8px;font-size:13px}.rs-summary strong{font-size:15px;font-variant-numeric:tabular-nums}.rs-head{font-size:12px;font-weight:600;letter-spacing:.02em;opacity:.65;margin-top:var(--sp-2)}.rs-rows{display:flex;flex-direction:column;gap:3px}.rs-row{display:grid;grid-template-columns:34px minmax(60px,1fr) 52px 56px minmax(0,1.6fr);align-items:center;gap:var(--sp-2);font-size:12.5px}.rs-id{font-weight:700;font-size:13px;text-align:center;padding:1px 0;border-radius:5px;background:var(--accent-soft);color:var(--accent)}.rs-id.benched{background:var(--bg-gray);color:inherit;opacity:.6}.review-stats .muted-note{display:block}.rs-row.time-row{grid-template-columns:104px minmax(60px,1fr) 52px 56px minmax(0,1.6fr)}.rs-id.time{background:none;color:inherit;font-weight:600;font-size:11.5px;text-align:left;white-space:nowrap}.rs-bar-wrap{height:9px;border-radius:5px;background:var(--bg-gray);overflow:hidden}.rs-bar{display:block;height:100%;border-radius:5px;background:var(--accent);min-width:2px}.rs-bar.time{background:var(--green)}.rs-num{font-variant-numeric:tabular-nums;font-weight:600;text-align:right}.rs-sub{font-variant-numeric:tabular-nums;opacity:.55;text-align:right;font-size:11.5px}.rs-what{opacity:.6;font-size:11.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rs-what em{color:var(--green-ink);font-style:normal;font-weight:600}@media(max-width:720px){.rs-row{grid-template-columns:30px minmax(40px,1fr) 48px 50px}.rs-row.time-row{grid-template-columns:92px minmax(40px,1fr) 48px 50px}.rs-what{display:none}.rs-id.time{font-size:11px}}.flow-desc{font-size:var(--fs-sm);color:var(--text-muted)}.sheet-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#191e4959;display:flex;align-items:stretch;justify-content:flex-end;z-index:60}.sheet{background:var(--bg-gray);display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}.sheet-wide{width:min(760px,100%);margin:auto;max-height:86vh;border-radius:var(--radius-md);background:var(--white)}.sheet-full{width:min(1180px,100%)}.sheet-head{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-4) var(--sp-5);background:var(--white);border-bottom:1px solid var(--border)}.sheet-head h2{margin:0;font-size:var(--fs-lg)}.sheet-tabs{margin:var(--sp-4) var(--sp-5) 0;align-self:flex-start}.flow-head{display:flex;align-items:center;gap:var(--sp-3);min-width:0}.flow-title-input{font-size:var(--fs-lg);font-weight:800;border:1px solid transparent;border-radius:var(--radius);padding:var(--sp-1) var(--sp-2);background:transparent;font-family:inherit;color:var(--text);min-width:18rem}.flow-title-input:hover{border-color:var(--border)}.flow-title-input:focus{border-color:var(--focus);outline:none;background:var(--white)}.trigger-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:var(--sp-3);padding:var(--sp-5);overflow-y:auto}.trigger-card{display:flex;flex-direction:column;align-items:flex-start;gap:var(--sp-1);padding:var(--sp-4);background:var(--white);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;font:inherit;text-align:left;color:var(--text)}.trigger-card:hover{border-color:var(--accent);background:var(--accent-soft)}.trigger-card svg{color:var(--accent)}.trigger-card span{font-size:var(--fs-sm);color:var(--text-muted);line-height:1.5}.flow-build{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:var(--sp-6);padding:var(--sp-5);overflow-y:auto;flex:1;min-height:0}.flow-canvas{min-width:0}.node{display:flex;gap:var(--sp-3);background:var(--white);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--sp-4)}.node-trigger{border-color:var(--navy-300)}.node-icon{flex:none;width:32px;height:32px;display:grid;place-items:center;border-radius:var(--radius);background:var(--purple);color:var(--navy-900)}.node-icon.is-trigger{background:var(--teal)}.node-body{flex:1;min-width:0}.node-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);margin-bottom:var(--sp-2)}.node-kind{display:block;font-size:var(--fs-sm);color:var(--text-muted)}.node-body textarea{width:100%;font:inherit;font-size:var(--fs-base);border:1px solid var(--border);border-radius:var(--radius);padding:var(--sp-2);resize:vertical}.inline-field{display:flex;flex-direction:row;align-items:center;gap:var(--sp-2);margin:var(--sp-2) 0 0}.inline-field label{font-size:var(--fs-sm);color:var(--text-muted);margin:0}.inline-field input,.inline-field select{width:auto;min-width:8rem}.step-join{position:relative;height:34px}.step-join:before{content:"";position:absolute;top:0;bottom:0;left:32px;width:2px;background:var(--border)}.step-join.is-last:before{bottom:50%}.join-add{position:absolute;top:7px;left:23px;z-index:1;width:20px;height:20px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--border);background:var(--white);color:var(--navy-500);cursor:pointer;padding:0}.join-add:hover{border-color:var(--accent);color:var(--accent)}.join-menu{position:absolute;top:30px;left:52px;z-index:3;background:var(--white);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--sp-1);display:flex;flex-direction:column;min-width:170px}.join-menu button{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border:0;background:transparent;font:inherit;font-size:var(--fs-base);color:var(--text);cursor:pointer;border-radius:var(--radius);text-align:left}.join-menu button:hover{background:var(--accent-soft);color:var(--accent)}.cond-block{margin-top:var(--sp-3);padding-top:var(--sp-3);border-top:1px dashed var(--border)}.cond-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);margin-bottom:var(--sp-2);font-size:var(--fs-sm);color:var(--text-muted)}.cond-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr) minmax(0,1fr) 32px;gap:var(--sp-2);margin-bottom:var(--sp-2);align-items:start}.cond-row select,.cond-row input{width:100%;font:inherit;font-size:var(--fs-base);border:1px solid var(--border);border-radius:var(--radius);padding:var(--sp-2);background:var(--white)}.cond-row select[multiple]{min-height:5.5rem}.segmented-xs button{padding:2px var(--sp-2);font-size:var(--fs-xs)}.auto-tabs a{display:inline-flex;align-items:center;padding:0 var(--sp-4);height:30px;text-decoration:none;color:var(--text-muted);font-size:var(--fs-base);font-weight:600;border-radius:var(--radius)}.auto-tabs a.is-active{background:var(--white);color:var(--text);box-shadow:var(--shadow)}.btn-delete{color:var(--red)}.btn-delete:hover:not(:disabled){background:var(--red-soft)}.runs-tab{padding:var(--sp-5);overflow-y:auto;flex:1;min-height:0;display:flex;flex-direction:column;gap:var(--sp-4)}.up-who{display:flex;flex-direction:column;gap:1px;min-width:0}.up-who span{color:var(--text-muted);font-size:var(--fs-sm)}.up-msg{display:flex;flex-direction:column;gap:2px;min-width:0}.up-body{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--text-muted);font-size:var(--fs-sm);line-height:1.4}.up-when{display:flex;flex-direction:column;gap:1px;font-size:var(--fs-sm)}.up-tag{color:var(--text-faint);font-size:var(--fs-xs, 11px);font-weight:700;text-transform:uppercase;letter-spacing:.03em}.up-cancel{color:var(--red);font-weight:700}.up-cancel:disabled{opacity:.5}.run-stats{display:flex;gap:var(--sp-3);flex-wrap:wrap}.run-stats .stat{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--sp-3) var(--sp-4);min-width:7rem}.run-stats .stat strong{display:block;font-size:22px;line-height:1.1}.run-stats .stat span{font-size:var(--fs-sm);color:var(--text-muted)}.run-cell{display:flex;align-items:center;gap:var(--sp-2);min-width:0}.run-note{font-size:var(--fs-sm);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:1100px){.auto-body,.flow-build{grid-template-columns:minmax(0,1fr)}}.call-bar{position:fixed;left:50%;bottom:var(--sp-5);transform:translate(-50%);z-index:120;display:flex;align-items:center;gap:var(--sp-4);padding:var(--sp-3) var(--sp-4);min-width:min(560px,calc(100vw - 2 * var(--sp-5)));background:var(--navy-900);color:var(--text-invert);border-radius:var(--radius-pill);box-shadow:var(--shadow-lg)}.call-bar.is-error{background:var(--red)}.call-bar.is-incoming{background:var(--green);animation:call-ring 1.6s ease-in-out infinite}@keyframes call-ring{0%,to{box-shadow:var(--shadow-lg)}50%{box-shadow:0 0 0 6px #10a36f47,var(--shadow-lg)}}@media(prefers-reduced-motion:reduce){.call-bar.is-incoming{animation:none}}.btn-answer{background:var(--white);color:var(--green);border:0;font-weight:600}.btn-answer:hover:not(:disabled){background:#ffffffe0}.call-bar>svg{flex:none;opacity:.85}.call-who{display:flex;flex-direction:column;min-width:0;line-height:1.25}.call-who strong{font-size:var(--fs-md);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.call-who span{font-size:var(--fs-sm);opacity:.7}.call-timer{font-size:var(--fs-md);font-variant-numeric:tabular-nums;opacity:.9;white-space:nowrap}.call-error{font-size:var(--fs-sm);min-width:0;overflow:hidden;text-overflow:ellipsis}.call-actions{margin-left:auto;display:flex;align-items:center;gap:var(--sp-2);flex:none}.call-bar .btn-ghost{color:var(--text-invert)}.call-bar .btn-ghost:hover:not(:disabled){background:#ffffff24}.call-bar .btn-ghost[aria-pressed=true]{background:#fff3}.btn-hangup{background:var(--red);color:var(--text-invert);border:0}.btn-hangup:hover:not(:disabled){background:#b32603}@media(max-width:640px){.call-bar{left:var(--sp-3);right:var(--sp-3);bottom:var(--sp-3);transform:none;min-width:0;border-radius:var(--radius-md);flex-wrap:wrap}.call-actions{width:100%;margin-left:0;justify-content:flex-end}}.inbox-dial{margin-left:auto;padding:var(--sp-1) var(--sp-2)}.dialer{margin:auto;width:min(320px,calc(100vw - 2 * var(--sp-4)));background:var(--white);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-3)}.dialer-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2)}.dialer-display{text-align:center;padding:var(--sp-2) 0;border-bottom:1px solid var(--navy-125)}.dialer-number{font-family:inherit;font-size:26px;font-weight:600;letter-spacing:.02em;font-variant-numeric:tabular-nums;min-height:34px;color:var(--text);width:100%;border:0;background:none;text-align:center;padding:0;white-space:nowrap}.dialer-number::placeholder{font-size:var(--fs-md);font-weight:400;color:var(--text-faint);opacity:1}.dialer-number:focus{outline:none}.dialer-match{min-height:20px;font-size:var(--fs-base);color:var(--text-muted)}.dialer-keys{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-2)}.dialer-key{font-family:inherit;font-size:22px;font-weight:500;color:var(--text);background:var(--bg-gray);border:1px solid transparent;border-radius:var(--radius-md);padding:var(--sp-3) 0;cursor:pointer;min-height:52px}.dialer-key:hover{background:var(--navy-125)}.dialer-key:active{background:var(--accent-soft);border-color:var(--accent)}.dialer-actions{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:var(--sp-2)}.btn-call{background:var(--green);color:var(--text-invert);border:0;justify-content:center;min-height:46px;font-size:var(--fs-md)}.btn-call:hover:not(:disabled){background:#128c60}.btn-call:disabled{background:var(--navy-125);color:var(--text-faint)}.dialer-note{margin:0;text-align:center;font-size:var(--fs-sm);color:var(--text-muted)}.terminal-wait{padding:var(--sp-4) 0 var(--sp-2);text-align:center}.terminal-wait-amount{font-size:var(--fs-2xl);font-weight:600;color:var(--text);margin-bottom:var(--sp-3)}.terminal-wait p{margin:0 0 var(--sp-2);color:var(--text-muted)}.terminal-wait .muted{font-size:var(--fs-sm);color:var(--text-faint)}.pay-error{margin-bottom:var(--sp-3);padding:var(--sp-2) var(--sp-3);border-radius:var(--radius);background:var(--red-soft);color:var(--red);font-size:var(--fs-sm)}.pay-said{margin-bottom:var(--sp-3);padding:var(--sp-2) var(--sp-3);border-radius:var(--radius);background:var(--bg-gray);color:var(--text-muted);font-size:var(--fs-sm)}.handoff-live{display:flex;align-items:center;justify-content:center;gap:var(--sp-2)}.handoff-live-dot{flex:none;width:8px;height:8px;border-radius:50%;background:var(--green);animation:handoff-pulse 1.6s ease-in-out infinite}.handoff-live.is-lost{color:var(--red)}.handoff-live.is-lost .handoff-live-dot{background:var(--text-faint);animation:none}@keyframes handoff-pulse{0%,to{opacity:.25;transform:scale(.8)}50%{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.handoff-live-dot{animation:none}}.ticket-paid{padding:var(--sp-3) var(--sp-5) var(--sp-1);border-top:1px solid var(--border)}.ticket-paid-title{font-size:var(--fs-sm);font-weight:700;color:var(--text-muted);margin-bottom:var(--sp-1)}.refund-note{margin:var(--sp-1) 0 var(--sp-3);padding-left:var(--sp-2);font-size:var(--fs-sm)}.refund-actions{display:flex;gap:var(--sp-2);margin-top:var(--sp-2)}.cash-quick{display:flex;flex-wrap:wrap;gap:8px}.cash-quick .btn{padding:0 14px;font-variant-numeric:tabular-nums}.cash-change{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);margin-top:10px;padding:10px var(--sp-3);border-radius:var(--radius);background:var(--green-soft);color:var(--green-ink);font-weight:600}.cash-change strong{font-size:var(--fs-xl);font-variant-numeric:tabular-nums}.cash-change.is-short{background:var(--amber-soft);color:var(--amber-ink)}.refund-amount{display:flex;align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-2);font-size:var(--fs-sm)}.refund-amount input,.tip-split-input{width:7rem;text-align:right;font-variant-numeric:tabular-nums}.receipt-ways{flex-wrap:wrap;margin-top:0}.receipt-to{margin-top:var(--sp-2);font-size:var(--fs-sm);line-height:1.5}.receipt-link{padding:0;border:0;background:none;color:var(--accent);font:inherit;font-weight:700;cursor:pointer}.receipt-typed{margin-top:var(--sp-3)}.receipt-typed input{width:100%;margin-top:var(--sp-2)}.receipt-switch{width:fit-content}.receipt-sent{display:flex;align-items:center;gap:var(--sp-2);margin-top:var(--sp-3);color:var(--green-ink);font-size:var(--fs-sm);font-weight:700}.gift-found{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);margin-top:8px;padding:8px var(--sp-3);border-radius:var(--radius);background:var(--green-soft);color:var(--green-ink);font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.gift-found.is-short{background:var(--amber-soft);color:var(--amber-ink)}.pay-warn{margin-bottom:var(--sp-3);padding:var(--sp-3);border-radius:var(--radius);border:1px solid var(--amber-ink);background:var(--amber-soft);color:var(--amber-ink);font-size:var(--fs-sm);font-weight:600}.assistant{display:flex;flex-direction:column;overflow:hidden;padding-bottom:0}.assistant-log{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-3)}.assistant-intro{color:var(--text-muted);font-size:var(--fs-base)}.assistant-intro p{margin:0 0 var(--sp-3)}.assistant-note{color:var(--text-faint);font-size:var(--fs-sm)}.assistant-starters{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-top:var(--sp-4)}.assistant-starter{border:1px solid var(--border);background:#fff;color:var(--text);border-radius:var(--radius-pill);padding:var(--sp-2) var(--sp-4);font-size:var(--fs-base)}.assistant-turn{border-radius:var(--radius-md);padding:var(--sp-3) var(--sp-4);font-size:var(--fs-base);line-height:1.5;white-space:pre-wrap;background:var(--bg-gray);color:var(--text)}.assistant-turn.is-you{align-self:flex-end;max-width:85%;background:var(--accent-soft);color:var(--text)}.assistant-turn.is-thinking{color:var(--text-muted);font-style:italic}.assistant-turn.is-failed{background:var(--amber-soft);color:var(--amber-ink)}.assistant-draft{margin:var(--sp-2) 0;padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.assistant-draft-head{font-weight:600;margin-bottom:var(--sp-2)}.assistant-draft textarea{width:100%;min-height:7.5rem;padding:var(--sp-2);border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);color:var(--ink);font:inherit;resize:vertical}.assistant-draft-actions{display:flex;justify-content:flex-end;gap:var(--sp-2);margin-top:var(--sp-2)}.assistant-draft-post,.assistant-draft-discard{padding:var(--sp-2) var(--sp-3);border-radius:var(--radius);font:inherit;font-weight:600}.assistant-draft-post{background:var(--accent);color:var(--on-accent);border:none}.assistant-draft-post:disabled{opacity:.5}.assistant-draft-discard{background:transparent;color:var(--ink-dim);border:1px solid var(--line)}.assistant-draft-note{margin-top:var(--sp-2);font-size:.8125rem;color:var(--ink-dim)}.assistant-draft-done{color:var(--ink-dim)}.assistant-ask{display:flex;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);padding-bottom:calc(var(--sp-3) + var(--sa-bottom));border-top:1px solid var(--border);background:#fff}.assistant-ask input{flex:1;min-width:0;border:1px solid var(--border);border-radius:var(--radius-pill);padding:var(--sp-3) var(--sp-4);font-size:var(--fs-md)}.assistant-ask button{flex:none;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;border-radius:50%;background:var(--accent);color:#fff}.assistant-ask button:disabled{background:var(--border);color:var(--text-faint)}.kiosk{--kiosk-bg: #0c0c0e;--kiosk-bg-lift: #17171b;--kiosk-fg: #f4f4f6;--kiosk-accent: #d13b86;--kiosk-accent-hover: #e04c95;--kiosk-accent-deep: #b52672;flex:1;min-height:0;display:grid;place-items:center;background:radial-gradient(120% 120% at 20% 0%,var(--kiosk-bg-lift) 0%,var(--kiosk-bg) 62%);color:var(--kiosk-fg);padding:var(--sp-8) var(--sp-8) calc(var(--sp-8) * 2);text-align:center;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.kiosk-card{max-width:42rem;display:flex;flex-direction:column;align-items:center;gap:var(--sp-5)}.kiosk-salon{margin:0;font-size:clamp(.75rem,1.4vh,1rem);font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--kiosk-fg);opacity:.5}.kiosk-title{margin:0;font-size:clamp(2.5rem,9vh,5rem);line-height:1.05;font-weight:800;letter-spacing:-.02em}.kiosk-text{margin:0;font-size:clamp(1rem,3vh,1.6rem);line-height:1.45;opacity:.8;max-width:30ch}.kiosk-button{margin-top:var(--sp-4);min-width:min(22rem,70vw);min-height:clamp(4rem,11vh,6rem);padding:0 var(--sp-8);border:0;border-radius:var(--radius-pill);background:var(--kiosk-accent);color:var(--kiosk-fg);font-size:clamp(1.25rem,3.4vh,2rem);font-weight:700;letter-spacing:.01em;box-shadow:0 10px 40px #d13b8652;transition:transform var(--dur-fast),background var(--dur-fast)}.kiosk-button:hover{background:var(--kiosk-accent-hover)}.kiosk-button:active{transform:scale(.97);background:var(--kiosk-accent-hover)}.kiosk-button:focus-visible{outline:3px solid var(--kiosk-fg);outline-offset:4px}.kiosk-inner{flex:1;min-height:0;display:flex;flex-direction:column;position:relative}.kiosk-done{position:absolute;top:var(--sp-3);right:var(--sp-4);z-index:5;min-height:44px;padding:0 var(--sp-5);border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--white);color:var(--navy-900);font-size:var(--fs-md);font-weight:700}body.kiosk-mode{background:#0c0c0e;overscroll-behavior:none}body.kiosk-mode #root,body.kiosk-mode .app,body.kiosk-mode .app-body{background:#0c0c0e}body.kiosk-mode{overflow:hidden}.kiosk{margin:0;padding-top:calc(var(--sp-8) + var(--sa-top));padding-right:calc(var(--sp-8) + var(--sa-right));padding-bottom:calc(var(--sp-8) * 2 + var(--sa-bottom));padding-left:calc(var(--sp-8) + var(--sa-left))}.kiosk-lookup{place-items:stretch center}.kiosk.kiosk-lookup{padding-bottom:calc(var(--sp-8) + var(--sa-bottom))}.kiosk-lookup-inner{width:min(74rem,100%);max-height:100%;min-height:0;display:flex;flex-direction:column;align-items:stretch;gap:var(--sp-4);text-align:left}.kiosk-lookup-head{flex:none}.kiosk-lookup-cols{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:1.35fr 1fr;grid-template-rows:minmax(0,1fr);gap:var(--sp-6);align-items:stretch}@media(max-width:62rem){.kiosk-lookup-cols{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}}.kiosk-entry{flex:1 1 auto;min-width:0;min-height:0;display:flex;flex-direction:column;gap:var(--sp-3)}.kiosk-lookup-cols .kiosk-entry.is-digits{width:min(30rem,100%)}.kiosk-newstack .kiosk-entry{width:min(66rem,100%);margin-inline:auto}.kiosk-newstack .kiosk-entry.is-digits{width:min(34rem,100%)}.kiosk-lookup-title{margin:0;font-size:clamp(1.75rem,6vh,3rem);font-weight:800;letter-spacing:-.02em}.kiosk-lookup-hint{margin:0 0 var(--sp-2);font-size:clamp(.95rem,2.4vh,1.25rem);opacity:.65}.kiosk-field{display:flex;align-items:center;gap:var(--sp-3);padding:0 var(--sp-5);border-radius:var(--radius-pill);background:#1c1c21;border:1px solid #2c2c33}.kiosk-field:focus-within{border-color:#d13b86;box-shadow:0 0 0 3px #d13b8640}.kiosk-field-icon{flex:none;opacity:.5}.kiosk-typed{flex:1;min-width:0;display:flex;align-items:center;overflow:hidden;white-space:nowrap;font-size:clamp(1.1rem,3vh,1.6rem);padding:clamp(.9rem,2.4vh,1.35rem) 0;color:var(--kiosk-fg);font-variant-numeric:tabular-nums}.kiosk-typedtext{white-space:pre}.kiosk-typed-empty{color:#7b7b86}.kiosk-caret{flex:none;width:2px;height:1.15em;margin:0 1px;background:#d13b86;animation:kiosk-blink 1.1s steps(1,end) infinite}@keyframes kiosk-blink{50%{opacity:0}}@media(prefers-reduced-motion:reduce){.kiosk-caret{animation:none}}.kiosk-keys{flex:1 1 auto;min-height:0;display:grid;grid-auto-rows:1fr;gap:var(--sp-2);align-content:stretch;max-height:40rem}.kiosk-keys.is-digits{grid-template-columns:repeat(3,1fr)}.kiosk-keyrow{display:grid;grid-template-columns:repeat(20,1fr);gap:var(--sp-2)}.kiosk-keys.is-letters.has-numbers{grid-template-rows:.72fr repeat(4,1fr)}.kiosk-keyrow.is-numrow{margin-bottom:var(--sp-2)}.kiosk-keyrow.is-numrow .kiosk-key{min-height:36px;font-size:clamp(1rem,2.6vh,1.5rem)}.kiosk-keys.has-numbers .kiosk-keyrow:not(.is-numrow) .kiosk-key{min-height:clamp(46px,7vh,74px)}.kiosk-keyrow .kiosk-key{grid-column:span 2}.kiosk-key{display:grid;place-items:center;min-height:clamp(56px,8.5vh,82px);padding:0;border:1px solid #2c2c33;border-radius:var(--radius-md);background:#1c1c21;color:var(--kiosk-fg);font-size:clamp(1.15rem,3.2vh,1.9rem);font-weight:600;text-transform:none;transition:background var(--dur-fast),transform var(--dur-fast);touch-action:manipulation;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.kiosk-key:active{transform:scale(.96);background:#33333c}.kiosk-key.is-alt{background:#111114;font-size:clamp(.9rem,2.2vh,1.15rem);font-weight:700;color:#c9c9d2}.kiosk-keyrow .kiosk-key.is-wide3{grid-column:span 3}.kiosk-keyrow .kiosk-key.is-space{grid-column:span 10;font-size:clamp(.85rem,2vh,1.05rem);color:#9a9aa6}.kiosk-key.is-shift.is-on{border-color:#d13b86;background:#2a1522;color:#f38fc0}.kiosk-key.is-shift.is-on svg{color:#f38fc0}.kiosk-clear{flex:none;display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:transparent;color:#9a9aa6}.kiosk-results{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;gap:var(--sp-2);overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:var(--sp-2)}.kiosk-side{min-width:0;min-height:0;display:flex;flex-direction:column;gap:var(--sp-3)}.kiosk-newclient{flex:none;display:flex;align-items:center;justify-content:center;gap:var(--sp-3);width:100%;min-height:64px;padding:0 var(--sp-5);border:1px dashed #3a3a44;border-radius:var(--radius-md);background:transparent;color:var(--kiosk-fg);font-size:clamp(.95rem,2.2vh,1.2rem);font-weight:700;touch-action:manipulation}.kiosk-newclient svg{color:#d13b86}.kiosk-newclient:active{background:#17171b;transform:scale(.98)}.checkout-welcome{place-items:center;padding-bottom:calc(var(--sp-8) + var(--sa-bottom));min-height:100vh;min-height:100dvh;max-height:100vh;max-height:100dvh;overflow:hidden;grid-template-rows:minmax(0,1fr)}.checkout-welcome-inner{display:flex;align-items:center;gap:clamp(var(--sp-6),6vw,6rem);max-width:min(84rem,100%)}.checkout-welcome-inner:before{content:"";flex:none;width:clamp(6rem,18vh,11rem)}.cw-point{flex:none;display:grid;place-items:center}.cw-arrow{width:clamp(6rem,18vh,11rem);height:clamp(6rem,18vh,11rem);color:var(--kiosk-accent);animation:cw-nudge 1.8s ease-in-out infinite}@keyframes cw-nudge{0%,to{transform:translate(0)}50%{transform:translate(14px)}}@media(prefers-reduced-motion:reduce){.cw-arrow{animation:none}}.cw-words{min-width:0;text-align:center}.cw-brand{margin:0 0 var(--sp-3);color:#9a9aa6;font-size:clamp(.85rem,2vh,1.05rem);font-weight:700;letter-spacing:.18em}.cw-title{margin:0;font-size:clamp(3rem,11vh,6.5rem);font-weight:800;letter-spacing:-.03em;line-height:1}.cw-lead{margin:var(--sp-5) 0 0;font-size:clamp(1.35rem,4.2vh,2.4rem);line-height:1.3}.cw-lead b{color:#f38fc0;font-weight:800}.cw-sub{margin:var(--sp-4) 0 0;font-size:clamp(1rem,2.6vh,1.4rem);opacity:.6}@media(max-width:46rem){.checkout-welcome-inner{flex-direction:column;gap:var(--sp-5)}.checkout-welcome-inner:after{display:none}}.co-pane{display:flex;flex-direction:column;align-items:stretch;gap:var(--sp-5);width:min(38rem,100%);max-height:100%;text-align:center}.co-head{flex:none}.co-title{margin:0;font-size:clamp(2rem,7vh,3.6rem);font-weight:800;letter-spacing:-.02em;line-height:1.05}.co-sub{margin:var(--sp-3) 0 0;font-size:clamp(1rem,2.6vh,1.35rem);opacity:.6}.co-lead{margin:var(--sp-4) 0 0;font-size:clamp(1.2rem,3.4vh,1.9rem)}.co-lines{flex:0 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;gap:var(--sp-2);text-align:left}.co-line{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-4);padding:var(--sp-3) 0;border-top:1px solid #23232a}.co-lines>:first-child{border-top:0}.co-line-what{display:flex;flex-direction:column;gap:2px;min-width:0}.co-line-name{font-size:clamp(1rem,2.6vh,1.35rem)}.co-line-sub{padding:3px 0 3px var(--sp-6);border-top:0}.co-line-sub .co-line-name,.co-line-sub .co-line-price{font-size:clamp(.85rem,2vh,1.05rem);color:#c9c9d2}.co-line-who{font-size:clamp(.85rem,2vh,1.05rem);color:#9a9aa6}.co-line-price{flex:none;font-size:clamp(1rem,2.6vh,1.35rem);font-variant-numeric:tabular-nums}.co-total{flex:none;display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-4);font-size:clamp(1.1rem,3vh,1.5rem);font-weight:700}.co-total-amount{font-size:clamp(1.8rem,6vh,3rem);font-variant-numeric:tabular-nums}.co-go{flex:none;min-height:clamp(3.5rem,9vh,5rem);padding:0 var(--sp-6);border:0;border-radius:var(--radius-pill);background:var(--kiosk-accent);color:#fff;font-size:clamp(1.1rem,3vh,1.6rem);font-weight:700}.co-go:disabled{opacity:.6}.co-tips{flex:none;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-3)}.co-tip{display:grid;place-items:center;align-content:center;gap:4px;min-height:clamp(6rem,17vh,9rem);border:1px solid var(--kiosk-accent-deep);border-radius:var(--radius-md);background:var(--kiosk-accent-deep);color:#fff}.co-tip:active{background:#9c2063;border-color:#9c2063;transform:scale(.97)}.co-tip-pct{font-size:clamp(1.5rem,4.5vh,2.4rem);font-weight:800}.co-tip-amt{font-size:clamp(.9rem,2.2vh,1.15rem);color:#ffffffd1;font-variant-numeric:tabular-nums}.co-tip-custom{flex:none;min-height:clamp(3rem,7vh,4rem);border:1px dashed #3a3a44;border-radius:var(--radius-md);background:transparent;color:var(--kiosk-fg);font-size:clamp(1rem,2.4vh,1.25rem)}.co-tip-none{flex:none;padding:var(--sp-3);border:0;background:transparent;color:#9a9aa6;font-size:clamp(.95rem,2.2vh,1.15rem);text-decoration:underline;text-underline-offset:3px}.co-custom{flex:none;font-size:clamp(2.4rem,8vh,4rem);font-weight:800;font-variant-numeric:tabular-nums}.co-keys{flex:0 1 auto;min-height:0;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-2)}.co-cash{flex:none;padding:var(--sp-4) var(--sp-5);border-radius:14px;background:#ffffff0d;text-align:left}.co-cash-method{margin:0;font-size:clamp(.9rem,2.2vh,1.1rem);letter-spacing:.08em;text-transform:uppercase;color:#9a9aa6}.co-cash-row{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-4);margin-top:var(--sp-3);font-size:clamp(1rem,2.6vh,1.35rem);font-variant-numeric:tabular-nums}.co-cash-label{margin:var(--sp-4) 0 0;font-size:clamp(1rem,2.6vh,1.35rem);color:#c9c9d2}.co-cash-change{margin:4px 0 0;font-size:clamp(2.2rem,8vh,4rem);font-weight:800;line-height:1.05;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--white)}.co-cash-wait{margin:var(--sp-3) 0 0;font-size:clamp(1.1rem,3vh,1.5rem)}.co-total-quiet{font-size:clamp(1rem,2.4vh,1.25rem);font-weight:500;opacity:.75}.co-ways{flex:none;display:grid;gap:var(--sp-3)}.co-way{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;align-items:center;gap:0 var(--sp-4);min-height:clamp(4.5rem,12vh,6.5rem);padding:var(--sp-3) var(--sp-5);border:1px solid #3a3a43;border-radius:var(--radius-md);background:#17171b;color:var(--kiosk-fg);text-align:left;transition:background var(--dur-fast),transform var(--dur-fast),border-color var(--dur-fast)}.co-way svg{grid-row:1 / span 2;color:var(--kiosk-accent)}.co-way-name{font-size:clamp(1.1rem,3vh,1.6rem);font-weight:700}.co-way-to{font-size:clamp(.85rem,2.1vh,1.1rem);color:#9a9aa6}.co-way:active:not(:disabled){transform:scale(.98);background:#22222a;border-color:var(--kiosk-accent)}.co-way:disabled{opacity:.55}.co-custom-text{font-size:clamp(1.6rem,5vh,2.6rem);letter-spacing:.02em}.co-entry{flex:none;min-height:clamp(3.5rem,9vh,5rem);padding:0 var(--sp-5);border:1px solid #3a3a43;border-radius:var(--radius-md);background:#17171b;color:var(--kiosk-fg);font-size:clamp(1.1rem,3vh,1.6rem)}.co-done{display:grid;place-items:center;width:clamp(4.5rem,12vh,6.5rem);height:clamp(4.5rem,12vh,6.5rem);margin:0 auto;border-radius:50%;background:#d13b8629;color:var(--kiosk-accent);animation:co-done-in .42s cubic-bezier(.2,1.3,.4,1) both}.co-done.is-off{background:#ffffff14;color:#9a9aa6}@keyframes co-done-in{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.co-done{animation:none}}.co-pane-pay{align-items:center;gap:var(--sp-4)}.co-payicon{color:var(--kiosk-accent)}.co-back{flex:none;min-height:clamp(3rem,7vh,4rem);padding:0 var(--sp-6);border:0;background:transparent;color:#9a9aa6;font-size:clamp(.95rem,2.2vh,1.15rem);text-decoration:underline;text-underline-offset:3px}@keyframes kiosk-arrive{0%{opacity:0;transform:translateY(.9rem)}to{opacity:1;transform:none}}.kiosk-card,.kiosk-lookup-inner,.kiosk-services-inner{animation:kiosk-arrive .32s cubic-bezier(.2,.7,.3,1) both}@keyframes co-fade{0%{opacity:0}to{opacity:1}}.co-pane,.checkout-welcome-inner{animation:co-fade .26s ease-out both}.co-pane>*:not(.co-tap){animation:kiosk-arrive .36s cubic-bezier(.2,.7,.3,1) both}.co-pane>*:nth-child(2){animation-delay:60ms}.co-pane>*:nth-child(3){animation-delay:.12s}.co-pane>*:nth-child(4){animation-delay:.18s}.co-pane>*:nth-child(n+5){animation-delay:.24s}.co-go,.co-back,.co-tip-custom,.co-tip-none,.kiosk-back{transition:transform var(--dur-fast),background var(--dur-fast),opacity var(--dur-fast)}.co-go:active:not(:disabled),.co-back:active:not(:disabled){transform:scale(.97)}.co-tip-custom:active,.co-tip-none:active,.kiosk-back:active{transform:scale(.97);opacity:1}@keyframes co-busy{0%,to{opacity:.66}50%{opacity:1}}.co-go:disabled,.co-back:disabled,.kiosk-button:disabled{animation:co-busy 1.1s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.kiosk-card,.kiosk-lookup-inner,.kiosk-services-inner,.co-pane,.co-pane>*,.checkout-welcome-inner,.co-go:disabled,.co-back:disabled,.kiosk-button:disabled{animation:none}}.co-tap{position:fixed;right:clamp(.75rem,3vw,2.5rem);bottom:clamp(.75rem,3vh,2.5rem);display:flex;flex-direction:column;align-items:flex-end;gap:.15rem;max-width:min(26rem,52vw);text-align:right;pointer-events:none}.co-tap-lead{display:flex;align-items:center;gap:.5rem;margin:0;color:var(--white);font-weight:700;font-size:clamp(1.35rem,3.5vh,2rem);transform-origin:center;animation:co-tap-breathe 3.6s ease-in-out infinite}@keyframes co-tap-breathe{0%,to{transform:scale(1)}22%{transform:scale(1.05)}}.co-tap-icon{width:1.1em;height:1.34em;flex:none;color:var(--white)}.co-tap-arc{opacity:1;animation:co-tap-wave 1.8s ease-in-out infinite}.co-tap-arc:nth-child(2){animation-delay:.12s}.co-tap-arc:nth-child(3){animation-delay:.24s}.co-tap-arc:nth-child(4){animation-delay:.36s}@keyframes co-tap-wave{0%,60%,to{opacity:.35}22%{opacity:1}}.co-tap-sub{margin:0;color:#9a9aa6;font-size:clamp(1rem,2.3vh,1.3rem);line-height:1.35}.co-tap-arrow{width:clamp(3rem,8.5vh,5rem);height:auto;margin-top:.25rem;color:var(--kiosk-accent);animation:co-tap-nudge 1.8s ease-in-out infinite}@keyframes co-tap-nudge{0%,to{transform:translate(0)}50%{transform:translate(.4rem,.4rem)}}@media(prefers-reduced-motion:reduce){.co-tap-arrow,.co-tap-lead,.co-tap-arc{animation:none}}.co-back:disabled{opacity:.6}.kiosk-newstack{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;gap:var(--sp-3)}.kiosk-form{flex:none;min-width:0;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-3)}@media(max-width:48rem){.kiosk-form{grid-template-columns:1fr}}.kiosk-formfield{display:flex;flex-direction:column;justify-content:center;gap:6px;width:100%;min-height:clamp(84px,13vh,116px);padding:var(--sp-3) var(--sp-4);border:1px solid #2c2c33;border-radius:var(--radius-md);background:#17171b;color:var(--kiosk-fg);text-align:left;touch-action:manipulation}.kiosk-formfield.is-on{border-color:#d13b86;background:#1c1c21;box-shadow:0 0 0 3px #d13b8633}.kiosk-formlabel{font-size:clamp(.8rem,2vh,1.05rem);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#d13b86}.kiosk-formvalue{display:flex;align-items:center;overflow:hidden;white-space:nowrap;font-size:clamp(1.2rem,3.3vh,1.85rem);font-weight:600;font-variant-numeric:tabular-nums}.kiosk-note{margin:var(--sp-3) 0;font-size:clamp(.95rem,2.2vh,1.15rem);opacity:.55}.kiosk-match{display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:100%;min-height:72px;padding:var(--sp-3) var(--sp-5);border:1px solid #2c2c33;border-radius:var(--radius-md);background:#17171b;color:var(--kiosk-fg);text-align:left;transition:background var(--dur-fast),transform var(--dur-fast)}.kiosk-match:active{transform:scale(.99);background:#23232a}.kiosk-match-name{display:flex;align-items:center;flex-wrap:wrap;gap:var(--sp-3);font-size:clamp(1.1rem,2.8vh,1.5rem);font-weight:700}.kiosk-match.is-booked{border-color:var(--kiosk-accent);box-shadow:inset 3px 0 0 var(--kiosk-accent)}.kiosk-match-booked{padding:2px 10px;border-radius:999px;background:var(--kiosk-accent);color:#fff;font-size:clamp(.8rem,1.9vh,1rem);font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}.kiosk-match.is-here{border-color:var(--kiosk-accent);box-shadow:inset 3px 0 0 var(--kiosk-accent)}.kiosk-match-here{padding:2px 10px;border-radius:999px;background:#ffffff2e;color:#fff;font-size:clamp(.8rem,1.9vh,1rem);font-weight:700;white-space:nowrap}.kiosk-match-meta{display:flex;flex-wrap:wrap;gap:var(--sp-4);font-size:clamp(.85rem,2vh,1.05rem);opacity:.55;font-variant-numeric:tabular-nums}.kiosk-back{align-self:flex-start;flex:none;margin-top:var(--sp-2);min-height:52px;padding:0 var(--sp-6);border:1px solid #2c2c33;border-radius:var(--radius-pill);background:transparent;color:var(--kiosk-fg);font-size:clamp(.95rem,2.2vh,1.15rem);font-weight:700;opacity:.8}.kiosk-services{place-items:stretch center}.kiosk-services-inner{width:min(60rem,100%);max-height:100%;min-height:0;display:flex;flex-direction:column;gap:var(--sp-4);text-align:left}.kiosk-services-head{flex:none}.kiosk-grid{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:var(--sp-3);align-content:start;padding-bottom:var(--sp-2)}.kiosk-tile{display:grid;place-items:center;min-height:clamp(5.5rem,16vh,9rem);padding:var(--sp-3);border:1px solid #2c2c33;border-radius:var(--radius-md);background:#17171b;color:var(--kiosk-fg);font-size:clamp(1rem,2.4vh,1.3rem);font-weight:700;line-height:1.25;text-align:center;transition:background var(--dur-fast),border-color var(--dur-fast),transform var(--dur-fast)}.kiosk-tile:active{transform:scale(.98)}.kiosk-tile-price{display:block;margin-top:4px;font-size:.8em;font-weight:600;opacity:.75}.kiosk-ask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;grid-template-rows:minmax(0,1fr);padding:var(--sp-5);background:#09090cd1;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.kiosk-ask-card{width:min(46rem,100%);max-height:100%;display:flex;flex-direction:column;gap:var(--sp-5);padding:clamp(var(--sp-5),4vh,var(--sp-8));border:1px solid #2c2c33;border-radius:var(--radius-lg, 16px);background:#101014;text-align:center}.kiosk-ask-title{margin:0;color:var(--kiosk-fg);font-size:clamp(1.4rem,4vh,2.2rem);font-weight:800}.kiosk-ask-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:var(--sp-4);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:0}.kiosk-ask-options:has(>:nth-child(7)) .kiosk-ask-tile{min-height:clamp(4rem,9vh,5.5rem);padding:var(--sp-3) var(--sp-4)}.kiosk-ask-options:has(>:nth-child(7)) .kiosk-ask-name{font-size:clamp(.9rem,2vh,1.1rem)}.kiosk-ask-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:var(--sp-5);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:0;align-items:start}.kiosk-ask-column{display:flex;flex-direction:column;gap:var(--sp-3);min-width:0;padding:var(--sp-4);border:1px solid #2c2c33;border-radius:var(--radius-md);background:#ffffff06}.kiosk-ask-group{margin:0;padding-bottom:var(--sp-3);border-bottom:1px solid #26262d;color:var(--kiosk-fg);opacity:.6;font-size:clamp(.8rem,1.8vh,.95rem);font-weight:700;letter-spacing:.07em;text-transform:uppercase}.kiosk-ask-options.is-stacked{grid-template-columns:1fr;gap:var(--sp-2);overflow:visible}.kiosk-ask-columns .kiosk-ask-tile{min-height:clamp(4rem,9vh,5.5rem);padding:var(--sp-2) var(--sp-4);gap:var(--sp-1)}.kiosk-ask-columns .kiosk-ask-name{font-size:clamp(.9rem,2vh,1.1rem);display:flex;align-items:center;justify-content:center;min-height:2.5em}.kiosk-ask-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:clamp(6rem,18vh,10rem);padding:var(--sp-4);border:1px solid #2c2c33;border-radius:var(--radius-md);background:#17171b;color:var(--kiosk-fg);cursor:pointer;touch-action:manipulation;transition:background var(--dur-fast),border-color var(--dur-fast),transform var(--dur-fast)}.kiosk-ask-tile:active{transform:scale(.98);background:#22222a}.kiosk-ask-name{font-size:clamp(1rem,2.6vh,1.4rem);font-weight:700;line-height:1.25}.kiosk-ask-price{font-size:clamp(1.3rem,3.6vh,2rem);font-weight:800;font-variant-numeric:tabular-nums;color:var(--kiosk-accent, #e8629f)}.kiosk-tile.is-on{background:#d13b86;border-color:#d13b86;box-shadow:0 8px 26px #d13b864d}.kiosk-tile.is-other{background:transparent;border-style:dashed;border-color:#3a3a43;color:#b9b9c4}.kiosk-tile.is-other.is-on{background:#d13b86;border-style:solid;border-color:#d13b86;color:var(--kiosk-fg)}.kiosk-actions{flex:none;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4)}.kiosk-services-note{flex:none;margin:calc(-1 * var(--sp-2)) 0 0;font-size:clamp(.95rem,2.4vh,1.25rem);opacity:.65}.kiosk-continue{margin-top:0;min-width:min(16rem,45vw);min-height:clamp(3.25rem,8vh,4.5rem);font-size:clamp(1.05rem,2.6vh,1.5rem)}.kiosk-continue:disabled{background:#2a2a31;color:#6f6f7b;box-shadow:none;cursor:default}.kiosk-choice{display:flex;flex-direction:column;align-items:stretch;gap:var(--sp-3);width:min(22rem,70vw);margin-top:var(--sp-4)}.kiosk-secondary{min-height:clamp(3.25rem,8vh,4.25rem);padding:0 var(--sp-6);border:1px solid #3a3a43;border-radius:var(--radius-pill);background:transparent;color:var(--kiosk-fg);font-size:clamp(1rem,2.4vh,1.3rem);font-weight:700}.kiosk-secondary:active{background:#1c1c21;transform:scale(.98)}.kiosk-bookings{display:flex;flex-direction:column;gap:var(--sp-3);width:min(30rem,82vw);margin-top:var(--sp-4)}.kiosk-booking{display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-4) var(--sp-5);border:1px solid #2f2f37;border-radius:var(--radius-md);background:var(--kiosk-bg-lift);color:var(--kiosk-fg);text-align:left;font:inherit}.kiosk-booking.is-chosen{border-color:var(--kiosk-accent)}.kiosk-booking-when{font-size:clamp(1.15rem,2.8vh,1.5rem);font-weight:800}.kiosk-booking-legs{display:flex;flex-direction:column;gap:var(--sp-2)}.kiosk-booking-leg{display:grid;grid-template-columns:1fr auto;gap:0 var(--sp-4);align-items:baseline}.kiosk-booking-what{font-size:clamp(.95rem,2.3vh,1.2rem);font-weight:600}.kiosk-booking-what em{font-style:normal;font-weight:400;color:#b9b9c4}.kiosk-booking-price{font-size:clamp(.95rem,2.3vh,1.2rem);font-weight:700;font-variant-numeric:tabular-nums}.kiosk-booking-options{grid-column:1 / -1;font-size:clamp(.82rem,1.9vh,1rem);color:#8f8f9c}.kiosk-error{margin:0;padding:var(--sp-3) var(--sp-4);border-radius:var(--radius-md);background:#db2e0424;border:1px solid rgba(219,46,4,.45);color:#ff9d84;font-size:clamp(.9rem,2.1vh,1.1rem);max-width:32ch}.kiosk-tick{display:grid;place-items:center;width:clamp(5rem,14vh,7rem);height:clamp(5rem,14vh,7rem);border-radius:50%;background:#17a67329;border:2px solid var(--green);color:var(--green)}.new-client{display:flex;align-items:center;gap:var(--sp-3);width:100%;margin:var(--sp-3) 0 0;padding:var(--sp-3) var(--sp-4);border:0;border-radius:var(--radius-md);background:var(--accent);color:var(--text-invert);text-align:left;box-shadow:var(--shadow)}.new-client:active{background:var(--accent-hover)}.new-client-icon{flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#ffffff2e}.new-client-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.new-client-text strong{font-size:var(--fs-md);font-weight:800}.new-client-what{font-size:var(--fs-sm);opacity:.85;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.new-client-since{font-size:var(--fs-sm);opacity:.85}.new-client-done{display:block;font-size:var(--fs-sm);opacity:.85}.new-client-wait{font-style:normal;font-variant-numeric:tabular-nums}.new-client-wait.is-long{color:var(--accent);font-weight:700}.new-client:not(.is-waiting) .new-client-wait.is-long{color:var(--text-invert);background:#ffffff38;padding:1px 7px;border-radius:var(--radius-pill)}.new-client.is-booked .new-client-wait.is-long{color:var(--red);background:transparent;padding:0}.new-client.is-booked{background:var(--marker-yellow);color:var(--text)}.new-client.is-booked:active{background:#ffe066}.new-client-booked{font-style:normal;font-weight:700;opacity:1}.new-client.is-waiting{background:var(--bg-gray);color:var(--text-muted);box-shadow:none;border:1px solid var(--border)}.new-client.is-waiting .new-client-icon{background:transparent;color:var(--text-muted);opacity:.6}.new-client-group.is-waiting .new-client-head{color:var(--accent)}.new-client-join{font-style:normal;opacity:.8}.new-client-go{flex:none;min-height:44px;padding:var(--sp-3) var(--sp-5);border-radius:var(--radius-pill);background:var(--white);color:var(--accent);font-size:var(--fs-md);font-weight:800;display:grid;place-items:center}.new-client-group{display:flex;flex-direction:column;gap:var(--sp-2);margin-top:var(--sp-3)}.new-client-group .new-client{margin:0}.new-client-head{margin:0 0 2px;font-size:var(--fs-sm);font-weight:700;color:var(--text-muted)}.checkin-remove{flex:none;display:grid;place-items:center;width:30px;height:30px;margin-right:var(--sp-2);border:0;border-radius:50%;background:transparent;color:var(--text-faint);transition:background var(--dur-fast),color var(--dur-fast)}.checkin-waiting-row:hover .checkin-remove{color:var(--text-muted)}.checkin-remove:hover{background:var(--red-soft);color:var(--red)}.checkin-remove.is-confirming{width:auto;padding:0 var(--sp-3);height:30px;border-radius:var(--radius-pill);background:var(--red);color:var(--white);font-size:var(--fs-sm);font-weight:800}.sale-reopen{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:8px;margin:calc(var(--sp-5) * -1 + 4px) 0 var(--sp-5);white-space:nowrap}.sale-balance{font-weight:700;color:var(--amber-text, var(--text));background:var(--amber-soft);margin:4px -8px 0;padding:6px 8px;border-radius:var(--radius)}.tech-edit-slots{margin-top:var(--sp-2)}.tech-edit-for{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-bottom:var(--sp-2)}.post-hint{margin:0 0 12px;color:var(--muted, #667);font-size:14px;line-height:1.4}.post-pick{width:100%;display:flex;justify-content:center;gap:8px;padding:14px}.post-preview{border-radius:12px;overflow:hidden;background:#000;margin-bottom:10px}.post-preview img,.post-preview video{display:block;width:100%;max-height:60vh;object-fit:contain}.post-note{width:100%;box-sizing:border-box;font:inherit;padding:10px;border:1px solid var(--line, #ddd);border-radius:10px;resize:none;margin-bottom:10px}.post-actions{display:flex;gap:10px}.post-actions .btn{flex:1;display:flex;justify-content:center;gap:6px}.post-progress{height:10px;border-radius:5px;background:var(--line, #ddd);overflow:hidden}.post-progress div{height:100%;background:var(--accent);transition:width .2s}.post-error{color:#b3261e;margin:10px 0 0;font-size:14px}.post-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.post-tile{border-radius:10px;overflow:hidden;background:var(--card, #fff);border:1px solid var(--line, #ddd)}.post-tile.is-used{opacity:.55}.post-tile img,.post-tile video{display:block;width:100%;aspect-ratio:1;object-fit:cover;background:#000}.post-tile-meta{display:flex;align-items:center;justify-content:space-between;padding:6px 8px;font-size:12px}.post-tile-del{background:none;border:0;padding:4px;color:var(--muted, #667)}.post-tile-note{padding:0 8px 8px;font-size:12px;color:var(--muted, #667)}.soc-card{border:1px solid var(--line, #ddd);border-radius:12px;padding:10px;margin-bottom:14px;background:var(--card, #fff)}.soc-meta{font-size:13px;color:var(--muted, #667);margin:8px 0}.soc-note{font-style:italic}.soc-text{min-height:150px}.soc-opts{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}.soc-opt{text-align:left;border:1px solid var(--line, #ddd);background:none;border-radius:10px;padding:10px 12px;font:inherit;font-size:15px;line-height:1.35;color:inherit;white-space:pre-wrap}.soc-opt.is-picked{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.soc-more{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;border:0;background:none;padding:4px 0;font:inherit;font-size:14px;color:var(--accent)}.soc-more:disabled{color:var(--muted, #667)}.soc-platforms{display:flex;gap:8px;margin-bottom:10px}.soc-chip{border:1px solid var(--line, #ddd);background:none;border-radius:999px;padding:6px 14px;font:inherit;font-size:14px;color:var(--muted, #667)}.soc-chip.is-on{background:var(--accent);border-color:var(--accent);color:#fff}.soc-chip:disabled{opacity:.4}.soc-row{display:flex;gap:10px;padding:8px 0;border-bottom:1px solid var(--line, #ddd)}.soc-row.is-dim{opacity:.55}.soc-thumb{width:72px;flex:none}.soc-thumb img,.soc-thumb video{display:block;width:72px;height:72px;object-fit:cover;border-radius:8px;background:#000}.soc-row-body{flex:1;min-width:0}.soc-snippet{font-size:13px;white-space:pre-line;max-height:3.9em;overflow:hidden;color:var(--muted, #667)}.soc-links{display:flex;gap:10px;flex-wrap:wrap;font-size:13px}.soc-fail{color:#b3261e}.soc-undo{background:none;border:0;padding:4px 0;font:inherit;font-size:13px;color:var(--accent);text-decoration:underline}.soc-card.is-pending{opacity:.8}.soc-snippet.is-full{max-height:none;color:inherit;margin-bottom:10px}.soc-strip{display:flex;gap:6px;overflow-x:auto;margin-bottom:10px;padding-bottom:2px}.soc-strip-item{position:relative;flex:none;width:64px;height:64px;border-radius:8px;overflow:hidden;background:#000}.soc-strip-item img,.soc-strip-item video{width:100%;height:100%;object-fit:cover;display:block}.post-tile{position:relative}.post-tile-count{position:absolute;top:6px;right:6px;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:#0009;color:#fff;font-size:12px;line-height:20px;text-align:center}.soc-plan{margin:0 0 10px;font-size:13px}.post-set{border:1px solid var(--line, #ddd);border-radius:12px;padding:8px;margin-bottom:8px;background:var(--card, #fff);transition:border-color .12s,background .12s}.post-set.is-drop{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.post-set-head{display:flex;justify-content:space-between;align-items:baseline;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted, #667);margin-bottom:6px}.post-set-head span{text-transform:none;letter-spacing:0}.post-set-tiles{display:flex;flex-wrap:wrap;gap:6px}.post-tile-drag{position:relative;width:78px;height:78px;border-radius:10px;overflow:hidden;background:#000;touch-action:none;cursor:grab}.post-tile-drag img,.post-tile-drag video{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}.post-tile-drag.is-carried{opacity:.25}.post-newpost{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:78px;height:78px;box-sizing:border-box;border:1px dashed var(--line, #ccc);border-radius:10px;margin-bottom:10px;font-size:11px;line-height:1.15;text-align:center;color:var(--muted, #667);transition:border-color .12s,background .12s}.post-newpost.is-drop{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.post-carry{position:fixed;top:0;left:0;z-index:60;border-radius:10px;overflow:hidden;pointer-events:none;box-shadow:0 8px 24px #00000059;transform:translate(-999px,-999px)}.post-carry img,.post-carry video{width:100%;aspect-ratio:1;object-fit:cover;display:block}.post-strip-x{position:absolute;top:2px;right:2px;width:20px;height:20px;border:0;border-radius:50%;background:#0009;color:#fff;display:flex;align-items:center;justify-content:center;padding:0}.post-send{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:14px;margin-top:10px}.post-actions{flex-wrap:wrap}.post-actions .btn{min-width:0}.post-set-note{margin:8px 0 0;font-size:14px}.post-tile-open{display:block;width:100%;padding:0;border:0;background:none}.post-tile-open img,.post-tile-open video{display:block;width:100%;aspect-ratio:1;object-fit:cover;background:var(--line, #eee)}.post-sheet{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;background:var(--bg, #fff);overflow-y:auto}.post-sheet-body{padding:12px 16px 40px}.post-sheet-pic{display:block;width:100%;border-radius:12px;margin-bottom:8px;background:transparent}video.post-sheet-pic{background:#000}.post-sheet-caption{white-space:pre-line;font-size:15px;line-height:1.45;margin:10px 0}.post-tile-state{position:absolute;top:6px;left:6px;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600;line-height:16px;background:#0009;color:#fff}.post-tile-state.is-ready{background:var(--accent)}.post-tile-state.is-done{background:#1b7f4b}.post-tile-state.is-off,.post-tile-state.is-wait{background:#00000080}.post-tile-state.is-bad{background:#b3261e}.post-sheet-pic-wrap{position:relative;margin-bottom:8px}.post-sheet-pic-wrap .post-sheet-pic{margin-bottom:0}.post-sheet-pic.is-over{position:absolute;top:0;right:0;bottom:0;left:0;height:100%;opacity:0;transition:opacity .18s}.post-sheet-pic.is-over.is-ready{opacity:1}.post-tile-open,.post-tile-drag,.post-tile-del,.post-strip-x,.post-newpost,.post-sheet,.post-sheet *{-webkit-tap-highlight-color:transparent}.post-tile-open{-webkit-touch-callout:none}.post-sheet{contain:paint}.post-grid img,.post-grid video{content-visibility:auto}.grw-note{margin:var(--sp-2) 0 0;font-size:var(--fs-sm);color:var(--text-muted);line-height:1.5}.grw-fine{margin:var(--sp-2) 0 0;font-size:var(--fs-xs);color:var(--text-faint);line-height:1.5}.grw-big{font-size:var(--fs-2xl);font-weight:800;color:var(--text);letter-spacing:-.02em;margin-top:var(--sp-2)}.grw-sub{font-size:var(--fs-sm);color:var(--text-muted);margin-top:2px}.grw-muted{color:var(--text-muted)}.grw-stale{background:var(--amber-soft);color:var(--amber-ink);border-radius:var(--radius);padding:var(--sp-3);font-size:var(--fs-sm);line-height:1.45}.grw-row{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3) 0;border-bottom:1px solid var(--border)}.grw-row:last-of-type{border-bottom:0}.grw-row-main{flex:1;min-width:0;font-size:var(--fs-base);color:var(--text)}.grw-row-val{font-size:var(--fs-base);font-weight:700;color:var(--text);white-space:nowrap}.grw-verdict{margin-top:var(--sp-2);font-size:var(--fs-sm);font-weight:700}.grw-up{color:var(--green-ink)}.grw-down{color:var(--red)}.grw-bar{height:8px;border-radius:var(--radius-pill);background:var(--navy-125);overflow:hidden;margin-top:4px}.grw-bar-fill{height:100%;background:var(--accent);border-radius:var(--radius-pill)}.grw-bar-muted{background:var(--navy-400)}.grw-wd{padding:var(--sp-2) 0}.grw-wd-top{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-2)}.grw-wd-name{font-size:var(--fs-sm);font-weight:700;color:var(--text)}.grw-wd-val{font-size:var(--fs-sm);font-weight:700;color:var(--text);white-space:nowrap}.grw-strip{display:flex;align-items:flex-end;gap:4px;overflow-x:auto;padding:var(--sp-2) var(--sp-4);margin:0 calc(-1 * var(--sp-4));-webkit-overflow-scrolling:touch}.grw-col{display:flex;flex-direction:column;align-items:center;gap:4px;flex:0 0 auto;width:22px}.grw-col-bar{height:64px;width:100%;display:flex;align-items:flex-end;background:var(--navy-125);border-radius:3px;overflow:hidden}.grw-col-fill{width:100%;background:var(--accent);border-radius:3px}.grw-col-part{background:var(--accent-soft);border:1px dashed var(--accent)}.grw-col-lbl{font-size:9px;color:var(--text-faint)}.grw-dot{width:8px;height:8px;border-radius:50%;background:var(--green);flex:0 0 auto}.grw-dot-bad{background:var(--red)}.grw-stop-group{padding-top:var(--sp-5);padding-bottom:var(--sp-5)}.grw-stop{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2)}.grw-stop-idle{color:var(--red);border-color:var(--red)}.grw-stop-row{display:flex;gap:var(--sp-2);margin-top:var(--sp-3)}.grw-stop-row .btn{flex:1;min-width:0}.grw-stop-go{background:var(--red);border-color:var(--red);color:var(--white)}.grw-floor{display:flex;align-items:flex-end;gap:3px;overflow-x:auto;padding:var(--sp-2) var(--sp-4);margin:0 calc(-1 * var(--sp-4));-webkit-overflow-scrolling:touch}.grw-fcol{display:flex;flex-direction:column;align-items:center;gap:4px;flex:0 0 auto;width:26px}.grw-fstack{display:flex;flex-direction:column-reverse;gap:2px;justify-content:flex-start;min-height:8px}.grw-hand{width:20px;height:7px;border-radius:2px;background:var(--navy-125)}.grw-hand-busy{background:var(--accent)}.grw-hand-ahead{opacity:.35}
