@font-face{font-family:Outfit;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/b2ea385cb5ae8625-s.1spbknb88wd48.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1b99372b3eaef0c8-s.p.1gsd1jahc5dg_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit Fallback;src:local(Arial);ascent-override:100.18%;descent-override:26.05%;line-gap-override:0.0%;size-adjust:99.82%}.outfit_92759770-module__3q_Spa__className{font-family:Outfit,Outfit Fallback;font-style:normal}.outfit_92759770-module__3q_Spa__variable{--font-outfit:"Outfit", "Outfit Fallback"}
@font-face{font-family:Figtree;font-style:normal;font-weight:300 900;font-display:swap;src:url(../media/400bf8aa837fcb7e-s.19g-lkcx7iw64.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree;font-style:normal;font-weight:300 900;font-display:swap;src:url(../media/f7aa21714c1c53f8-s.p.0-95eo-012xnf.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree Fallback;src:local(Arial);ascent-override:94.32%;descent-override:24.82%;line-gap-override:0.0%;size-adjust:100.72%}.figtree_133940e9-module__Ow2VXW__className{font-family:Figtree,Figtree Fallback;font-style:normal}.figtree_133940e9-module__Ow2VXW__variable{--font-figtree:"Figtree", "Figtree Fallback"}
@font-face{font-family:Newsreader;font-style:italic;font-weight:300;font-display:swap;src:url(../media/b3f36434191c58fc-s.0su48duqewwbh.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Newsreader;font-style:italic;font-weight:300;font-display:swap;src:url(../media/d1170b36b474f426-s.447r_gf3n-1ky.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Newsreader;font-style:italic;font-weight:300;font-display:swap;src:url(../media/f5aeb3df958dfd51-s.p.3l-ftl7rosqnw.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Newsreader Fallback;src:local(Times New Roman);ascent-override:69.68%;descent-override:25.12%;line-gap-override:0.0%;size-adjust:105.48%}.newsreader_a1ff8c7f-module__G1YFnG__className{font-family:Newsreader,Newsreader Fallback;font-style:italic;font-weight:300}.newsreader_a1ff8c7f-module__G1YFnG__variable{--font-serif:"Newsreader", "Newsreader Fallback"}
@font-face{font-family:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/4ba802ed8e67eac5-s.0fuxtgzazslqx.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/d7a0600e467cf0bd-s.451yigaaz_4mg.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/dc0d9adbac686440-s.p.3cik_s2si-ft-.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Mono Fallback;src:local(Arial);ascent-override:81.58%;descent-override:26.3%;line-gap-override:0.0%;size-adjust:137.28%}.space_mono_acc68b7d-module__G_LGzG__className{font-family:Space Mono,Space Mono Fallback;font-style:normal;font-weight:400}.space_mono_acc68b7d-module__G_LGzG__variable{--font-mono:"Space Mono", "Space Mono Fallback"}
*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{font-family:var(--font-figtree), system-ui, sans-serif;background:var(--ground);color:var(--text-primary);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:1.0625rem;line-height:1.6}h1,h2,h3{font-family:var(--font-outfit), system-ui, sans-serif;letter-spacing:-.03em;text-wrap:balance;margin:0;font-weight:600;line-height:1.05}h1{font-size:clamp(2.75rem,7.5vw,5.25rem)}h2{font-size:clamp(2rem,4.5vw,3.25rem)}h3{letter-spacing:-.015em;font-size:clamp(1.25rem,2vw,1.5rem)}p{text-wrap:pretty;margin:0}a{color:inherit}.wrap{width:min(100% - 2.5rem,68rem);margin-inline:auto}.section{padding-block:clamp(4rem,10vw,8rem)}.eyebrow{font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.24em;text-transform:uppercase;color:var(--focus);margin:0 0 1.25rem;font-size:.72rem}.tagline{font-family:var(--font-serif), Georgia, serif;color:var(--text-secondary);font-size:clamp(1.2rem,2.4vw,1.6rem);font-style:italic;font-weight:300;line-height:1.35}.lede{color:var(--text-secondary);max-width:34rem;font-size:clamp(1.125rem,1.6vw,1.3125rem);line-height:1.55}.prose{color:var(--text-secondary);max-width:36rem}.nav{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:color-mix(in srgb, var(--ground) 82%, transparent);border-bottom:1px solid color-mix(in srgb, var(--border) 34%, transparent);position:sticky;top:0}.nav-inner{justify-content:space-between;align-items:center;gap:1.5rem;padding-block:1rem;display:flex}.nav-links{align-items:center;gap:clamp(1rem,3vw,2rem);font-size:.95rem;display:flex}.nav-links a{color:var(--text-secondary);text-decoration:none;transition:color .18s}.nav-links a:hover{color:var(--text-primary)}.wordmark{font-family:var(--font-outfit), system-ui, sans-serif;letter-spacing:-.03em;color:var(--text-primary);font-size:1.35rem;font-weight:600;text-decoration:none}.wordmark span{color:var(--accent)}.btn{border:1px solid #0000;border-radius:999px;align-items:center;gap:.5rem;padding:.8rem 1.5rem;font-size:.98rem;font-weight:600;text-decoration:none;transition:transform .18s,box-shadow .18s,background .18s;display:inline-flex}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-primary:hover{box-shadow:0 12px 30px -12px var(--accent);transform:translateY(-2px)}.btn-ghost{border-color:color-mix(in srgb, var(--border) 55%, transparent);color:var(--text-primary)}.btn-ghost:hover{border-color:var(--accent);transform:translateY(-2px)}.card{background:color-mix(in srgb, var(--surface-accent) 26%, transparent);border:1px solid color-mix(in srgb, var(--border) 32%, transparent);border-radius:1rem;padding:1.75rem}.card h3{margin-bottom:.6rem}.card p{color:var(--text-secondary);font-size:.975rem}.grid{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:1.25rem;display:grid}.rule{border:0;border-top:1px solid color-mix(in srgb, var(--border) 30%, transparent);margin:0}.foot{color:var(--text-muted);padding-block:3rem;font-size:.9rem}.foot a{color:var(--text-secondary);text-decoration:none}.foot a:hover{color:var(--text-primary)}.skip{position:absolute;inset-inline-start:-9999px}.skip:focus{inset-inline-start:1rem;z-index:50;background:var(--accent);color:var(--accent-ink);border-radius:.5rem;padding:.75rem 1.25rem;top:1rem}:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:4px}.theme-toggle{border:1px solid color-mix(in srgb, var(--border) 55%, transparent);width:2.25rem;height:2.25rem;color:var(--text-secondary);font:inherit;cursor:pointer;transition:color var(--motion-quick) var(--motion-easing);background:0 0;border-radius:999px;place-items:center;font-size:1rem;line-height:1;display:inline-grid}.theme-toggle:hover{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 50%, transparent)}.theme-toggle-placeholder{width:2.25rem;height:2.25rem;display:inline-block}
.qjolly-app{background:var(--ground);color:var(--text-primary);font-family:var(--font-figtree), system-ui, sans-serif;font-size:var(--text-body);line-height:var(--leading-body);-webkit-font-smoothing:antialiased;margin:0}h1,h2,.qjolly-app h3{font-family:var(--font-outfit), system-ui, sans-serif;text-wrap:balance;margin:0;font-weight:600}.qjolly-app h1{font-size:var(--text-display);line-height:var(--leading-display);letter-spacing:var(--tracking-display)}.qjolly-app h2{font-size:var(--text-heading);line-height:var(--leading-heading);letter-spacing:var(--tracking-heading)}.qjolly-app h3{font-size:var(--text-title);line-height:var(--leading-title);letter-spacing:var(--tracking-title)}.qjolly-app p{text-wrap:pretty;margin:0}.qjolly-app :focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--radius-sm)}.qjolly-app .skip{position:absolute;inset-inline-start:-9999px}.qjolly-app .skip:focus{inset-inline-start:var(--space-lg);top:var(--space-lg);z-index:50;padding:var(--space-md) var(--space-lg);border-radius:var(--radius-sm);background:var(--accent);color:var(--accent-ink)}.qjolly-app .shell{flex-direction:column;min-height:100dvh;display:flex}.qjolly-app .wrap{width:min(100% - var(--space-xl), 72rem);margin-inline:auto}.qjolly-app .bar{justify-content:space-between;align-items:center;gap:var(--space-lg);padding-block:var(--space-lg);border-bottom:1px solid color-mix(in srgb, var(--border) 40%, transparent);display:flex}.qjolly-app .wordmark{font-family:var(--font-outfit), system-ui, sans-serif;font-weight:600;font-size:var(--text-title);letter-spacing:var(--tracking-title);color:var(--text-primary);text-decoration:none}.qjolly-app .wordmark span{color:var(--accent)}.qjolly-app .card{background:var(--surface);border:1px solid color-mix(in srgb, var(--border) 34%, transparent);border-radius:var(--radius-lg);padding:var(--space-xl);box-shadow:var(--shadow-low)}.qjolly-app .muted{color:var(--text-muted);font-size:var(--text-small)}.qjolly-app .secondary{color:var(--text-secondary)}.qjolly-app .eyebrow{font-family:var(--font-mono), ui-monospace, monospace;font-size:var(--text-micro);letter-spacing:var(--tracking-micro);text-transform:uppercase;color:var(--focus);margin:0 0 var(--space-md)}.qjolly-app .btn{align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-xl);border-radius:var(--radius-full);font:inherit;cursor:pointer;background:var(--accent);color:var(--accent-ink);transition:transform var(--motion-quick) var(--motion-easing);border:1px solid #0000;font-weight:600;display:inline-flex}.qjolly-app .btn:hover:not(:disabled){transform:translateY(-1px)}.qjolly-app .btn:disabled{opacity:.55;cursor:not-allowed}.qjolly-app .btn-quiet{color:var(--text-primary);border-color:color-mix(in srgb, var(--border) 55%, transparent);background:0 0}.qjolly-app .field{gap:var(--space-sm);margin-block:var(--space-lg);flex-direction:column;display:flex}.qjolly-app .field label{font-size:var(--text-small);color:var(--text-secondary)}.qjolly-app .otp-field{gap:var(--space-sm);margin-block:var(--space-lg);flex-direction:column;display:flex}.qjolly-app .otp{direction:ltr;justify-content:space-between;gap:10px;display:flex}.qjolly-app .otp input{min-width:0;max-width:56px;height:60px;font:inherit;text-align:center;color:var(--text-primary);background:var(--ground);border:1px solid color-mix(in srgb, var(--border) 50%, transparent);border-radius:14px;flex:1;padding:0;font-size:24px;font-weight:700}.qjolly-app .otp input:focus-visible{border-color:var(--mulberry,currentColor);outline:4px solid color-mix(in srgb, var(--border) 35%, transparent);outline-offset:0}.qjolly-app .otp-label{font-size:var(--text-small);color:var(--text-secondary)}.qjolly-app .field input{padding:var(--space-md);font:inherit;color:var(--text-primary);background:var(--ground);border:1px solid color-mix(in srgb, var(--border) 50%, transparent);border-radius:var(--radius-md)}.qjolly-app .chip{align-items:center;gap:var(--space-xs);padding:.15rem var(--space-md);border-radius:var(--radius-full);font-size:var(--text-micro);letter-spacing:.04em;text-transform:uppercase;border:1px solid color-mix(in srgb, var(--border) 30%, transparent);font-weight:600;display:inline-flex}.qjolly-app .gate{padding:var(--space-2xl) var(--space-lg);flex:1;place-items:center;display:grid}.qjolly-app .gate .card{width:100%;max-width:26rem}.qjolly-app .gate h2{margin-bottom:var(--space-md)}.qjolly-app .directory-bar{z-index:20;gap:var(--space-md);padding-block:var(--space-lg);background:var(--ground);border-bottom:1px solid color-mix(in srgb, var(--border) 40%, transparent);flex-direction:column;display:flex;position:sticky;top:0}.qjolly-app .search{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border:1px solid color-mix(in srgb, var(--border) 55%, transparent);border-radius:var(--radius-full);background:var(--surface);display:flex}.qjolly-app .search:focus-within{border-color:var(--focus)}.qjolly-app .search-icon{color:var(--text-muted);font-size:var(--text-title);line-height:1}.qjolly-app .search-input{min-width:0;font:inherit;color:var(--text-primary);padding-block:var(--space-xs);background:0 0;border:0;flex:1}.qjolly-app .search-input:focus{outline:none}.qjolly-app .search-input::-webkit-search-cancel-button{display:none}.qjolly-app .search-clear{color:var(--text-muted);font-size:var(--text-title);cursor:pointer;padding:0 var(--space-xs);background:0 0;border:0;line-height:1}.qjolly-app .chips{gap:var(--space-sm);scrollbar-width:none;padding-bottom:2px;display:flex;overflow-x:auto}.qjolly-app .chips::-webkit-scrollbar{display:none}.qjolly-app .filter-chip{align-items:center;gap:var(--space-xs);white-space:nowrap;padding:var(--space-xs) var(--space-md);border-radius:var(--radius-full);border:1px solid color-mix(in srgb, var(--border) 55%, transparent);color:var(--text-secondary);font:inherit;font-size:var(--text-small);cursor:pointer;transition:background var(--motion-quick) var(--motion-easing);background:0 0;display:inline-flex}.qjolly-app .filter-chip.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.qjolly-app .filter-count{font-variant-numeric:tabular-nums;opacity:.65;font-size:var(--text-micro)}.qjolly-app .filter-chip.clear{border-style:dashed}.qjolly-app .result-count{color:var(--text-secondary);font-size:var(--text-small);margin-block:var(--space-lg) var(--space-md)}.qjolly-app .salon-grid{margin:0 0 var(--space-2xl);gap:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(min(100%,20rem),1fr));padding:0;list-style:none;display:grid}.qjolly-app .salon-grid>li{display:flex}.qjolly-app .salon-card{gap:var(--space-lg);text-align:left;width:100%;height:100%;font:inherit;color:inherit;cursor:pointer;padding:var(--space-lg);background:var(--surface);border:1px solid color-mix(in srgb, var(--border) 34%, transparent);border-radius:var(--radius-lg);box-shadow:var(--shadow-low);transition:transform var(--motion-quick) var(--motion-easing), border-color var(--motion-quick) var(--motion-easing);display:flex}.qjolly-app .salon-card:hover{border-color:color-mix(in srgb, var(--accent) 45%, transparent);transform:translateY(-2px)}.qjolly-app .salon-thumb{border-radius:var(--radius-md);background:color-mix(in srgb, var(--accent) 14%, var(--ground));flex:none;place-items:center;width:5rem;height:5rem;display:grid;overflow:hidden}.qjolly-app .salon-thumb img{object-fit:cover;width:100%;height:100%}.qjolly-app .salon-monogram{font-family:var(--font-outfit), system-ui, sans-serif;font-size:var(--text-heading);color:var(--accent);font-weight:600}.qjolly-app .salon-body{gap:var(--space-xs);flex-direction:column;min-width:0;display:flex}.qjolly-app .salon-head{justify-content:space-between;align-items:baseline;gap:var(--space-sm);display:flex}.qjolly-app .salon-head h3{font-size:var(--text-title);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.qjolly-app .rating{align-items:center;gap:var(--space-xs);padding:.1rem var(--space-sm);border-radius:var(--radius-sm);font-size:var(--text-micro);font-variant-numeric:tabular-nums;flex:none;font-weight:600;display:inline-flex}.qjolly-app .rating.has{background:var(--status-completed-tint);color:var(--status-completed-ink)}.qjolly-app .rating.none{background:color-mix(in srgb, var(--border) 22%, transparent);color:var(--text-muted)}.qjolly-app .salon-services,.qjolly-app .salon-address{font-size:var(--text-small);color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.qjolly-app .salon-address{color:var(--text-muted)}.qjolly-app .salon-meta{align-items:center;gap:var(--space-sm);margin-top:var(--space-xs);font-size:var(--text-micro);color:var(--text-muted);flex-wrap:wrap;display:flex}.qjolly-app .badge{padding:.1rem var(--space-sm);border-radius:var(--radius-full);letter-spacing:.03em;text-transform:uppercase;font-weight:600}.qjolly-app .badge.verified{background:color-mix(in srgb, var(--focus) 18%, transparent);color:var(--focus)}.qjolly-app .badge.shut{background:var(--status-rejected-tint);color:var(--status-rejected-ink)}.qjolly-app .empty{text-align:center;gap:var(--space-md);justify-items:center;display:grid}@media (prefers-reduced-motion:reduce){.qjolly-app .salon-card,.qjolly-app .filter-chip{transition:none}.qjolly-app .salon-card:hover{transform:none}}.qjolly-app .slots{margin-top:var(--space-lg);gap:var(--space-xl);flex-direction:column;display:flex}.qjolly-app .slots-summary{justify-content:space-between;align-items:center;gap:var(--space-md);font-size:var(--text-small);color:var(--text-secondary);flex-wrap:wrap;display:flex}.qjolly-app .slot-legend{align-items:center;gap:var(--space-xs);font-size:var(--text-micro);color:var(--text-muted);display:inline-flex}.qjolly-app .slot-key{border-radius:var(--radius-sm);width:.7rem;height:.7rem;margin-left:var(--space-sm);display:inline-block}.qjolly-app .slot-key[data-tier=free]{background:var(--slot-free-tint);border:1px solid var(--slot-free-edge)}.qjolly-app .slot-key[data-tier=filling]{background:var(--slot-filling-tint);border:1px solid var(--slot-filling-edge)}.qjolly-app .slot-key[data-tier=full]{background:var(--slot-full-tint);border:1px solid var(--slot-full-edge)}.qjolly-app .slot-group h4{justify-content:space-between;align-items:baseline;gap:var(--space-md);font-family:var(--font-mono), ui-monospace, monospace;font-size:var(--text-micro);letter-spacing:var(--tracking-micro);text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--space-md);padding-bottom:var(--space-xs);border-bottom:1px solid color-mix(in srgb, var(--border) 30%, transparent);display:flex}.qjolly-app .slot-group-count{font-variant-numeric:tabular-nums;color:var(--text-secondary)}.qjolly-app .slot-row{gap:var(--space-sm);grid-template-columns:repeat(auto-fill,minmax(5.5rem,1fr));display:grid}.qjolly-app .slot{padding:var(--space-sm) var(--space-xs);border-radius:var(--radius-md);border:1px solid color-mix(in srgb, var(--border) 45%, transparent);color:var(--text-primary);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;transition:background var(--motion-quick) var(--motion-easing), transform var(--motion-quick) var(--motion-easing);background:0 0;flex-direction:column;align-items:center;gap:2px;display:flex}.qjolly-app .slot-time{font-size:var(--text-small);font-weight:600}.qjolly-app .slot-note{font-size:var(--text-micro);opacity:.8}.qjolly-app .slot[data-tier=free]{background:var(--slot-free-tint);border-color:var(--slot-free-edge);color:var(--slot-free-ink)}.qjolly-app .slot[data-tier=free]:hover:not(:disabled),.qjolly-app .slot[data-tier=filling]:hover:not(:disabled){background:var(--accent);color:var(--accent-ink);border-color:var(--accent);transform:translateY(-1px)}.qjolly-app .slot[data-tier=filling]{background:var(--slot-filling-tint);border-color:var(--slot-filling-edge);color:var(--slot-filling-ink)}.qjolly-app .slot[data-tier=full]{background:var(--slot-full-tint);border-color:var(--slot-full-edge);color:var(--slot-full-ink);cursor:default}.qjolly-app .slot[data-tier=full] .slot-time{text-decoration:line-through}.qjolly-app .slot[data-tier=break]{background:var(--slot-break-tint);border-color:var(--slot-break-edge);color:var(--slot-break-ink);cursor:default}.qjolly-app .slot:disabled{cursor:default}.qjolly-app .slot[data-tier=free]:disabled,.qjolly-app .slot[data-tier=filling]:disabled{opacity:.5}.qjolly-app .scan-offers{margin-top:var(--space-md)}.qjolly-app .booking-offer-scroll{max-height:16rem;padding-inline-end:var(--space-xs);overflow-y:auto}.qjolly-app .booking-offer-list{gap:var(--space-sm);margin-top:var(--space-xs);flex-direction:column;display:flex}.qjolly-app .booking-offer-item{justify-content:space-between;align-items:center;gap:var(--space-md);width:100%;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);border:1.5px solid var(--border);background:var(--surface);color:var(--text-primary);font:inherit;text-align:start;cursor:pointer;transition:border-color var(--motion-quick) var(--motion-easing), background var(--motion-quick) var(--motion-easing);display:flex}.qjolly-app .booking-offer-item:hover:not(:disabled):not(.on){border-color:var(--accent)}.qjolly-app .booking-offer-item.on{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, var(--surface))}.qjolly-app .booking-offer-item:disabled{opacity:.6;cursor:not-allowed}.qjolly-app .booking-offer-item .offer-details{flex-direction:column;flex:1;min-width:0;display:flex}.qjolly-app .booking-offer-item .offer-name{overflow-wrap:anywhere;font-weight:600}.qjolly-app .booking-offer-item .offer-terms{font-size:var(--text-small);line-height:var(--leading-small);color:var(--text-secondary)}.qjolly-app .booking-offer-item.on .offer-terms{color:var(--accent)}.qjolly-app .booking-offer-item .offer-why{font-size:var(--text-micro);line-height:var(--leading-micro);color:var(--accent);font-weight:600}.qjolly-app .booking-offer-item .offer-tick{border-radius:var(--radius-full);border:2px solid var(--border);width:1.375rem;height:1.375rem;font-size:var(--text-micro);flex-shrink:0;place-items:center;font-weight:700;line-height:1;display:grid}.qjolly-app .booking-offer-item.on .offer-tick{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.qjolly-app .offer-info{margin:var(--space-xs) 0 0;gap:var(--space-xs);padding:0;list-style:none;display:grid}@media (prefers-reduced-motion:reduce){.qjolly-app .booking-offer-item{transition:none}}.qjolly-app .was{opacity:.7;text-decoration:line-through}.qjolly-app .pay{font-weight:600}.qjolly-app .no-slots{margin-top:var(--space-lg);color:var(--text-secondary);font-size:var(--text-small)}@media (prefers-reduced-motion:reduce){.qjolly-app .slot{transition:none}.qjolly-app .slot:hover:not(:disabled){transform:none}}.qjolly-app .salon-tabs{gap:var(--space-sm);padding-top:var(--space-lg);display:flex}.qjolly-app .qr-section{padding-block:var(--space-xl) var(--space-2xl);gap:var(--space-lg);flex-direction:column;display:flex}.qjolly-app .qr-head h2{margin-bottom:var(--space-sm)}.qjolly-app .qr-new{align-items:flex-end;gap:var(--space-md);flex-wrap:wrap;display:flex}.qjolly-app .qr-new .field{flex:16rem;margin-block:0}.qjolly-app .qr-problem{color:var(--status-pending-tint);font-size:var(--text-small)}.qjolly-app .qr-list{gap:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(min(100%,24rem),1fr));margin:0;padding:0;list-style:none;display:grid}.qjolly-app .qr-card{gap:var(--space-lg);height:100%;padding:var(--space-lg);background:var(--surface);border:1px solid color-mix(in srgb, var(--border) 34%, transparent);border-radius:var(--radius-lg);box-shadow:var(--shadow-low);display:flex}.qjolly-app .qr-card.revoked{opacity:.6;border-style:dashed}.qjolly-app .qr-svg{width:7rem;height:7rem;display:block}.qjolly-app .qr-svg-empty{border-radius:var(--radius-sm);background:#0f0b1214}.qjolly-app .qr-body{gap:var(--space-xs);flex-direction:column;min-width:0;display:flex}.qjolly-app .qr-title{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.qjolly-app .qr-title h3{font-size:var(--text-title)}.qjolly-app .qr-code-readable{font-family:var(--font-mono), ui-monospace, monospace;font-size:var(--text-title);letter-spacing:.12em;color:var(--accent)}.qjolly-app .qr-url{font-size:var(--text-micro);color:var(--text-muted);overflow-wrap:anywhere}.qjolly-app .qr-stats{gap:var(--space-md);margin-top:var(--space-xs);font-size:var(--text-micro);color:var(--text-secondary);font-variant-numeric:tabular-nums;flex-wrap:wrap;display:flex}.qjolly-app .qr-actions{gap:var(--space-sm);margin-top:var(--space-md);flex-wrap:wrap;display:flex}.qjolly-app .qr-actions .btn{padding:var(--space-xs) var(--space-md);font-size:var(--text-small)}@media print{.qjolly-app .bar,.qjolly-app .salon-tabs,.qjolly-app .qr-new,.qjolly-app .qr-actions,.qjolly-app .qr-stats{display:none}.qjolly-app .qr-card{break-inside:avoid;box-shadow:none;border-color:#999}.qjolly-app .qr-svg{width:14rem;height:14rem}}.qjolly-app.scan .scan-hero{position:relative}.qjolly-app .scan-cover{object-fit:cover;width:100%;height:clamp(9rem,28vw,16rem);display:block}.qjolly-app .scan-cover-empty{font-family:var(--font-outfit), system-ui, sans-serif;font-size:var(--text-display);color:var(--accent);background:linear-gradient(150deg, var(--g-hero-from), var(--g-hero-to));place-items:center;display:grid}.qjolly-app .scan-title{padding-block:var(--space-lg)}.qjolly-app .scan-title h1{font-size:var(--text-heading);line-height:var(--leading-heading)}.qjolly-app .scan-main{gap:var(--space-2xl);padding-bottom:var(--space-2xl);flex-direction:column;display:flex}.qjolly-app .scan-section h2{font-size:var(--text-title);margin-bottom:var(--space-md)}.qjolly-app .scan-section h3{font-size:var(--text-body);color:var(--text-secondary);margin-block:var(--space-lg) var(--space-sm)}.qjolly-app .service-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.qjolly-app .service-list li{justify-content:space-between;align-items:baseline;gap:var(--space-md);padding-block:var(--space-sm);border-bottom:1px solid color-mix(in srgb, var(--border) 22%, transparent);display:flex}.qjolly-app .service-name{min-width:0}.qjolly-app .service-meta{align-items:baseline;gap:var(--space-md);white-space:nowrap;font-size:var(--text-small);display:inline-flex}.qjolly-app .service-price{color:var(--accent);font-variant-numeric:tabular-nums;font-weight:600}.qjolly-app .service-thumb{object-fit:cover;border-radius:10px;flex:0 0 44px;align-self:center;width:44px;height:44px}.qjolly-app .service-list li:has(.service-thumb){align-items:center}.qjolly-app .service-tags{margin-top:2px;display:block}.qjolly-app .tag{border:1px solid color-mix(in srgb, var(--border) 60%, transparent);color:var(--muted,inherit);border-radius:999px;margin-inline-end:4px;padding:1px 8px;font-size:.75rem;display:inline-block}.qjolly-app .service-summary{margin:0 0 var(--space-xs);font-size:.9rem}.qjolly-app .staff-list{gap:var(--space-md);text-align:center;grid-template-columns:repeat(auto-fill,minmax(7rem,1fr));margin:0;padding:0;list-style:none;display:grid}.qjolly-app .staff-list li{align-items:center;gap:var(--space-xs);font-size:var(--text-small);flex-direction:column;display:flex}.qjolly-app .staff-photo{object-fit:cover;background:color-mix(in srgb, var(--accent) 14%, var(--surface));border-radius:999px;width:4rem;height:4rem}.qjolly-app .staff-initial{font-family:var(--font-outfit), system-ui, sans-serif;font-size:var(--text-title);color:var(--accent);place-items:center;display:grid}.qjolly-app .staff-name{font-weight:600}.qjolly-app .hours{border-collapse:collapse;width:100%;font-size:var(--text-small);font-variant-numeric:tabular-nums}.qjolly-app .hours th{text-align:left;color:var(--text-secondary);padding-block:var(--space-xs);font-weight:400}.qjolly-app .hours td{text-align:right;padding-block:var(--space-xs)}.qjolly-app .hours tr.closed{color:var(--text-muted)}.qjolly-app .scan-book,.qjolly-app .scan-done,.qjolly-app .scan-blocked{gap:var(--space-sm);flex-direction:column;display:flex}.qjolly-app .pick-list{margin:var(--space-xs) 0 var(--space-sm);padding:0;list-style:none}.qjolly-app .pick-row{justify-content:space-between;align-items:center;gap:var(--space-sm);padding-block:var(--space-sm);display:flex}.qjolly-app .pick-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.qjolly-app .pick-meta{color:var(--text-muted);font-size:var(--text-small)}.qjolly-app .pick-add{padding:var(--space-sm) var(--space-lg);flex:none}.qjolly-app .scan-slots{margin-top:var(--space-sm)}.qjolly-app .scan-signin{margin-top:var(--space-lg);padding-top:var(--space-lg);border-top:1px solid color-mix(in srgb, var(--border) 30%, transparent)}.qjolly-app .scan-whoami{margin-top:var(--space-lg);padding-top:var(--space-lg);border-top:1px solid color-mix(in srgb, var(--border) 30%, transparent);align-items:baseline;gap:var(--space-xs);flex-wrap:wrap;display:flex}.qjolly-app .scan-whoami button{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.qjolly-app .scan-whoami button:disabled{opacity:.5;cursor:default}.qjolly-app .scan-problem{color:var(--status-pending-tint);font-size:var(--text-small)}.qjolly-app .scan-when{font-size:var(--text-title);margin-top:var(--space-md)}.qjolly-app .scan-links{gap:var(--space-sm);margin-top:var(--space-md);flex-wrap:wrap;display:flex}.qjolly-app .scan-pill{bottom:var(--space-sm);z-index:20;justify-content:space-between;align-items:center;gap:var(--space-sm);margin-top:var(--space-lg);padding:var(--space-sm) var(--space-md);border:1px solid color-mix(in srgb, var(--border) 55%, transparent);border-radius:var(--radius-full);background:var(--ground);box-shadow:var(--shadow-low);flex-wrap:wrap;display:flex;position:sticky}.qjolly-app .scan-pill-said{flex-direction:column;gap:2px;min-width:0;display:flex}@media (max-width:32rem){.qjolly-app .scan-pill{border-radius:var(--radius-lg);flex-direction:column;align-items:stretch}.qjolly-app .scan-pill .btn{justify-content:center;width:100%}}.qjolly-app .scan-foot{padding-block:var(--space-xl);border-top:1px solid color-mix(in srgb, var(--border) 25%, transparent)}.qjolly-app .scan-foot a{color:var(--text-secondary);text-decoration:none}.qjolly-app .scan-foot a span{color:var(--accent)}.qjolly-app .remember{align-items:flex-start;gap:var(--space-sm);margin-top:var(--space-md);font-size:var(--text-small);color:var(--text-secondary);cursor:pointer;display:flex}.qjolly-app .remember input{width:1.1rem;height:1.1rem;accent-color:var(--accent);flex:none;margin-top:.15rem}.qjolly-app .remember .muted{display:block}.qjolly-app .share{align-items:center;gap:var(--space-lg);margin-top:var(--space-lg);padding:var(--space-md);border:1px solid color-mix(in srgb, var(--border) 34%, transparent);border-radius:var(--radius-lg);background:var(--surface);display:flex}.qjolly-app .share.big{flex-direction:column;align-items:flex-start}.qjolly-app .share-qr-button{cursor:pointer;font:inherit;border-radius:var(--radius-md);background:0 0;border:0;flex:none;padding:0}.qjolly-app .share-qr{width:4.5rem;height:4.5rem;transition:width var(--motion-quick) var(--motion-easing), height var(--motion-quick) var(--motion-easing);display:block}.qjolly-app .share.big .share-qr{width:min(15rem,60vw);height:min(15rem,60vw)}.qjolly-app .share-body{gap:var(--space-xs);flex-direction:column;min-width:0;display:flex}.qjolly-app .share-lead{font-size:var(--text-small)}.qjolly-app .share.big .share-body .muted{font-family:var(--font-mono), ui-monospace, monospace;font-size:var(--text-micro);overflow-wrap:anywhere}.qjolly-app .share-actions{gap:var(--space-sm);margin-top:var(--space-xs);flex-wrap:wrap;display:flex}.qjolly-app .share-actions .btn{padding:var(--space-xs) var(--space-md);font-size:var(--text-small)}.qjolly-app .lang{align-items:center;gap:var(--space-xs);margin-top:var(--space-sm);display:inline-flex}.qjolly-app .lang-label{font-size:var(--text-small);color:var(--text-secondary)}.qjolly-app .lang-select{appearance:none;padding-block:var(--space-xs);padding-inline:var(--space-md) calc(var(--space-md) + 10px);border:1px solid color-mix(in srgb, var(--border) 55%, transparent);border-radius:var(--radius-full);color:var(--text-primary);font:inherit;font-size:var(--text-small);cursor:pointer;background-color:#0000;background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-repeat:no-repeat;background-size:5px 5px,5px 5px;background-position:right var(--space-md) center, calc(100% - var(--space-md) + 5px) center}.qjolly-app[dir=rtl] .lang-select,[dir=rtl] .qjolly-app .lang-select{background-position:left var(--space-md) center, calc(var(--space-md) + 5px) center}.qjolly-app .lang-select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.qjolly-app .lang-select:disabled{opacity:.6;cursor:progress}.qjolly-app .lang-select option{background:var(--ground);color:var(--text-primary)}.qjolly-app .qr-image{padding:var(--space-sm);border-radius:var(--radius-md);background:#fff;flex:none;align-self:flex-start}@media (prefers-reduced-motion:reduce){.qjolly-app .share-qr{transition:none}}@media print{.qjolly-app .share-actions{display:none}}.qjolly-app .slot.picked{border-color:var(--accent);color:var(--accent);border-width:2px;font-weight:600}.qjolly-app .signin-block{flex-direction:column;display:flex}.qjolly-app .signin-block h2{margin-bottom:var(--space-md)}.qjolly-app .pick-count{align-items:center;gap:var(--space-xs);display:inline-flex}.qjolly-app .pick-step{min-width:2.5rem;padding-inline:0;padding-block:var(--space-sm);justify-content:center}.qjolly-app .pick-step:disabled{opacity:.4;cursor:default}.qjolly-app .party{justify-content:space-between;align-items:center;gap:var(--space-sm);margin-block:var(--space-md);display:flex}.qjolly-app .scan-pay{gap:var(--space-xs);padding:var(--space-md);border:1px solid var(--accent);border-radius:var(--radius-md,14px);flex-direction:column;display:flex}.qjolly-app .scan-paid{color:var(--accent);font-weight:600}
