.appointment-sheet{--booking-muted:var(--muted-foreground,#a3aaa8);width:calc(100% - 40px);height:min(830px, calc(var(--booking-height,100dvh) - 40px));max-height:none;color:var(--foreground,#f1f2f1);background:radial-gradient(ellipse at 100% 0, #ffffff05 0%, transparent 38%), radial-gradient(ellipse at 0 60%, #aaaaaa06 0%, transparent 44%), var(--background,#090b0b);border:1px solid #ffffff1c;border-radius:30px;outline:none;flex-direction:column;gap:0;padding:0;font-family:inherit;display:flex;overflow:hidden;box-shadow:inset 0 1px #ffffff15,0 30px 90px #0009;max-width:480px!important}.appointment-sheet button{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;font:inherit}.appointment-sheet button:disabled{cursor:default}.appointment-sheet button:focus-visible,.appointment-sheet input:focus-visible,.appointment-sheet textarea:focus-visible,.appointment-sheet a:focus-visible{outline:2px solid var(--ring);outline-offset:3px}.appointment-header{z-index:1;padding:max(12px, env(safe-area-inset-top)) 20px 0;flex:none;justify-content:flex-end;display:flex;position:relative}.appointment-close-button{color:#d0d0d0;background:#ffffff04;border:1px solid #ffffff0c;border-radius:14px;flex:none;place-items:center;width:44px;height:44px;transition:background .2s,border-color .2s;display:grid}.appointment-close-button:hover:not(:disabled){background:#ffffff0b;border-color:#ffffff20}.appointment-close-button:disabled{opacity:.35}.appointment-form-flow{flex-direction:column;flex:1 1 0;min-height:0;display:flex}.appointment-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#484848 transparent;flex:1 1 0;min-height:0;padding:32px 24px;overflow:hidden auto}.appointment-fields{border:0;min-width:0;margin:0;padding:0}.appointment-step-intro{margin-bottom:28px}.appointment-step-intro h2{color:var(--foreground,#f1f2f1);letter-spacing:-.045em;text-wrap:balance;margin:0 0 12px;font-size:30px;font-weight:700;line-height:1.2}.appointment-step-intro>p{color:var(--booking-muted);text-wrap:pretty;margin:0;font-size:14px;line-height:1.55}.appointment-devices{flex-direction:column;gap:12px;display:flex}.appointment-devices>button{min-height:80px;color:var(--foreground,#f1f2f1);text-align:left;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:linear-gradient(140deg,#3b3b3b3d,#1c1c1c70);border:1px solid #ffffff14;border-radius:21px;align-items:center;gap:14px;padding:16px;transition:border-color .18s,background .18s;display:flex;box-shadow:inset 0 1px #ffffff0b}.appointment-devices>button:hover{background:#34343480;border-color:#ffffff25}.appointment-devices>button.selected{border-color:color-mix(in srgb, var(--ring) 50%, transparent);background:linear-gradient(140deg,#5252523d,#2a2a2a7d);box-shadow:inset 0 1px #ffffff1c,0 0 22px #ffffff05}.appointment-device-icon{color:#cdcdcd;background:#28282873;border:1px solid #ffffff12;border-radius:13px;flex:none;place-items:center;width:40px;height:40px;display:grid}.appointment-devices>button>span:nth-child(2){flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.appointment-devices strong{font-size:16px;font-weight:600;line-height:1.3}.appointment-devices small{color:var(--muted-foreground,#a3aaa8);font-size:12px;line-height:1.45}.appointment-device-check{border:1px solid #8f8f8f4a;border-radius:50%;flex:none;place-items:center;width:20px;height:20px;margin-left:auto;display:grid}.selected .appointment-device-check{color:#101312;border-color:var(--ring);background:var(--ring)}.appointment-selected-device{border:1px solid color-mix(in srgb, var(--ring) 24%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:linear-gradient(135deg,#3f3f3f3d,#26262673);border-radius:19px;align-items:center;gap:11px;min-height:68px;padding:12px;display:flex;box-shadow:inset 0 1px #ffffff0d}.appointment-selected-device>strong{min-width:0;color:var(--foreground,#f1f2f1);flex:1;font-size:14px;font-weight:600;line-height:1.4}.appointment-selected-device>button{color:#cdcdcd;background:#2b2b2b66;border:1px solid #ffffff0f;border-radius:12px;flex:none;justify-content:center;align-items:center;max-width:112px;min-height:44px;padding:6px 9px;font-size:12px;line-height:1.4;display:flex}.appointment-device-fields{flex-direction:column;gap:22px;margin-top:24px;display:flex}.appointment-field{flex-direction:column;gap:9px;display:flex}.appointment-field>label{color:#d0d0d0;justify-content:space-between;align-items:baseline;gap:8px;font-size:13px;font-weight:600;line-height:1.5;display:flex}.appointment-field>label>span{color:var(--muted-foreground,#a3aaa8);font-size:10px;font-weight:400}.appointment-sheet .appointment-field input,.appointment-sheet .appointment-field textarea{width:100%;min-width:0;height:54px;color:var(--foreground,#f1f2f1);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#101010cc;border:1px solid #ffffff16;border-radius:15px;outline:none;padding:14px 15px;font-size:16px;line-height:1.5;box-shadow:inset 0 1px #ffffff06}.appointment-sheet .appointment-field textarea{resize:none;height:auto;min-height:104px;max-height:180px}.appointment-sheet .appointment-field input::placeholder,.appointment-sheet .appointment-field textarea::placeholder{color:var(--muted-foreground,#a3aaa8);font-size:14px}.appointment-sheet .appointment-field input:focus-visible,.appointment-sheet .appointment-field textarea:focus-visible{border-color:color-mix(in srgb, var(--ring) 50%, transparent);box-shadow:0 0 0 3px color-mix(in srgb, var(--ring) 7%, transparent);outline:none}.appointment-sheet .appointment-field [aria-invalid=true]{border-color:#ef82938c}.appointment-sheet .appointment-field input[readonly]{color:var(--muted-foreground,#a3aaa8);background:#1c1c1c66}.appointment-unknown-model{min-height:44px;color:var(--muted-foreground,#a3aaa8);text-align:left;background:0 0;border:0;border-radius:8px;align-self:flex-start;align-items:center;gap:6px;margin-top:-2px;padding:5px 0;line-height:1.4;display:inline-flex;font-size:11px!important}.appointment-unknown-model.selected{color:var(--ring)}.appointment-problem-chips{flex-wrap:wrap;gap:8px;display:flex}.appointment-problem-chips button{color:#d0d0d0;background:#29292966;border:1px solid #ffffff13;border-radius:13px;min-height:44px;padding:9px 12px;font-size:12px;line-height:1.4;transition:background .18s,border-color .18s}.appointment-problem-chips button.selected{border-color:color-mix(in srgb, var(--ring) 40%, transparent);color:var(--foreground,#f1f2f1);background:#36363666}.appointment-edit-details{color:#cdcdcd;background:0 0;border:0;border-radius:7px;align-self:flex-start;align-items:center;gap:7px;min-height:44px;margin-top:4px;padding:7px 0;display:inline-flex;font-size:12px!important}.appointment-field-error{color:#f2a9b9;margin:0;font-size:12px;line-height:1.5}.appointment-devices+.appointment-field-error{margin-top:10px}.appointment-soft-note{color:var(--muted-foreground,#a3aaa8);background:#2226;border:1px solid #ffffff0e;border-radius:14px;align-items:flex-start;gap:9px;margin-top:20px;padding:13px;font-size:12px;line-height:1.6;display:flex}.appointment-soft-note svg{color:#cdcdcd;flex:none;margin-top:2px}.appointment-demo-note{color:#cdcdcd;background:linear-gradient(130deg,#36363627,#2a2a2a35);border:1px solid #ffffff14;border-radius:17px;align-items:flex-start;gap:11px;margin-bottom:22px;padding:14px;display:flex}.appointment-demo-note svg{flex:none;margin-top:2px}.appointment-demo-note strong{color:#cdcdcd;font-size:12px;font-weight:600}.appointment-demo-note p{color:var(--muted-foreground,#a3aaa8);margin:5px 0 0;font-size:11px;line-height:1.6}.appointment-contact-fields{flex-direction:column;gap:19px;display:flex}.appointment-review{margin-top:24px}.appointment-prefill{margin-bottom:22px}.appointment-time-body{padding-top:20px}.appointment-time-body .appointment-step-intro{margin-bottom:16px}.appointment-time-body .appointment-step-intro h2{font-size:25px}.appointment-time-body .appointment-step-intro p{font-size:12px}.appointment-time-body .appointment-prefill{margin-bottom:12px}.appointment-time-body .appointment-summary-device{padding:12px}.appointment-time-body .appointment-summary-device>div>span{-webkit-line-clamp:2}.appointment-time-body .booking-time-picker legend{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.appointment-time-body .booking-zone{margin:0 0 6px;font-size:11px}.appointment-time-body .booking-day-strip{margin-bottom:10px}.appointment-time-body .booking-hours-card{border-radius:16px;gap:10px;padding:11px 12px}.appointment-time-body .booking-hours-icon{border-radius:10px;width:30px;height:30px}.appointment-time-body .booking-hours-icon svg{width:16px}.appointment-time-body .booking-hours-card>div{flex-wrap:wrap;align-items:baseline;gap:3px 10px;display:flex}.appointment-time-body .booking-hours-card strong{display:none}.appointment-time-body .booking-hours-card p,.appointment-time-body .booking-hours-card small{margin:0;font-size:11px}.appointment-time-body .booking-time-heading{margin-top:16px}.appointment-review:has(.appointment-step-intro){margin-top:0}.appointment-summary{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:linear-gradient(140deg,#3939393b,#1b1b1b73);border:1px solid #ffffff15;border-radius:20px;overflow:hidden;box-shadow:inset 0 1px #ffffff0a}.appointment-summary-device{align-items:flex-start;gap:12px;padding:16px;display:flex}.appointment-summary-icon{color:#cdcdcd;background:#2b2b2b66;border:1px solid #ffffff14;border-radius:14px;flex:none;place-items:center;width:42px;height:42px;display:grid}.appointment-summary-device>div{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.appointment-summary-device strong{color:var(--foreground,#f1f2f1);overflow-wrap:anywhere;font-size:14px;font-weight:600;line-height:1.5}.appointment-summary-device>div>span{-webkit-line-clamp:3;color:var(--muted-foreground,#a3aaa8);overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:12px;line-height:1.6;display:-webkit-box;overflow:hidden}.appointment-summary-time{color:#cdcdcd;border-top:1px solid #ffffff0c;align-items:center;gap:9px;min-height:54px;padding:8px 16px;display:flex}.appointment-summary-time>span{color:#d0d0d0;flex-wrap:wrap;flex:1;align-items:baseline;gap:12px;font-size:13px;display:flex}.appointment-summary-time b{color:var(--foreground,#f1f2f1);font-size:14px;font-weight:600}.appointment-summary-hint{color:var(--muted-foreground,#a3aaa8);margin:11px 2px 19px;font-size:11px;line-height:1.6}.appointment-consent{color:#d0d0d0;cursor:pointer;background:#1d1d1d80;border:1px solid #ffffff13;border-radius:18px;align-items:center;gap:13px;min-height:78px;margin-top:18px;padding:14px;transition:border-color .18s,background .18s;display:flex}.appointment-consent.checked{border-color:color-mix(in srgb, var(--ring) 25%, transparent);background:#2e2e2e66}.appointment-consent>span{font-size:12px;line-height:1.6}.appointment-consent [data-slot=checkbox]{color:#101312;background:#131313;border:1px solid #9393936b;border-radius:7px;flex:none;width:24px;height:24px}.appointment-consent [data-slot=checkbox][data-state=checked]{border-color:var(--ring);background:linear-gradient(135deg,#f1f3f2,#e8e8e8)}.appointment-consent:has([data-slot=checkbox]:focus-visible){outline:2px solid var(--ring);outline-offset:3px}.appointment-consent [data-slot=checkbox] svg{width:16px;height:16px}.appointment-privacy-link{min-height:44px;color:var(--muted-foreground,#a3aaa8);background:0 0;border:0;border-radius:6px;align-items:center;gap:6px;margin:3px 0 0 3px;padding:6px 0;display:inline-flex;font-size:11px!important}.appointment-footer{z-index:1;padding:14px 22px max(18px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#171717e6;border-top:1px solid #ffffff0d;flex:none;position:relative}.appointment-primary{color:#101312;background:linear-gradient(115deg,#f1f3f2,#e8e8e8);border:1px solid #fff5;border-radius:17px;justify-content:center;align-items:center;gap:11px;width:100%;min-height:56px;padding:12px 15px;line-height:1.5;text-decoration:none;transition:filter .2s,box-shadow .2s;display:flex;box-shadow:inset 0 1px #ffffff40,0 6px 24px #00000026;font-size:16px!important;font-weight:700!important}.appointment-primary:hover:not(:disabled){filter:brightness(1.08);box-shadow:inset 0 1px #ffffff40,0 8px 25px #00000040}.appointment-primary:disabled{color:#7b7b7b;background:#30303066;border-color:#ffffff0d;box-shadow:inset 0 1px #ffffff08}.appointment-offline,.appointment-save-error{color:var(--muted-foreground,#a3aaa8);margin:0 0 11px;font-size:11px;line-height:1.5}.appointment-save-error{color:#f3abbc}.appointment-loading{animation:1s linear infinite appointment-spin}.appointment-success{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding-block:40px;display:flex}.appointment-success-orb{color:#cdcdcd;background:linear-gradient(140deg,#48484833,#27272766);border:1px solid #ffffff30;border-radius:32px;place-items:center;width:92px;height:92px;margin-bottom:25px;display:grid;box-shadow:inset 0 1px #ffffff1a,0 0 65px #ffffff06}.appointment-success h2{color:var(--foreground,#f1f2f1);letter-spacing:-.04em;margin:0 0 12px;font-size:28px;font-weight:700;line-height:1.25}.appointment-success>p{max-width:340px;color:var(--muted-foreground,#a3aaa8);margin:0 0 27px;font-size:14px;line-height:1.65}.appointment-success .appointment-summary{text-align:left;width:100%}.appointment-success .appointment-soft-note{text-align:left}.appointment-privacy-dialog{width:calc(100% - 32px);max-height:min(80dvh,680px);color:var(--foreground,#f1f2f1);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#1c1c1ce8;border:1px solid #ffffff1c;border-radius:24px;padding:26px;overflow-y:auto;box-shadow:0 20px 70px #0009;max-width:430px!important}.appointment-privacy-dialog [data-slot=dialog-header]{text-align:left;gap:9px}.appointment-privacy-dialog [data-slot=dialog-title]{letter-spacing:-.025em;font-size:21px;line-height:1.4}.appointment-privacy-dialog [data-slot=dialog-description]{color:var(--muted-foreground,#a3aaa8);font-size:12px}.appointment-privacy-dialog>p{color:#d0d0d0;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.75}.appointment-privacy-dialog [data-slot=dialog-close]{border-radius:12px;place-items:center;width:44px;height:44px;display:grid;top:7px;right:7px}@keyframes appointment-spin{to{transform:rotate(360deg)}}@media (max-width:640px){.appointment-sheet{width:100%;height:var(--booking-height,100dvh);border:0;border-radius:0;max-height:none;margin:0;--tw-translate-x:0px!important;--tw-translate-y:0px!important;top:var(--booking-top,0px)!important;max-width:none!important;left:0!important}.appointment-header{padding-inline:16px}.appointment-body{padding:30px 20px}.appointment-footer{padding-inline:20px}}@media (max-width:350px){.appointment-header{padding-inline:12px}.appointment-body,.appointment-footer{padding-inline:16px}.appointment-devices{gap:8px}.appointment-devices>button{min-height:76px;padding:14px}.appointment-devices small{font-size:11px}.appointment-step-intro h2{font-size:28px}}@media (max-height:560px){.appointment-header{padding-top:max(8px, env(safe-area-inset-top))}.appointment-body{padding-top:18px}.appointment-footer{padding-top:10px;padding-bottom:max(10px, env(safe-area-inset-bottom))}}@media (prefers-reduced-motion:reduce){.appointment-sheet *,.appointment-privacy-dialog{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.branch-choice{width:100%;max-width:1100px;margin:0 auto;padding:0 20px 10px}.appointment-body .branch-choice{margin-bottom:18px;padding:0}.branch-choice-trigger{border:1px solid var(--border);max-width:100%;min-height:44px;color:var(--foreground);background:var(--card);border-radius:14px;align-items:center;gap:9px;padding:9px 14px;font-size:13px;display:flex}.branch-choice-trigger span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.branch-choice-trigger svg{flex-shrink:0}.branch-choice-menu{background:var(--card);width:min(360px,100vw - 32px);color:var(--foreground);border-color:var(--border);border-radius:16px;padding:8px}.branch-choice-menu input{border:1px solid var(--border);background:var(--background);border-radius:10px;width:100%;margin-bottom:8px;padding:12px}.branch-choice-list{max-height:320px;overflow:auto}.branch-choice-list button{text-align:left;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:52px;padding:12px;display:flex}.branch-choice-list button:hover,.branch-choice-list button[aria-pressed=true]{background:var(--secondary)}.branch-choice-list strong,.branch-choice-list small{overflow-wrap:anywhere;display:block}.branch-choice-list strong{font-size:14px}.branch-choice-list small{color:var(--muted-foreground);margin-top:4px;font-size:12px}.branch-choice-list p{padding:12px}.admin-filters select{border:1px solid var(--border);background:var(--card);width:min(100%,400px);min-height:44px;color:var(--foreground);border-radius:12px;padding:10px}@media (max-width:600px){.branch-choice{padding-inline:16px}.admin-member-list>div:has(.admin-row-actions){flex-wrap:wrap}.admin-row-actions{flex-wrap:wrap}}
