:root{--font-display: "Manrope", "Noto Sans Armenian", ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-body: "Manrope", "Noto Sans Armenian", ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", monospace;--cloud: #f8f9fb;--paper: #ffffff;--pebble: #f0f3f8;--ink-navy: #0b3558;--slate-gray: #476788;--mist-gray: #a6bbd1;--text-faint: rgba(11, 53, 88, .4);--hairline: #d4e0ed;--hairline-strong: rgba(71, 103, 136, .28);--line: rgba(71, 103, 136, .14);--signal-blue: #006bff;--signal-blue-strong: #2e86ff;--deep-cobalt: #004eba;--tint-bg: #e6f0ff;--action-bg: #006bff;--action-bg-hover: #0059d6;--on-accent: #ffffff;--pine: #1f9d63;--rust: #d1442f;--scrim: rgba(11, 53, 88, .78);--radius-control: 8px;--radius-card: 14px;--radius-card-lg: 16px;--radius-sheet: 24px;--radius-pill: 999px;--space-xs: 6px;--space-sm: 10px;--space-md: 14px;--space-lg: 20px;--space-xl: 24px;--shadow-tint: 71, 103, 136;--shadow-sm: rgba(71, 103, 136, .04) 0px 4px 5px 0px, rgba(71, 103, 136, .03) 0px 4px 10px 0px, rgba(71, 103, 136, .05) 0px 10px 20px 0px;--shadow-card: rgba(71, 103, 136, .04) 0px 4px 5px 0px, rgba(71, 103, 136, .03) 0px 8px 15px 0px, rgba(71, 103, 136, .08) 0px 30px 50px 0px;--shadow-button: rgba(71, 103, 136, .04) 0px 4px 5px 0px, rgba(71, 103, 136, .03) 0px 8px 15px 0px, rgba(71, 103, 136, .06) 0px 15px 30px 0px;color-scheme:light}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--cloud: #0a121c;--paper: #101b28;--pebble: #16232f;--ink-navy: #e8eef7;--slate-gray: #9fb2c9;--mist-gray: #64788f;--text-faint: rgba(232, 238, 247, .42);--hairline: #223140;--hairline-strong: rgba(166, 187, 209, .34);--line: rgba(159, 178, 201, .16);--signal-blue: #2f8cff;--signal-blue-strong: #4d9bff;--deep-cobalt: #7ab8ff;--tint-bg: #123156;--action-bg: #1a6fe0;--action-bg-hover: #0f57ad;--pine: #3ecf8e;--rust: #ff6b52;--scrim: rgba(3, 12, 24, .82);--shadow-tint: 0, 0, 0;--shadow-sm: rgba(0, 0, 0, .25) 0px 4px 5px 0px, rgba(0, 0, 0, .2) 0px 4px 10px 0px, rgba(0, 0, 0, .3) 0px 10px 20px 0px;--shadow-card: rgba(0, 0, 0, .3) 0px 4px 5px 0px, rgba(0, 0, 0, .25) 0px 8px 15px 0px, rgba(0, 0, 0, .45) 0px 30px 50px 0px;--shadow-button: rgba(0, 0, 0, .3) 0px 4px 5px 0px, rgba(0, 0, 0, .25) 0px 8px 15px 0px, rgba(0, 0, 0, .35) 0px 15px 30px 0px;color-scheme:dark}}:root[data-theme=dark]{--cloud: #0a121c;--paper: #101b28;--pebble: #16232f;--ink-navy: #e8eef7;--slate-gray: #9fb2c9;--mist-gray: #64788f;--text-faint: rgba(232, 238, 247, .42);--hairline: #223140;--hairline-strong: rgba(166, 187, 209, .34);--line: rgba(159, 178, 201, .16);--signal-blue: #2f8cff;--signal-blue-strong: #4d9bff;--deep-cobalt: #7ab8ff;--tint-bg: #123156;--action-bg: #1a6fe0;--action-bg-hover: #0f57ad;--pine: #3ecf8e;--rust: #ff6b52;--scrim: rgba(3, 12, 24, .82);--shadow-tint: 0, 0, 0;--shadow-sm: rgba(0, 0, 0, .25) 0px 4px 5px 0px, rgba(0, 0, 0, .2) 0px 4px 10px 0px, rgba(0, 0, 0, .3) 0px 10px 20px 0px;--shadow-card: rgba(0, 0, 0, .3) 0px 4px 5px 0px, rgba(0, 0, 0, .25) 0px 8px 15px 0px, rgba(0, 0, 0, .45) 0px 30px 50px 0px;--shadow-button: rgba(0, 0, 0, .3) 0px 4px 5px 0px, rgba(0, 0, 0, .25) 0px 8px 15px 0px, rgba(0, 0, 0, .35) 0px 15px 30px 0px;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;padding:0}body{position:relative;font-family:var(--font-body);background:var(--cloud);color:var(--ink-navy);-webkit-font-smoothing:antialiased}button,input,textarea{font-family:inherit}button{cursor:pointer}img{max-width:100%;display:block}:focus-visible{outline:2px solid var(--signal-blue);outline-offset:2px}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:var(--header-control-h, 34px);height:var(--header-control-h, 34px);flex-shrink:0;padding:0;border:1px solid var(--hairline);border-radius:8px;background:transparent;color:var(--slate-gray);cursor:pointer;transition:color .15s ease,border-color .15s ease}.theme-toggle:hover{color:var(--signal-blue);border-color:var(--signal-blue)}.theme-toggle svg{width:17px;height:17px}.lang-select{position:relative;display:inline-flex;align-items:center;flex-shrink:0}.lang-select:after{content:"";position:absolute;right:9px;top:50%;width:6px;height:6px;border-right:1.5px solid var(--slate-gray);border-bottom:1.5px solid var(--slate-gray);transform:translateY(-65%) rotate(45deg);pointer-events:none}.lang-select select{appearance:none;-webkit-appearance:none;-moz-appearance:none;box-sizing:border-box;height:var(--header-control-h, 34px);margin:0;font-family:var(--font-sans);font-size:12px;font-weight:600;letter-spacing:.03em;line-height:1.2;color:var(--signal-blue);background:var(--pebble);border:1px solid var(--hairline);border-radius:8px;padding:0 20px 0 10px;cursor:pointer;transition:border-color .15s ease}.lang-select select:hover{border-color:var(--signal-blue)}.lang-select option{color:var(--ink-navy);background:var(--paper)}:root{--surface: #ffffff;--ticket-paper: #ffffff;--ticket-ink: #0b3558;--ticket-accent: var(--action-bg)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--surface: #0d1722;--ticket-paper: #f8f9fb;--shadow-tint: 2, 9, 20;--shadow-sm: rgba(2, 9, 20, .35) 0px 4px 5px 0px, rgba(2, 9, 20, .28) 0px 4px 10px 0px, rgba(2, 9, 20, .4) 0px 10px 20px 0px, inset 0 1px 0 rgba(255, 255, 255, .04);--shadow-card: rgba(2, 9, 20, .38) 0px 4px 5px 0px, rgba(2, 9, 20, .32) 0px 8px 15px 0px, rgba(2, 9, 20, .48) 0px 30px 50px 0px, inset 0 1px 0 rgba(255, 255, 255, .05);--shadow-button: rgba(2, 9, 20, .36) 0px 4px 5px 0px, rgba(2, 9, 20, .3) 0px 8px 15px 0px, rgba(2, 9, 20, .4) 0px 15px 30px 0px, inset 0 1px 0 rgba(255, 255, 255, .12)}}:root[data-theme=dark]{--surface: #0d1722;--ticket-paper: #f8f9fb;--shadow-tint: 2, 9, 20;--shadow-sm: rgba(2, 9, 20, .35) 0px 4px 5px 0px, rgba(2, 9, 20, .28) 0px 4px 10px 0px, rgba(2, 9, 20, .4) 0px 10px 20px 0px, inset 0 1px 0 rgba(255, 255, 255, .04);--shadow-card: rgba(2, 9, 20, .38) 0px 4px 5px 0px, rgba(2, 9, 20, .32) 0px 8px 15px 0px, rgba(2, 9, 20, .48) 0px 30px 50px 0px, inset 0 1px 0 rgba(255, 255, 255, .05);--shadow-button: rgba(2, 9, 20, .36) 0px 4px 5px 0px, rgba(2, 9, 20, .3) 0px 8px 15px 0px, rgba(2, 9, 20, .4) 0px 15px 30px 0px, inset 0 1px 0 rgba(255, 255, 255, .12)}::selection{background:var(--action-bg);color:var(--on-accent)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}.app{min-height:100vh;display:flex;flex-direction:column;position:relative}.header-actions{position:absolute;top:calc(10px + env(safe-area-inset-top));right:max(calc(12px + env(safe-area-inset-right)),calc((100vw - 560px)/2 + 12px));z-index:20;display:flex;align-items:center;gap:8px}.header-actions .theme-toggle{background:var(--paper)}.app-header{display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:560px;width:100%;margin:0 auto;padding:14px calc(126px + env(safe-area-inset-right)) 14px 20px;border-bottom:1px solid var(--hairline)}.app-header h1{font-family:var(--font-display);font-weight:700;font-size:18px;margin:0;letter-spacing:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink-navy)}.thumb-service{width:40px;height:40px;border-radius:8px;object-fit:cover;flex-shrink:0;border:1px solid var(--hairline)}.service-card{border-radius:16px;border:1px solid var(--hairline);background:var(--surface);box-shadow:var(--shadow-sm);overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease;animation:card-in .35s cubic-bezier(.2,.7,.3,1) both}.service-card:nth-child(2){animation-delay:.04s}.service-card:nth-child(3){animation-delay:.08s}.service-card:nth-child(4){animation-delay:.12s}.service-card:nth-child(5){animation-delay:.16s}.service-card:nth-child(n+6){animation-delay:.2s}.service-card.selected{border-color:var(--signal-blue);box-shadow:var(--shadow-sm),0 0 0 1px var(--signal-blue) inset}.service-card-row{display:flex;align-items:stretch}.service-select{display:flex;align-items:center;gap:12px;flex:1;min-width:0;text-align:left;padding:14px;background:none;border:none;color:inherit}.service-select:active{transform:scale(.99)}.service-card.blocked .service-select{opacity:.45;cursor:not-allowed}.service-card.blocked .service-select:active{transform:none}.service-card.blocked .card-meta{white-space:normal}.expand-toggle{display:flex;align-items:center;justify-content:center;width:44px;flex-shrink:0;background:none;border:none;border-left:1px solid var(--hairline);color:var(--text-faint);transition:transform .1s ease}.expand-toggle:active{transform:scale(.9)}.expand-toggle svg{transition:transform .2s ease}.expand-toggle.open{color:var(--signal-blue)}.expand-toggle.open svg{transform:rotate(180deg)}.service-expand{padding:12px 14px 16px;border-top:1px solid var(--hairline);display:flex;flex-direction:column;gap:10px;animation:expand-in .18s ease both}@keyframes expand-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.service-expand-photo{width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:12px}.service-expand-desc{margin:0;font-size:13.5px;line-height:1.55;color:var(--slate-gray)}.stage{--stage-pad-x: 20px;--stage-pad-top: 18px;flex:1;display:flex;flex-direction:column;padding:var(--stage-pad-top) var(--stage-pad-x) var(--stage-pad-top);max-width:560px;width:100%;margin:0 auto;position:relative}.stage-home{background:var(--surface)}.stage-home .screen{display:flex;flex-direction:column}.stage-home .home-sheet{flex:1;min-height:0}.app-footer{margin-top:24px;padding-top:16px;border-top:1px solid var(--hairline);text-align:center}.app-footer-link{display:inline-block;font-family:var(--font-body);font-size:12px;color:var(--text-faint);text-decoration:none}.app-footer-link:active{color:var(--slate-gray)}.app-footer-legal{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 16px;margin-top:6px}.step-title{font-family:var(--font-display);font-weight:700;font-size:24px;line-height:1.25;margin:4px 0 18px;letter-spacing:normal;color:var(--ink-navy)}.numeral{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.progress{display:flex;gap:6px;padding:16px 20px 0;max-width:560px;width:100%;margin:0 auto}.progress-mark{height:3px;flex:1;border-radius:2px;background:var(--hairline-strong);transition:background .25s ease}.progress-mark.done{background:var(--action-bg)}.progress-mark.current{background:var(--action-bg);opacity:.55}.hint{color:var(--slate-gray);text-align:center;padding:48px 20px;font-size:14.5px;line-height:1.5}.hint.error{color:var(--rust)}.screen{flex:1}.screen.centered{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:70vh;text-align:center;gap:10px}.stamp-mark{width:64px;height:64px;border-radius:50%;border:2.5px solid var(--signal-blue);color:var(--signal-blue);display:flex;align-items:center;justify-content:center;margin-bottom:6px;animation:stamp-hit .4s cubic-bezier(.16,1,.3,1) both}@keyframes stamp-hit{0%{opacity:0;transform:scale(1.5)}to{opacity:1;transform:scale(1)}}.home-greeting{color:var(--slate-gray);font-size:14.5px;margin:4px 0 18px}.shop-links-block{margin:6px 0 0}.shop-location-name{margin:0 0 4px;color:var(--slate-gray);font-size:13px;font-weight:500}.shop-links-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:0}.shop-map-link{display:inline-block;margin:0;padding:0;border:none;background:none;color:var(--signal-blue);font-size:14px;font-weight:600;cursor:pointer}.shop-change-branch{margin-left:auto}.shop-hero{position:relative;margin:calc(-1 * var(--stage-pad-top)) calc(-1 * var(--stage-pad-x)) 0;aspect-ratio:16 / 10;overflow:hidden;background:var(--surface)}.shop-hero-photo{width:100%;height:100%;object-fit:cover}.shop-hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,var(--scrim) 0%,rgba(11,53,88,.16) 55%,transparent 85%)}.shop-hero-title-row{position:absolute;left:var(--stage-pad-x);right:var(--stage-pad-x);bottom:36px;display:flex;align-items:center;gap:10px}.shop-hero-logo{width:40px;height:40px;border-radius:50%;object-fit:cover;flex-shrink:0;border:2px solid rgba(255,255,255,.9);box-shadow:0 2px 10px #0209144d}.shop-hero-name{margin:0;font-family:var(--font-display);font-weight:700;font-size:24px;line-height:1.2;color:#fff;text-shadow:0 1px 10px rgba(2,9,20,.4)}.home-sheet{position:relative;z-index:1;margin:0 calc(-1 * var(--stage-pad-x));padding:20px var(--stage-pad-x) 24px;background:var(--surface);border-radius:24px 24px 0 0;box-shadow:0 -8px 24px -16px rgba(var(--shadow-tint),.16)}.shop-hero+.home-sheet{margin-top:-24px}.stories-row{display:flex;gap:14px;overflow-x:auto;margin:0 calc(-1 * var(--stage-pad-x));padding:14px var(--stage-pad-x) 4px;scrollbar-width:none}.stories-row::-webkit-scrollbar{display:none}.story-circle{flex-shrink:0;width:64px;height:64px;padding:3px;border:none;border-radius:50%;background:linear-gradient(135deg,var(--signal-blue-strong),var(--action-bg))}.story-circle-skeleton{background:linear-gradient(90deg,var(--hairline) 25%,var(--hairline-strong) 50%,var(--hairline) 75%);background-size:200% 100%;animation:story-shimmer 1.4s ease-in-out infinite}.story-circle-skeleton:nth-child(2){animation-delay:.1s}.story-circle-skeleton:nth-child(3){animation-delay:.2s}.story-circle-skeleton:nth-child(4){animation-delay:.3s}.story-circle-skeleton:nth-child(5){animation-delay:.4s}@keyframes story-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.story-thumb{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover;border:2px solid var(--surface)}.story-viewer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;background:#000}.story-viewer-photo{width:100%;height:100%;object-fit:contain}.story-viewer-progress{position:absolute;top:calc(10px + env(safe-area-inset-top));left:10px;right:10px;z-index:2;display:flex;gap:4px}.story-viewer-bar{flex:1;height:3px;border-radius:2px;background:#ffffff4d}.story-viewer-bar.seen{background:#fff}.story-viewer-close{position:absolute;top:calc(20px + env(safe-area-inset-top));right:14px;z-index:2;width:36px;height:36px;border:none;border-radius:50%;background:#00000073;color:#fff;font-size:22px;line-height:1;display:flex;align-items:center;justify-content:center}.story-viewer-text{position:absolute;left:0;right:0;bottom:calc(28px + env(safe-area-inset-bottom));z-index:2;margin:0;padding:0 28px;text-align:center;color:#fff;font-family:var(--font-body);font-size:15px;line-height:1.5;text-shadow:0 1px 6px rgba(0,0,0,.6)}.story-viewer-tap-zone{position:absolute;top:0;bottom:0;z-index:1;width:35%;border:none;background:none;padding:0}.story-viewer-tap-zone.left{left:0}.story-viewer-tap-zone.right{right:0}.card-list{display:flex;flex-direction:column;gap:10px}.card{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:14px;border-radius:16px;border:1px solid var(--hairline);background:var(--paper);box-shadow:var(--shadow-sm);color:inherit;transition:border-color .15s ease,transform .1s ease,box-shadow .15s ease;animation:card-in .35s cubic-bezier(.2,.7,.3,1) both}.card:active{transform:scale(.99)}.card:nth-child(2){animation-delay:.04s}.card:nth-child(3){animation-delay:.08s}.card:nth-child(4){animation-delay:.12s}.card:nth-child(5){animation-delay:.16s}.card:nth-child(n+6){animation-delay:.2s}@keyframes card-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.card.selected{border-color:var(--signal-blue);box-shadow:var(--shadow-sm),0 0 0 1px var(--signal-blue) inset}.card:disabled{opacity:.55}.avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;flex-shrink:0;border:1px solid var(--hairline)}.card-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;flex-shrink:0;background:color-mix(in srgb,var(--action-bg) 12%,var(--surface));color:var(--signal-blue)}.avatar-fallback{width:44px;height:44px;border-radius:50%;flex-shrink:0;background:var(--cloud);border:1px solid var(--hairline);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:16px;color:var(--signal-blue)}.card.selected .avatar,.card.selected .avatar-fallback{border-color:var(--signal-blue)}.avatar-lg{width:76px;height:76px;font-size:24px}.card-master{padding:12px;gap:14px}.card-title-lg{font-size:17px}.card-random-master .card-title-lg,.card-random-master .card-meta{white-space:normal}.card-body{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.card-title{font-family:var(--font-display);font-weight:700;font-size:15.5px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink-navy)}.card-meta{font-size:12.5px;color:var(--slate-gray);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-price{font-family:var(--font-mono);font-size:13px;font-weight:600;color:var(--slate-gray);flex-shrink:0;text-align:right}.punch{width:22px;height:22px;border-radius:50%;border:1.5px solid var(--hairline-strong);flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:border-color .15s ease,background .15s ease}.punch.checked{border-color:var(--action-bg);background:var(--action-bg)}.punch.checked:after{content:"";width:5px;height:9px;border-right:2px solid var(--on-accent);border-bottom:2px solid var(--on-accent);transform:rotate(45deg) translate(-1px,-1px)}.nearest-button{display:block;width:100%;padding:13px;margin-bottom:16px;border-radius:8px;border:none;background:var(--action-bg);color:var(--on-accent);font-family:var(--font-body);font-weight:600;font-size:14.5px;box-shadow:var(--shadow-button);transition:transform .1s ease}.nearest-button:active{transform:scale(.98)}.nearest-button:disabled{opacity:.65;box-shadow:none}.nearest-slots-section{margin-bottom:16px}.hint.nearest-hint{padding:0;margin:0 0 10px}.hint.error.nearest-hint{margin-bottom:16px}.nearest-slots-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:8px}.nearest-slot-chip{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 6px;border-radius:8px;border:1px solid var(--hairline);background:var(--surface);color:var(--ink-navy);text-align:center;transition:border-color .15s ease,transform .1s ease}.nearest-slot-chip:active{transform:scale(.96)}.nearest-slot-date{font-size:11.5px;color:var(--slate-gray)}.nearest-slot-date:first-letter{text-transform:uppercase}.nearest-slot-time{font-size:15px;font-weight:700}.month-calendar{border:1px solid var(--hairline);border-radius:16px;padding:14px;background:var(--surface);box-shadow:var(--shadow-sm)}.month-calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.month-label{font-family:var(--font-display);font-weight:700;font-size:15px;text-transform:capitalize;color:var(--ink-navy)}.month-nav-button{width:32px;height:32px;border-radius:50%;border:1px solid var(--hairline-strong);background:var(--paper);color:var(--ink-navy);font-size:16px;line-height:1;transition:transform .1s ease}.month-nav-button:active{transform:scale(.9)}.month-nav-button:disabled{opacity:.35}.month-weekdays,.month-grid{display:grid;grid-template-columns:repeat(7,1fr)}.month-weekdays{margin-bottom:6px}.month-weekday{text-align:center;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint)}.month-grid{gap:4px}.month-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--ink-navy);font-size:14px;transition:background .15s ease,color .15s ease,transform .1s ease}.month-day:active:not(:disabled){transform:scale(.9)}.month-day.empty{visibility:hidden}.month-day:disabled,.month-day.unavailable{color:var(--text-faint);opacity:.5}.month-day.today{border-color:var(--hairline-strong)}.month-day.selected{background:var(--action-bg);color:var(--on-accent);font-weight:700}.month-day.selected:disabled,.month-day.selected.unavailable{color:var(--on-accent);opacity:1}.time-section{margin-top:20px}.time-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px}.time-chip{font-family:var(--font-mono);font-size:14px;font-weight:600;padding:11px 4px;border-radius:8px;border:1px solid var(--hairline);background:var(--surface);color:var(--ink-navy);text-align:center;transition:border-color .15s ease,transform .1s ease}.time-chip:active:not(:disabled){transform:scale(.94)}.time-chip:disabled{color:var(--text-faint);background:transparent;border-style:dashed;text-decoration:line-through;cursor:default}.field-hint{color:var(--slate-gray);font-size:13.5px;line-height:1.5;margin:0 0 16px;text-align:left}.textarea{width:100%;min-height:140px;padding:14px;border-radius:8px;border:1px solid var(--hairline-strong);background:var(--surface);color:var(--ink-navy);font-family:var(--font-body);font-size:15px;line-height:1.5;resize:vertical}.textarea:focus{outline:none;border-color:var(--signal-blue)}.textarea::placeholder{color:var(--text-faint)}.faq-list{display:flex;flex-direction:column;border-top:1px solid var(--hairline)}.faq-item{border-bottom:1px solid var(--hairline)}.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;list-style:none;cursor:pointer;font-family:var(--font-display);font-weight:600;font-size:15px;line-height:1.35;color:var(--ink-navy)}.faq-item summary::-webkit-details-marker{display:none}.faq-chevron{flex-shrink:0;color:var(--text-faint);transition:transform .2s ease}.faq-item[open] .faq-chevron{transform:rotate(90deg)}.faq-item p{margin:0;padding:0 28px 16px 0;font-size:14.5px;line-height:1.5;color:var(--slate-gray)}.link-button{background:none;border:none;color:var(--signal-blue);font-family:var(--font-body);font-size:13.5px;font-weight:600;padding:4px 0;transition:transform .1s ease}.link-button:active{transform:scale(.96)}.fallback-back-button{display:inline-block;margin-bottom:14px}.fallback-main-bar{position:sticky;bottom:0;padding:20px 0 calc(12px + env(safe-area-inset-bottom));background:var(--cloud)}.guest-form .fallback-main-bar{background:var(--surface)}.fallback-main-button{display:block;width:100%;max-width:520px;margin:0 auto;padding:14px;border-radius:8px;border:none;background:var(--action-bg);color:var(--on-accent);font-family:var(--font-body);font-weight:600;font-size:15px;box-shadow:var(--shadow-button);transition:transform .1s ease}.fallback-main-button:active{transform:scale(.98)}.fallback-main-button:disabled{opacity:.65;box-shadow:none}.login-prompt{margin-top:14px;display:flex;flex-direction:column;align-items:center;text-align:center}.login-prompt-text{color:var(--slate-gray);font-size:13.5px;line-height:1.5;margin:0}.appointments-login-gate{display:flex;flex-direction:column;justify-content:center;min-height:55vh}.telegram-link-button{display:inline-block;margin-top:10px;padding:10px 20px;border-radius:8px;background:var(--action-bg);color:var(--on-accent);font-family:var(--font-body);font-weight:600;font-size:14px;text-decoration:none}.guest-form{display:flex;flex-direction:column;gap:10px;margin-top:14px;padding:16px;border-radius:16px;border:1px solid var(--hairline);background:var(--surface);box-shadow:var(--shadow-sm)}.field-input{width:100%;padding:12px 14px;border-radius:8px;border:1px solid var(--hairline-strong);background:var(--cloud);color:var(--ink-navy);font-family:var(--font-body);font-size:15px}.field-input:focus{outline:none;border-color:var(--signal-blue)}.field-input::placeholder{color:var(--text-faint)}.cancel-button{border:1px solid var(--hairline);background:none;color:var(--rust);font-size:12.5px;font-weight:600;padding:7px 12px;border-radius:8px;flex-shrink:0;transition:transform .1s ease}.cancel-button:active{transform:scale(.95)}.ticket-wrap{padding:6px 4px 0}.ticket{position:relative;background:var(--ticket-paper);color:var(--ticket-ink);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-card);animation:ticket-stamp .5s cubic-bezier(.16,1,.3,1) both}@keyframes ticket-stamp{0%{opacity:0;transform:scale(.95) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}.ticket-main{padding:22px 22px 18px;display:flex;flex-direction:column;gap:14px}.ticket-brand{font-family:var(--font-mono);font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--ticket-accent)}.ticket-when{display:flex;flex-direction:column;gap:2px}.ticket-when-date{margin:0;font-family:var(--font-display);font-size:22px;font-weight:700;line-height:1.2}.ticket-when-time{margin:0;font-size:26px;font-weight:700;line-height:1.2}.ticket-when-arrow{color:color-mix(in srgb,var(--ticket-ink) 45%,transparent)}.ticket-location{margin:4px 0 0;font-size:13px;line-height:1.4;color:color-mix(in srgb,var(--ticket-ink) 60%,transparent)}.ticket-field-row{display:flex;gap:18px}.ticket-field{display:flex;flex-direction:column;gap:3px;min-width:0}.ticket-field-row .ticket-field:first-child{flex:0 1 auto;max-width:50%}.ticket-field-row .ticket-field:last-child{flex:1}.ticket-field-label{font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:color-mix(in srgb,var(--ticket-ink) 50%,transparent)}.ticket-field-value{font-family:var(--font-display);font-weight:700;font-size:16px;line-height:1.3;overflow-wrap:anywhere}.ticket-seam{position:relative;border-top:1.5px dashed var(--hairline-strong);margin:0 -22px}.ticket-seam:before,.ticket-seam:after{content:"";position:absolute;top:50%;width:22px;height:22px;border-radius:50%;background:var(--cloud);transform:translateY(-50%);transition:background .3s ease}.ticket-seam:before{left:-11px}.ticket-seam:after{right:-11px}.ticket-stub{padding:16px 22px 20px;display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:10px 16px}.ticket-total-label{font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:color-mix(in srgb,var(--ticket-ink) 50%,transparent);margin:0 0 2px}.ticket-total-value{margin:0;font-family:var(--font-mono);font-size:24px;font-weight:700;line-height:1.2;white-space:nowrap}.ticket-duration{flex-shrink:0;padding:5px 11px;border-radius:999px;background:color-mix(in srgb,var(--ticket-ink) 8%,transparent);color:var(--ticket-ink);font-size:12px;font-weight:700;white-space:nowrap}.ticket-footer-note{text-align:center;padding:14px 20px 0;font-size:12.5px;color:var(--slate-gray);line-height:1.5}.repeat{margin-top:20px}.repeat-label{font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.04em;margin:0 0 10px;color:var(--slate-gray)}.repeat-options{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.repeat-chip{padding:10px 8px;border-radius:8px;border:1px solid var(--hairline);background:var(--surface);color:var(--ink-navy);font-size:13.5px;font-weight:600;transition:border-color .15s ease,transform .1s ease}.repeat-chip:active{transform:scale(.96)}.repeat-chip.selected{background:var(--action-bg);border-color:var(--action-bg);color:var(--on-accent)}.repeat-count{display:flex;align-items:center;justify-content:space-between;margin-top:12px;padding:8px 8px 8px 14px;border-radius:8px;border:1px solid var(--hairline);background:var(--surface)}.repeat-count-label{font-size:14px;font-weight:600;color:var(--ink-navy)}.repeat-stepper{display:flex;align-items:center;gap:12px}.repeat-stepper button{width:36px;height:36px;border-radius:50%;border:1px solid var(--hairline);background:none;color:var(--ink-navy);font-size:18px;line-height:1;transition:transform .1s ease}.repeat-stepper button:active{transform:scale(.92)}.repeat-stepper button:disabled{opacity:.4}.repeat-stepper .numeral{font-family:var(--font-mono);font-weight:700;font-size:16px;min-width:2ch;text-align:center;color:var(--ink-navy)}.repeat-dates{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.repeat-dates li{font-size:12.5px;padding:5px 10px;border-radius:999px;border:1px solid var(--hairline);background:var(--surface);color:var(--ink-navy)}.repeat-dates li.unavailable{color:var(--text-faint);text-decoration:line-through}.repeat-date-flag{display:inline-block;margin-left:5px;color:var(--rust);text-decoration:none}.repeat-note{margin:8px 0 0;font-size:12.5px;color:var(--slate-gray)}.section-title{font-family:var(--font-body);font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.04em;margin:22px 0 10px;color:var(--slate-gray)}.section-title:first-of-type{margin-top:4px}.stub-list{display:flex;flex-direction:column;gap:14px}.stub-item{display:flex;flex-direction:column;gap:6px;animation:card-in .35s cubic-bezier(.2,.7,.3,1) both}.stub-item:nth-child(2){animation-delay:.04s}.stub-item:nth-child(3){animation-delay:.08s}.stub-item:nth-child(4){animation-delay:.12s}.stub-item:nth-child(5){animation-delay:.16s}.stub-item:nth-child(n+6){animation-delay:.2s}.stub-actions{display:flex;justify-content:flex-end;gap:8px}.stub{background:var(--ticket-paper);color:var(--ticket-ink);border-radius:16px;padding:14px 16px;display:flex;align-items:center;gap:12px;position:relative;box-shadow:var(--shadow-sm)}.stub-notch{position:absolute;top:50%;width:16px;height:16px;border-radius:50%;background:var(--cloud);transform:translateY(-50%);right:-8px}.stub-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.stub-title{font-family:var(--font-display);font-weight:700;font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stub-meta{font-size:12px;color:color-mix(in srgb,var(--ticket-ink) 55%,transparent)}.stub-time{font-family:var(--font-mono);font-weight:700;font-size:15px;text-align:right;flex-shrink:0}.stub.cancelled{opacity:.5}.stub-series{display:inline-flex;align-items:center;gap:3px;margin-left:6px;white-space:nowrap}.stub-actions.series-confirm{flex-wrap:wrap;align-items:center}.series-confirm-text{flex-basis:100%;text-align:right;font-size:12.5px;color:var(--slate-gray)}.hint.series-notice{padding:0 0 12px}.profile-skip{display:block;margin:4px auto 0}.visits-card{margin:4px 0 6px;padding:14px 16px;border-radius:14px;background:var(--surface);border:1px solid var(--hairline)}.visits-card-title{margin:0 0 10px}.visits-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;margin:0}.visits-card-cell{min-width:0}.visits-card-cell dt{font-size:12px;color:var(--slate-gray)}.visits-card-cell dd{margin:2px 0 0;font-weight:700;font-size:15px;color:var(--ink-navy);overflow-wrap:anywhere}.visits-card-cell:first-child dd{font-family:var(--font-display);font-size:22px}
