@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300&family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&display=swap";:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--chrome-bg:#0f0f1aeb;--chrome-scrim:#08080f99;--cta-fade-start:#0f0f1a00;--cta-fade-mid:#0f0f1aeb;--toast-bg:#1a1a2ef5;--salon-hero-overlay:#0f0f1ad9;--salon-hint-bg:#1a1a2ef0;--sheet-shadow:0 -16px 40px #00000080}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--night:#f5f0e8;--ivory:#0f0f1a;--bronze:#5a4a38;--ink:#ede8e0;--night-900:#e8e3db;--night-800:#ddd8d0;--ink-700:#4a4a58;--surface:#fff;--surface-2:#f0ebe3;--paper:#fff;--fill-1:#0f0f1a0d;--fill-2:#0f0f1a17;--fill-3:#0f0f1a24;--fill-hair:#0f0f1a12;--border:#0f0f1a14;--border-2:#0f0f1a1f;--hairline-d:#0f0f1a1a;--on-dark-1:#0f0f1a;--on-dark-2:#0f0f1ad1;--on-dark-3:#0f0f1a85;--placeholder:#5a4a38b8;--gold-tint:#d4a84b29;--chrome-bg:#f5f0e8f0;--chrome-scrim:#0f0f1a59;--cta-fade-start:#f5f0e800;--cta-fade-mid:#f5f0e8f0;--toast-bg:#fffffffa;--salon-hero-overlay:#f5f0e8c7;--salon-hint-bg:#fffffff5;--sheet-shadow:0 -16px 40px #0f0f1a1f;--sh-dark:0 12px 40px #0f0f1a1f}}:root[data-theme=light]{--night:#f5f0e8;--ivory:#0f0f1a;--bronze:#5a4a38;--ink:#ede8e0;--night-900:#e8e3db;--night-800:#ddd8d0;--ink-700:#4a4a58;--surface:#fff;--surface-2:#f0ebe3;--paper:#fff;--fill-1:#0f0f1a0d;--fill-2:#0f0f1a17;--fill-3:#0f0f1a24;--fill-hair:#0f0f1a12;--border:#0f0f1a14;--border-2:#0f0f1a1f;--hairline-d:#0f0f1a1a;--on-dark-1:#0f0f1a;--on-dark-2:#0f0f1ad1;--on-dark-3:#0f0f1a85;--placeholder:#5a4a38b8;--gold-tint:#d4a84b29;--chrome-bg:#f5f0e8f0;--chrome-scrim:#0f0f1a59;--cta-fade-start:#f5f0e800;--cta-fade-mid:#f5f0e8f0;--toast-bg:#fffffffa;--salon-hero-overlay:#f5f0e8c7;--salon-hint-bg:#fffffff5;--sheet-shadow:0 -16px 40px #0f0f1a1f;--sh-dark:0 12px 40px #0f0f1a1f}.qbarber-logo-lockup-wrap .qbarber-logo-lockup--on-light{display:none}@media (prefers-color-scheme:light){:root:not([data-theme=dark]) .qbarber-logo-lockup-wrap .qbarber-logo-lockup--on-dark{display:none}:root:not([data-theme=dark]) .qbarber-logo-lockup-wrap .qbarber-logo-lockup--on-light{display:block}}:root[data-theme=light] .qbarber-logo-lockup-wrap .qbarber-logo-lockup--on-dark{display:none}:root[data-theme=light] .qbarber-logo-lockup-wrap .qbarber-logo-lockup--on-light{display:block}:root[data-theme=dark] .qbarber-logo-lockup-wrap .qbarber-logo-lockup--on-light{display:none}:root[data-theme=dark] .qbarber-logo-lockup-wrap .qbarber-logo-lockup--on-dark{display:block}:root{--night:#0f0f1a;--gold:#d4a84b;--ivory:#f5f0e8;--ink:#2a2a3a;--bronze:#8c7355;--green:#639922;--amber:#ba7517;--red:#a32d2d;--blue:#185fa5;--green-soft:#63992226;--amber-soft:#ba751726;--red-soft:#a32d2d26;--blue-soft:#185fa526;--green-line:#6399224d;--amber-line:#ba75174d;--red-line:#a32d2d4d;--blue-line:#185fa54d;--cat-simple:var(--gold);--cat-standard:var(--bronze);--cat-premium:var(--ink-700);--gold-press:#e0b655;--gold-tint:#d4a84b1f;--night-900:#0a0a12;--night-800:#15151f;--ink-700:#32323f;--surface:#1a1a2e;--surface-2:#222236;--border:#f5f0e80f;--border-2:#f5f0e81f;--fill-1:#f5f0e809;--fill-2:#f5f0e80f;--fill-3:#f5f0e81a;--fill-hair:#f5f0e80d;--hairline-d:#f5f0e814;--hairline-l:#0f0f1a12;--paper:#fff;--on-dark-1:#f5f0e8;--on-dark-2:#f5f0e8a8;--on-dark-3:#f5f0e866;--on-light-1:#0f0f1a;--on-light-2:#3d3d4a;--on-light-3:#5a4a38;--placeholder:#8c7355b8;--on-gold:#412402;--font-serif:"Cormorant Garamond", Georgia, "Times New Roman", serif;--font-sans:"DM Sans", ui-sans-serif, system-ui, -apple-system, sans-serif;--t-hero:52px;--t-h1:34px;--t-h2:24px;--t-h3:18px;--t-lg:17px;--t-base:15px;--t-sm:13px;--t-xs:11px;--t-2xs:10px;--t-stat:48px;--lh-tight:1.1;--lh-snug:1.3;--lh-body:1.6;--ls-tight:-.02em;--ls-over:.12em;--ls-logo:.18em;--logo-lockup-h-header:68px;--logo-lockup-h-login:80px;--logo-lockup-h-sidebar:62px;--logo-icon-size:52px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--sp-16:64px;--sp-20:80px;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:20px;--r-2xl:28px;--r-pill:999px;--sh-1:0 1px 2px #0f0f1a0d;--sh-2:0 4px 16px #0f0f1a0f;--sh-3:0 12px 40px #0f0f1a1a;--sh-dark:0 12px 40px #00000080;--ease:cubic-bezier(.22,.61,.36,1);--dur:.2s}.t-logo{font-family:var(--font-serif);letter-spacing:var(--ls-logo);font-weight:300}.t-hero{font-family:var(--font-serif);font-weight:300;font-size:var(--t-hero);line-height:var(--lh-tight);letter-spacing:var(--ls-tight)}.t-serif{font-family:var(--font-serif);font-weight:300}.t-h1{font-family:var(--font-sans);font-weight:500;font-size:var(--t-h1);line-height:var(--lh-tight);letter-spacing:var(--ls-tight)}.t-h2{font-family:var(--font-sans);font-weight:500;font-size:var(--t-h2);line-height:var(--lh-snug);letter-spacing:var(--ls-tight)}.t-h3{font-family:var(--font-sans);font-weight:600;font-size:var(--t-h3);line-height:var(--lh-snug)}.t-body{font-family:var(--font-sans);font-weight:400;font-size:var(--t-base);line-height:var(--lh-body)}.t-sm{font-family:var(--font-sans);font-weight:400;font-size:var(--t-sm);line-height:var(--lh-body)}.t-over{font-family:var(--font-sans);font-weight:500;font-size:var(--t-xs);letter-spacing:var(--ls-over);text-transform:uppercase}.t-stat{font-family:var(--font-sans);font-weight:500;font-size:var(--t-stat);letter-spacing:var(--ls-tight);font-variant-numeric:tabular-nums}.btn{cursor:pointer;font-family:var(--font-sans);transition:all var(--dur) var(--ease);white-space:nowrap;border:none;outline:none;justify-content:center;align-items:center;gap:8px;font-weight:500;display:inline-flex}.btn-gold{background:var(--gold);color:var(--night);border-radius:var(--r-pill);padding:13px 26px;font-size:13px}.btn-gold:hover{background:var(--gold-press)}.btn-gold:active{transform:scale(.98)}.btn-primary{background:var(--fill-2);color:var(--ivory);border-radius:var(--r-pill);padding:13px 26px;font-size:13px}.btn-primary:hover{background:var(--fill-3)}.btn-secondary{color:var(--ivory);border-radius:var(--r-pill);background:0 0;padding:13px 22px;font-size:13px}.btn-secondary:hover{background:var(--fill-1)}.btn-ghost{color:var(--bronze);border-radius:var(--r-pill);background:0 0;padding:11px 16px;font-size:12px}.btn-ghost:hover{color:var(--ivory)}.btn-danger{color:var(--red);border-radius:var(--r-pill);background:0 0;padding:13px 22px;font-size:13px}.btn-danger:hover{background:var(--red-soft)}.btn-sm{padding:9px 16px;font-size:11px}.btn-lg{padding:16px 34px;font-size:14px}.btn:disabled{opacity:.32;cursor:not-allowed}.btn-block{width:100%}.btn-icon{width:40px;height:40px;color:var(--bronze);cursor:pointer;transition:all var(--dur) var(--ease);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.btn-icon:hover{background:var(--fill-2);color:var(--ivory)}.input-wrap{width:100%;max-width:100%;display:block;position:relative}.input{background:var(--fill-2);border-radius:var(--r-md);font-family:var(--font-sans);color:var(--ivory);width:100%;max-width:100%;transition:box-shadow var(--dur) var(--ease), background var(--dur) var(--ease);border:none;outline:none;padding:13px 16px;font-size:16px}.input.has-icon{padding-left:42px}.input.has-prefix{padding-left:62px}.input::placeholder{color:var(--placeholder)}.input:focus{background:var(--fill-3);box-shadow:inset 0 0 0 1.5px var(--gold)}.input-error{box-shadow:inset 0 0 0 1.5px var(--red)}.input-icon{color:var(--bronze);pointer-events:none;position:absolute;top:50%;left:15px;transform:translateY(-50%)}.input-prefix{color:var(--bronze);font-size:15px;font-weight:500;font-family:var(--font-sans);pointer-events:none;letter-spacing:.02em;position:absolute;top:50%;left:14px;transform:translateY(-50%)}input[type=text],input[type=email],input[type=password],input[type=tel],input[type=search],input[type=number],input[type=time],input:not([type]),select,textarea{font-size:16px}.time-input{background:var(--fill-2);border-radius:var(--r-md);border:none;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.time-input-lbl{color:var(--ivory);font-size:13px}.time-input-ctrl{align-items:center;gap:16px;display:flex}.time-input-ctrl .val{color:var(--ivory);font-variant-numeric:tabular-nums;text-align:center;min-width:56px;font-size:15px;font-weight:500}.time-btn{background:var(--fill-2);width:30px;height:30px;color:var(--ivory);cursor:pointer;transition:all var(--dur) var(--ease);border:none;border-radius:50%;justify-content:center;align-items:center;font-size:16px;display:flex}.time-btn:hover{background:var(--fill-3);color:var(--gold)}.toggle{border-radius:var(--r-pill);cursor:pointer;width:40px;height:23px;transition:background var(--dur) var(--ease);flex:none;align-items:center;padding:2px;display:flex}.toggle-on{background:var(--gold);justify-content:flex-end}.toggle-off{background:var(--fill-3);justify-content:flex-start}.toggle-thumb{background:#fff;border-radius:50%;width:19px;height:19px;box-shadow:0 1px 3px #00000059}.pill{border-radius:var(--r-pill);align-items:center;gap:7px;padding:5px 12px;font-size:11px;font-weight:500;display:inline-flex}.pill-dot{border-radius:50%;width:6px;height:6px}.pill-open{background:var(--gold-tint);color:var(--ivory)}.pill-open .pill-dot{background:var(--gold)}.pill-busy{background:var(--fill-2);color:var(--bronze)}.pill-busy .pill-dot{background:var(--bronze)}.pill-closed{background:var(--fill-2);color:var(--bronze)}.pill-closed .pill-dot{background:var(--on-dark-3)}.badge{border-radius:var(--r-pill);letter-spacing:.02em;align-items:center;gap:6px;padding:4px 10px;font-size:10px;font-weight:500;display:inline-flex}.badge-app{background:var(--fill-2);color:var(--bronze)}.badge-cat{background:var(--fill-2);color:var(--ivory)}.badge-cat-dot{border-radius:50%;flex:none;width:6px;height:6px}.badge-physical{background:var(--fill-2);color:var(--bronze)}.badge-gold{background:var(--gold-tint);color:var(--gold)}.q-num{font-variant-numeric:tabular-nums;border-radius:50%;flex:none;justify-content:center;align-items:center;width:32px;height:32px;font-size:12px;font-weight:500;display:flex}.q-num-default{background:var(--fill-2);color:var(--gold)}.q-num-active{background:var(--gold);color:var(--night)}.list-flat{background:var(--fill-1);border-radius:var(--r-lg);padding:6px}.salon-card{border-radius:var(--r-md);transition:background var(--dur) var(--ease);cursor:pointer;align-items:center;gap:14px;padding:15px 16px;display:flex}.salon-card:hover{background:var(--fill-2)}.salon-avatar{border-radius:var(--r-md);background:var(--fill-3);width:46px;height:46px;color:var(--gold);flex:none;justify-content:center;align-items:center;font-size:14px;font-weight:500;display:flex}.salon-info{flex:1;min-width:0}.salon-name{color:var(--ivory);font-size:14px;font-weight:500}.salon-meta{color:var(--bronze);margin-top:3px;font-size:12px}.queue-item{border-radius:var(--r-md);transition:background var(--dur) var(--ease);align-items:center;gap:14px;min-width:0;padding:14px 16px;display:flex}.queue-item:hover{background:var(--fill-2)}.q-client{flex:1;min-width:0}.q-client-name{color:var(--ivory);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}.q-client-meta{color:var(--bronze);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;overflow:hidden}.coiffeur-row{background:var(--fill-1);border-radius:var(--r-md);border:none;align-items:center;gap:12px;padding:13px 16px;display:flex}.coiffeur-row+.coiffeur-row{margin-top:8px}.coiffeur-dot{border-radius:50%;flex:none;width:8px;height:8px}.coiffeur-name{color:var(--ivory);flex:1;font-size:13px}.coiffeur-status{color:var(--bronze);font-size:11px}.banner{background:var(--fill-1);border-radius:var(--r-lg);border:none;justify-content:space-between;align-items:center;min-width:0;padding:20px 14px;display:flex;overflow:hidden}.banner-stat{text-align:center;flex:1;min-width:0;padding:0 4px}.banner-val{color:var(--ivory);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(18px,6vw,28px);font-weight:500;overflow:hidden}.banner-lbl{color:var(--bronze);letter-spacing:.04em;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:10px;overflow:hidden}.banner-divider{background:var(--fill-hair);width:1px;height:40px}.stat-row{gap:10px;min-width:0;display:flex}.stat-card{background:var(--fill-1);border-radius:var(--r-md);text-align:center;border:none;flex:1;min-width:0;padding:18px 10px}.stat-val{color:var(--ivory);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(20px,6vw,26px);font-weight:500;overflow:hidden}.stat-lbl{color:var(--bronze);text-transform:uppercase;letter-spacing:.07em;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:9px;overflow:hidden}.position-hero{background:var(--fill-1);border-radius:var(--r-xl);text-align:center;border:none;padding:36px}.position-num{color:var(--gold);font-variant-numeric:tabular-nums;font-size:72px;font-weight:500;line-height:1}.position-lbl{color:var(--bronze);margin-top:8px;font-size:12px}.position-salon{color:var(--ivory);margin-top:14px;font-size:14px;font-weight:500}.progress-track{background:var(--fill-2);border:none;border-radius:3px;height:6px;overflow:hidden}.progress-fill{background:var(--gold);border-radius:3px;height:100%}.alert{border-radius:var(--r-md);background:var(--fill-2);color:var(--on-dark-2);align-items:flex-start;gap:12px;padding:15px 17px;font-size:13px;line-height:1.55;display:flex}.alert-success{background:var(--fill-2);color:var(--ivory)}.alert-warning{background:var(--fill-2);color:var(--bronze)}.alert-error{background:var(--red-soft);color:var(--red)}.alert-info{background:var(--fill-2);color:var(--bronze)}.app-navbar{background:0 0;border-top:none;padding:12px 0 8px;display:flex}.app-navbar .nav-item{cursor:pointer;font-family:var(--font-sans);background:0 0;border:none;flex-direction:column;flex:1;align-items:center;gap:5px;padding:0;display:flex}.nav-item i{color:var(--bronze);transition:color var(--dur) var(--ease)}.nav-item span{color:var(--bronze);font-size:9px}.nav-item.active i,.nav-item.active span{color:var(--ivory)}.nav-active-dot{background:var(--gold);border-radius:50%;width:4px;height:4px}.qbarber-logo-lockup-wrap{height:var(--logo-lockup-h-header);flex:none;line-height:0;display:block}.qbarber-logo-lockup-wrap--login{height:var(--logo-lockup-h-login)}.qbarber-logo-lockup-wrap--sidebar{height:var(--logo-lockup-h-sidebar)}.qbarber-logo-lockup{width:auto;height:100%;max-height:var(--logo-lockup-h-header);flex:none;display:block}.qbarber-logo-lockup--login{max-height:var(--logo-lockup-h-login);margin-bottom:var(--sp-6)}.qbarber-logo-lockup--sidebar{max-height:var(--logo-lockup-h-sidebar);margin-bottom:var(--sp-8);padding-left:var(--sp-2);padding-right:var(--sp-2)}*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:DM Sans,ui-sans-serif,system-ui,-apple-system,sans-serif;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!sticky{position:sticky!important}.sticky{position:sticky}.mb-0{margin-bottom:0}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.mb-4{margin-bottom:16px}.mb-5{margin-bottom:20px}.mb-6{margin-bottom:24px}.mb-\[10px\]{margin-bottom:10px}.mb-\[12px\]{margin-bottom:12px}.mb-\[18px\]{margin-bottom:18px}.mb-\[6px\]{margin-bottom:6px}.mb-\[7px\]{margin-bottom:7px}.mb-\[9px\]{margin-bottom:9px}.mr-\[7px\]{margin-right:7px}.mt-0\.5{margin-top:.125rem}.mt-3{margin-top:12px}.mt-5{margin-top:20px}.mt-6{margin-top:24px}.mt-\[3px\]{margin-top:3px}.mt-\[5px\]{margin-top:5px}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.h-4{height:16px}.h-8{height:32px}.h-\[120px\]{height:120px}.h-\[180px\]{height:180px}.h-\[320px\]{height:320px}.h-\[52px\]{height:52px}.h-\[6px\]{height:6px}.h-\[88px\]{height:88px}.\!w-12{width:48px!important}.w-4{width:16px}.w-\[140px\]{width:140px}.w-\[180px\]{width:180px}.w-\[6px\]{width:6px}.w-full{width:100%}.min-w-0{min-width:0}.flex-1{flex:1}.flex-none{flex:none}.shrink-0{flex-shrink:0}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}.cursor-pointer{cursor:pointer}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-\[10px\]{gap:10px}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded-\[12px\]{border-radius:12px}.rounded-\[14px\]{border-radius:14px}.rounded-full{border-radius:9999px}.border{border-width:1px}.border-2{border-width:2px}.border-none{border-style:none}.border-current{border-color:currentColor}.border-t-transparent{border-top-color:#0000}.\!px-0{padding-left:0!important;padding-right:0!important}.px-1{padding-left:4px;padding-right:4px}.px-4{padding-left:16px;padding-right:16px}.py-3{padding-top:12px;padding-bottom:12px}.py-4{padding-top:16px;padding-bottom:16px}.pt-10{padding-top:40px}.pt-12{padding-top:48px}.text-left{text-align:left}.text-center{text-align:center}.font-serif{font-family:Cormorant Garamond,Georgia,Times New Roman,serif}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[14px\]{font-size:14px}.text-\[16px\]{font-size:16px}.text-\[24px\]{font-size:24px}.text-\[26px\]{font-size:26px}.font-light{font-weight:300}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-\[1\.2\]{line-height:1.2}.leading-\[1\.5\]{line-height:1.5}.tracking-\[0\.12em\]{letter-spacing:.12em}.blur{--tw-blur:blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}*{box-sizing:border-box;margin:0;padding:0}html{overflow-x:hidden}html,body,#root{width:100%;min-height:100%}body{font-family:var(--font-sans);background:var(--night);color:var(--ivory);-webkit-font-smoothing:antialiased;overflow-x:hidden}.app-viewport{background:var(--night-900);justify-content:center;width:100%;min-height:100dvh;display:flex;overflow-x:hidden}.app-phone{background:var(--night);flex-direction:column;width:100%;min-width:0;max-width:min(390px,100%);height:100dvh;max-height:100dvh;display:flex;position:relative;overflow:hidden}.app-scroll{-webkit-overflow-scrolling:touch;flex:1;min-width:0;min-height:0;overflow:hidden auto}.app-fit{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.app-fit-center{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:0;padding:0 24px 8px;display:flex;overflow:hidden}.app-scroll-list{-webkit-overflow-scrolling:touch;flex:1;min-height:0;overflow:hidden auto}.app-scroll-inset{padding-bottom:calc(8px + env(safe-area-inset-bottom))}.app-top,.screen-header{z-index:30;padding:calc(8px + env(safe-area-inset-top)) 18px 12px;background:var(--chrome-bg);-webkit-backdrop-filter:blur(16px);flex:none;justify-content:space-between;align-items:center;display:flex}.sec-block{padding:16px 18px}.sec-block-compact{padding:12px 18px}.sec-block+.sec-block,.sec-block-compact+.sec-block-compact,.sec-block+.sec-block-compact,.sec-block-compact+.sec-block{box-shadow:inset 0 1px 0 var(--fill-hair)}.section-label{letter-spacing:.1em;text-transform:uppercase;color:var(--bronze);margin-bottom:13px;font-size:10px;font-weight:600}.app-top .left{align-items:center;gap:10px;min-width:0;display:flex}.app-top .title,.screen-header .title{color:var(--ivory);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:17px;font-weight:600;overflow:hidden}.app-logo,.qbarber-logo-lockup{height:var(--logo-lockup-h-header);max-height:var(--logo-lockup-h-header);width:auto}.login-logo,.qbarber-logo-lockup--login{height:var(--logo-lockup-h-login);max-height:var(--logo-lockup-h-login);width:auto;margin-bottom:var(--sp-6)}.scr-cta{width:100%;padding:12px 18px calc(12px + env(safe-area-inset-bottom));background:linear-gradient(180deg, var(--cta-fade-start) 0%, var(--cta-fade-mid) 28%, var(--night) 100%);z-index:10;box-sizing:border-box;flex:none}.home-bar{background:var(--on-dark-3);width:134px;height:5px;margin:4px auto calc(8px + env(safe-area-inset-bottom));border-radius:999px;flex:none}.presence-chips{flex-wrap:wrap;gap:8px;display:flex}.pchip{border-radius:var(--r-pill);background:var(--fill-1);color:var(--bronze);cursor:pointer;transition:all var(--dur) var(--ease);border:none;align-items:center;gap:6px;padding:9px 14px;font-size:13px;display:inline-flex}.pchip.on{background:var(--gold-tint);color:var(--ivory);font-weight:500}.durations-summary{background:var(--fill-1);border-radius:var(--r-md);cursor:pointer;width:100%;transition:background var(--dur) var(--ease);color:inherit;box-sizing:border-box;border:none;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:14px 16px;display:flex}.durations-summary>div:first-child{flex:1;min-width:0}.durations-summary:hover{background:var(--fill-2)}.opt-tag{color:var(--bronze);background:var(--fill-2);border-radius:var(--r-pill);padding:3px 9px;font-size:10px}.sheet-scrim{background:var(--chrome-scrim);z-index:44;border:none;position:fixed;inset:0}.bottom-sheet{background:var(--surface);width:100%;max-width:min(390px,100%);padding:8px 18px calc(18px + env(safe-area-inset-bottom));box-shadow:var(--sheet-shadow);z-index:45;box-sizing:border-box;border-radius:22px 22px 0 0;margin:0 auto;position:fixed;bottom:0;left:0;right:0}.sheet-grip{background:var(--fill-3);border-radius:2px;width:38px;height:4px;margin:6px auto 16px}.cat-pick{gap:8px;display:flex}.cat-pick .c{text-align:center;border-radius:var(--r-md);background:var(--fill-1);color:var(--bronze);cursor:pointer;transition:all var(--dur) var(--ease);border:none;flex:1;padding:11px 4px;font-size:11px}.cat-pick .c.on{box-shadow:inset 0 0 0 1.5px var(--gold);color:var(--ivory)}.cat-pick .c .d{margin-top:3px;font-size:9px}.status-switch{gap:8px;display:flex}.status-switch .s{text-align:center;border-radius:var(--r-md);background:var(--fill-1);color:var(--bronze);cursor:pointer;transition:all var(--dur) var(--ease);border:none;flex:1;padding:12px 6px;font-size:12px;font-weight:500}.status-switch .s.on-open{background:var(--gold-tint);color:var(--ivory);box-shadow:inset 0 0 0 1.5px var(--gold)}.status-switch .s.on-pause{background:var(--fill-2);color:var(--bronze);box-shadow:inset 0 0 0 1.5px var(--bronze)}.status-switch .s.on-closed{background:var(--fill-2);color:var(--bronze);box-shadow:inset 0 0 0 1.5px var(--on-dark-3)}.swipe-hint{color:var(--bronze);shrink:0;white-space:nowrap;flex:none;align-items:center;gap:5px;font-size:10px;display:flex}.queue-item.selected{background:var(--fill-2)}.icon-btn{width:40px;height:40px;color:var(--bronze);cursor:pointer;transition:all var(--dur) var(--ease);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;text-decoration:none;display:flex}.icon-btn:hover{background:var(--fill-2);color:var(--ivory)}.settings-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 0;display:flex}.settings-row>div:first-child{flex:120px;min-width:0}.settings-row-controls{flex-wrap:wrap;flex:180px;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.settings-row+.settings-row{box-shadow:inset 0 1px 0 var(--fill-hair)}.settings-row label{color:var(--ivory);font-size:13px}.settings-row .hint{color:var(--bronze);margin-top:3px;font-size:11px}.time-field{background:var(--fill-2);border-radius:var(--r-md);color:var(--ivory);font-size:16px;font-family:var(--font-sans);border:none;outline:none;flex:6.5rem;width:auto;min-width:0;max-width:100%;padding:10px}.time-field:focus{box-shadow:inset 0 0 0 1.5px var(--gold)}@keyframes pulse-cta{0%,to{opacity:1}50%{opacity:.72}}.pulse-cta{animation:pulse-cta 2s var(--ease) infinite}.top-actions{shrink:0;flex:none;align-items:center;gap:4px;display:flex}.ios-settings-group{padding:0 16px 22px}.ios-settings-group-title{text-transform:uppercase;letter-spacing:.08em;color:var(--bronze);padding:0 6px 8px;font-size:11px;font-weight:600}.ios-settings-list{background:var(--fill-1);border-radius:var(--r-lg);overflow:hidden}.ios-settings-row{width:100%;min-height:50px;color:var(--ivory);font-family:var(--font-sans);text-align:left;cursor:pointer;transition:background var(--dur) var(--ease);-webkit-tap-highlight-color:transparent;background:0 0;border:none;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:13px 14px;font-size:15px;display:flex}.ios-settings-row:active{background:var(--fill-2)}.ios-settings-row+.ios-settings-row,.ios-settings-day+.ios-settings-day{box-shadow:inset 0 1px 0 var(--fill-hair)}.ios-settings-row-static:active{background:0 0}.ios-settings-row-label{flex:1;min-width:0;font-size:15px}.ios-settings-row-hint{color:var(--bronze);margin-top:2px;font-size:12px;font-weight:400;display:block}.ios-settings-row-accessory{flex:none;align-items:center;gap:6px;max-width:58%;display:flex}.ios-settings-row-value{color:var(--bronze);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.ios-settings-chevron{color:var(--on-dark-3);flex:none}.ios-settings-footer{color:var(--bronze);padding:8px 6px 0;font-size:12px;line-height:1.55}.ios-settings-row.destructive{color:var(--red);justify-content:center}.ios-settings-row.destructive .ios-settings-row-label{text-align:center;flex:none;width:100%}.ios-settings-row-field{cursor:default;flex-direction:column;align-items:stretch;gap:10px;padding:14px}.ios-settings-row-field:active{background:0 0}.ios-settings-field-label{color:var(--bronze);font-size:13px}.ios-settings-day{flex-direction:column;display:flex}.ios-settings-day-times{grid-template-columns:1fr 1fr;gap:10px;padding:0 14px 14px;display:grid}.ios-settings-time-wrap{flex-direction:column;gap:6px;min-width:0;display:flex}.ios-settings-time-label{color:var(--bronze);font-size:11px}.ios-settings-time{background:var(--fill-2);width:100%;color:var(--ivory);font-size:16px;font-family:var(--font-sans);font-variant-numeric:tabular-nums;border:none;border-radius:10px;outline:none;padding:11px 10px}.ios-settings-time:focus{box-shadow:inset 0 0 0 1.5px var(--gold)}.ios-team-row{gap:10px}.ios-team-avatar{border-radius:var(--r-md);background:var(--fill-2);width:36px;height:36px;color:var(--gold);flex:none;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:flex}.ios-team-main{min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;flex:1;justify-content:space-between;align-items:center;gap:10px;padding:0;display:flex}.ios-team-main:disabled{cursor:default;opacity:1}.ios-team-delete{flex:none;width:36px!important;height:36px!important}.ios-settings-add{flex-direction:column;gap:12px;padding:14px;display:flex}.ios-settings-add-btn{background:var(--fill-2);border-radius:var(--r-md);width:100%;min-height:44px;font-size:14px;font-weight:500;font-family:var(--font-sans);cursor:pointer;transition:background var(--dur) var(--ease);border:none;justify-content:center;align-items:center;gap:8px;display:inline-flex}.ios-settings-add-btn:active{background:var(--fill-3)}.ios-duration-label{align-items:center;gap:8px;display:flex}.ios-duration-dot{border-radius:50%;flex:none;width:6px;height:6px}.ios-stepper{flex:none;align-items:center;gap:10px;display:flex}.ios-stepper-btn{background:var(--fill-2);width:34px;height:34px;color:var(--ivory);cursor:pointer;transition:all var(--dur) var(--ease);border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.ios-stepper-btn:active{background:var(--fill-3);transform:scale(.96)}.ios-stepper-val{color:var(--ivory);font-variant-numeric:tabular-nums;text-align:center;min-width:52px;font-size:14px;font-weight:500}.connection-banner{z-index:60;width:min(390px,100%);padding:calc(10px + env(safe-area-inset-top)) 16px 10px;background:var(--toast-bg);color:var(--ivory);pointer-events:none;justify-content:center;align-items:center;gap:8px;font-size:12.5px;font-weight:500;display:flex;position:fixed;top:0;left:50%;transform:translate(-50%)}.connection-banner-text{line-height:1.3}.connection-banner-spin{border:2px solid var(--fill-3);border-top-color:var(--gold);border-radius:50%;flex-shrink:0;width:14px;height:14px;animation:.7s linear infinite connection-spin}@keyframes connection-spin{to{transform:rotate(360deg)}}
