.dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000047;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px;animation:dialog-overlay-in .2s ease-out}@media (prefers-reduced-motion: reduce){.dialog-overlay{animation:none}}@keyframes dialog-overlay-in{0%{opacity:0}to{opacity:1}}.dialog{background:#fffffff0;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border-radius:22px;box-shadow:0 24px 60px #0000002e;max-width:340px;width:100%;padding:22px 20px 16px;animation:dialog-in .32s cubic-bezier(.32,.72,0,1)}@media (prefers-reduced-motion: reduce){.dialog{animation:dialog-fade-in .15s ease-out}}@keyframes dialog-in{0%{opacity:0;transform:scale(.94) translateY(8px)}to{opacity:1;transform:none}}@keyframes dialog-fade-in{0%{opacity:0}to{opacity:1}}.dialog__title{font-size:17px;font-weight:700;letter-spacing:-.03em;margin:0 0 6px;text-align:center;color:var(--text)}.dialog__description{font-size:14px;color:var(--text-2);margin:0 0 18px;line-height:1.4;text-align:center}.dialog__content{display:flex;flex-direction:column;gap:12px}.dialog--destructive .dialog__title{color:#ff3b30}@media (max-width: 500px){.dialog{max-width:none;margin:0 8px}}.alert-dialog__content{display:flex;flex-direction:column;align-items:center;gap:20px}.alert-dialog__icon{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:600}.alert-dialog__icon--success{background:#34c7591a;color:#34c759}.alert-dialog__icon--error{background:#ff3b301a;color:#ff3b30}.alert-dialog__icon--warning{background:#ff95001a;color:#ff9500}.alert-dialog__icon--info{background:#007aff1a;color:#007aff}.alert-dialog__actions{display:flex;flex-direction:column;gap:8px;width:100%}.alert-dialog__button{min-height:44px;padding:0 16px;border-radius:12px;font-size:16px;font-weight:600;letter-spacing:-.02em;border:none;cursor:pointer;width:100%;transition:transform .18s var(--ease-ios),opacity .18s ease}.alert-dialog__button:active{transform:scale(.97)}.alert-dialog__button--action{background:#e5e5ea;color:var(--text)}.alert-dialog__button--primary{background:var(--primary);color:#fff}.alert-dialog__button--error{background:#ff3b30;color:#fff}.loading-dialog__content{display:flex;flex-direction:column;align-items:center;gap:16px;padding:20px}.loading-dialog__spinner{width:48px;height:48px;border:4px solid rgba(0,122,255,.2);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}@media (prefers-reduced-motion: reduce){.loading-dialog__spinner{animation:none}}.loading-dialog__message{font-size:16px;color:var(--text);text-align:center;margin:0}.confirm-dialog__actions{display:flex;gap:12px;margin-top:20px}.confirm-dialog__button{flex:1;min-height:44px;padding:0 16px;border-radius:12px;font-size:16px;font-weight:600;letter-spacing:-.02em;border:none;cursor:pointer;transition:transform .18s var(--ease-ios),opacity .18s ease;display:flex;align-items:center;justify-content:center;gap:8px}.confirm-dialog__button:active:not(:disabled){transform:scale(.97)}.confirm-dialog__button:disabled{opacity:.4;cursor:default}.confirm-dialog__button--cancel{background:#e5e5ea;color:var(--text)}.confirm-dialog__button--confirm{background:var(--primary);color:#fff}.confirm-dialog__button--destructive{background:#ff3b30;color:#fff}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.spinner{animation:none}}.chat-thread{display:flex;flex-direction:column;height:100%}.chat-thread__header{padding:10px 12px;background:#f9f9f9d1;-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border-bottom:.5px solid var(--separator);display:flex;align-items:center;gap:10px}.chat-thread__back{width:36px;height:36px;flex-shrink:0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--primary-soft);color:var(--primary);transition:transform .18s var(--ease-ios),background .18s var(--ease-ios)}.chat-thread__back:active{transform:scale(.94);background:color-mix(in srgb,var(--primary) 18%,transparent)}.chat-thread__title{min-width:0;flex:1}.chat-thread__name{font-size:16px;font-weight:600;letter-spacing:-.02em;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-thread__subtitle{font-size:12px;color:var(--text-3);margin-top:1px}.chat-thread__messages{flex:1;overflow:auto;padding:16px;display:flex;flex-direction:column;gap:8px}.chat-bubble{max-width:75%;padding:10px 14px;border-radius:18px;font-size:15px;line-height:1.4;text-align:left}.chat-bubble--mine{align-self:flex-end;background:var(--primary);color:#fff}.chat-bubble--theirs{align-self:flex-start;background:#e9e9eb;color:var(--text)}.chat-bubble__file{display:inline-flex;align-items:center;gap:6px;margin-top:6px;font-size:13px;font-weight:600;text-decoration:underline}.chat-bubble__read{display:block;margin-top:4px;font-size:11px;opacity:.75}.chat-thread__form{padding:8px 10px calc(8px + env(safe-area-inset-bottom));background:#f9f9f9e6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-top:.5px solid var(--separator);display:flex;gap:8px;align-items:center}.chat-thread__form input[type=text]{flex:1;padding:10px 16px;border-radius:20px;border:none;background:var(--bg);font-size:16px}.chat-thread__attach,.chat-thread__send{width:40px;height:40px;border-radius:50%;background:var(--primary-soft);color:var(--primary);font-size:18px}.chat-thread__send{background:var(--primary);color:#fff}.chat-thread__send:disabled,.chat-thread__attach:disabled{opacity:.5}@media (prefers-reduced-motion: reduce){.chat-bubble,.chat-thread__attach,.chat-thread__send{transition:none}}.appt-page{padding:12px 16px 24px}.appt-page__title{margin:8px 4px}.appt-page__policy{font-size:13px;color:var(--text-3);line-height:1.45;margin-bottom:16px}.appt-actions{display:flex;flex-direction:column;gap:6px;align-items:stretch}.appt-actions button{min-height:30px;padding:0 10px;border-radius:8px;font-size:13px;font-weight:600;letter-spacing:-.01em}.doctor-appt-row:hover{background:#00000005}.doctor-appt-row:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.doctor-appt-topics{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.doctor-appt-topics .badge{font-size:11px;font-weight:600;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doctor-appt-actions{display:flex;flex-wrap:nowrap;gap:6px;align-items:stretch;width:100%;margin-top:10px}.doctor-appt-detail{display:flex;flex-direction:column;gap:12px;text-align:left}.doctor-appt-detail__card{background:var(--fill);border-radius:14px;padding:12px 14px}.doctor-appt-detail__name{font-size:16px;font-weight:600;margin-top:2px}.doctor-appt-detail__meta{font-size:13px;color:var(--text-3);margin-top:4px}.doctor-appt-detail__label{font-size:12px;font-weight:600;color:var(--text-3);letter-spacing:-.01em}.doctor-appt-detail__row{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px}.doctor-appt-detail__summary{background:var(--fill);border-radius:14px;padding:12px 14px}.doctor-appt-detail__summary p{margin:6px 0 0;font-size:14px;line-height:1.45;color:var(--text)}.doctor-appt-detail__summary--empty p{color:var(--text-3)}.doctor-appt-actions button{flex:1 1 0;min-width:0;min-height:34px;padding:0 4px;border-radius:8px;font-size:12px;font-weight:600;letter-spacing:-.02em;white-space:nowrap;text-align:center;overflow:hidden;text-overflow:ellipsis}@media (min-width: 840px){.doctor-appt-actions{gap:8px}.doctor-appt-actions button{flex:1 1 0;min-height:36px;padding:0 10px;font-size:13px;letter-spacing:-.01em}}.appt-actions__cancel{color:var(--danger);background:var(--danger-soft)}.appt-actions__reschedule{color:var(--primary);background:var(--primary-soft)}.reschedule-dates{display:flex;gap:8px;overflow-x:auto;margin-bottom:16px}.reschedule-dates button{padding:10px 14px;border-radius:12px;background:var(--card);color:var(--text);font-size:13px;font-weight:500;flex-shrink:0;box-shadow:var(--shadow-sm)}.reschedule-dates button.is-active{background:var(--primary);color:#fff}.reschedule-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px}.reschedule-slots button{height:42px;border-radius:10px;background:var(--card);color:var(--text);font-size:14px;font-weight:600;border:1.5px solid var(--separator)}.reschedule-slots button.is-active{background:var(--primary);color:#fff;border-color:var(--primary)}.field-error{color:#ff3b30;font-size:13px;margin-bottom:8px}@media (prefers-reduced-motion: reduce){.appt-page button,.reschedule-dates button,.reschedule-slots button{transition:none}}@media (max-width: 500px){.reschedule-slots{grid-template-columns:repeat(2,1fr)}}.schedule-page--immersive{min-height:calc(100dvh - 120px);display:flex;flex-direction:column;padding:0!important}.schedule-page--immersive .chat-thread,.schedule-page--immersive [data-testid=doctor-reschedule],.schedule-page--immersive .video-call{flex:1;min-height:calc(100dvh - 120px)}.schedule-fold{margin-bottom:16px;overflow:hidden}.schedule-fold__toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;text-align:left;color:var(--text)}.schedule-fold__title{display:block;font-size:17px;font-weight:600;letter-spacing:-.02em}.schedule-fold__meta{display:block;margin-top:2px;font-size:13px;font-weight:500;color:var(--text-3)}.schedule-fold__chevron{flex-shrink:0;color:var(--text-3);transition:transform .22s var(--ease-ios)}.schedule-fold__chevron.is-open{transform:rotate(180deg)}.schedule-fold__body{padding:0 16px 8px}@media (prefers-reduced-motion: reduce){.schedule-page button,.schedule-page input,.schedule-page select{transition:none}}.ios-picker{position:relative;display:inline-flex;vertical-align:middle}.ios-picker.is-block,.ios-picker__face.is-block{width:100%}.ios-picker__face{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:space-between;gap:8px;min-width:132px;height:36px;padding:0 12px;border-radius:10px;background:#e9e9eb;color:var(--text);font-size:15px;font-weight:500;letter-spacing:-.02em;transition:transform .18s var(--ease-ios),background .18s ease}.ios-picker__face--time{min-width:84px;justify-content:center;font-variant-numeric:tabular-nums}.ios-picker__face--date{min-width:148px}.ios-picker__face:active{transform:scale(.97)}.ios-picker__chevron{color:var(--text-3);flex-shrink:0}.ios-picker__native{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;margin:0;padding:0;border:0;opacity:.02;pointer-events:none;color:transparent;background:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none}.ios-picker__native::-webkit-calendar-picker-indicator{display:none;opacity:0}.ios-popover{position:fixed;z-index:80;padding:6px;border-radius:16px;background:#fffffff0;backdrop-filter:saturate(180%) blur(24px);-webkit-backdrop-filter:saturate(180%) blur(24px);box-shadow:0 18px 50px #1c1c282e,0 0 0 .5px #3c3c431f;animation:ios-pop .22s var(--ease-ios)}.ios-popover--menu{padding:4px;max-height:280px;overflow:auto}.ios-menu{min-width:180px}.ios-menu button{width:100%;min-height:40px;padding:8px 12px;border-radius:10px;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;font-size:16px;letter-spacing:-.02em;color:var(--text)}.ios-menu button.is-active{background:var(--primary-soft);color:var(--primary);font-weight:600}.ios-time{display:flex;align-items:stretch;gap:4px;height:196px}.ios-time__col{width:72px;overflow:auto;scroll-snap-type:y mandatory;scrollbar-width:none;padding:78px 0}.ios-time__col::-webkit-scrollbar{display:none}.ios-time__col button{display:flex;align-items:center;justify-content:center;width:100%;height:36px;scroll-snap-align:center;border-radius:9px;font-size:20px;font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:-.03em;color:var(--text)}.ios-time__col button.is-active{background:var(--primary);color:#fff}.ios-time__colon{align-self:center;font-size:22px;font-weight:600;color:var(--text-3)}.ios-popover__done{width:100%;height:36px;margin-top:4px;border-radius:10px;background:var(--primary-soft);color:var(--primary);font-size:16px;font-weight:600}.ios-popover--date{width:292px;padding:10px}.ios-cal__head{display:grid;grid-template-columns:32px 1fr 32px;align-items:center;margin-bottom:8px}.ios-cal__head>button,.ios-cal__title{height:32px;border-radius:8px;color:var(--primary);font-size:20px;font-weight:500}.ios-cal__nav{display:inline-flex;align-items:center;justify-content:center;width:32px;color:var(--primary);border-radius:8px}.ios-cal__nav:active{background:var(--fill)}.ios-cal__title{font-size:16px;font-weight:600;letter-spacing:-.02em;color:var(--text)}.ios-cal__week,.ios-cal__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.ios-cal__week span{height:24px;text-align:center;font-size:11px;font-weight:600;color:var(--text-3)}.ios-cal__grid button{height:34px;border-radius:999px;font-size:15px;font-weight:500;color:var(--text)}.ios-cal__grid button.is-today{box-shadow:inset 0 0 0 1px var(--primary)}.ios-cal__grid button.is-active{background:var(--primary);color:#fff;box-shadow:none}.ios-cal__years{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;max-height:240px;overflow:auto;scrollbar-width:none}.ios-cal__years::-webkit-scrollbar{display:none}.ios-cal__years button{height:36px;border-radius:10px;font-size:15px;font-weight:500}.ios-cal__years button.is-active{background:var(--primary);color:#fff}.desk{flex:1;min-height:0;display:flex;gap:16px;padding:16px}.desk-side{width:252px;flex:0 0 252px;min-height:0;display:flex;flex-direction:column;padding:18px 12px 12px;border-radius:22px;background:#ffffffc7;border:1px solid rgba(255,255,255,.85);box-shadow:0 18px 50px #14285014}.desk-brand{display:flex;flex-direction:column;padding:2px 8px 4px}.desk-brand__name{font-size:28px;font-weight:700;letter-spacing:-.04em;line-height:1.05}.desk-brand__name span{color:var(--primary)}.desk-brand__sub,.desk-label{color:var(--text-3)}.desk-brand__sub{margin-top:3px;font-size:12px}.desk-label{margin:16px 8px 6px;font-size:11px;font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--text-4)}.desk-nav{flex:1;min-height:0;display:flex;flex-direction:column;gap:2px;overflow:auto}.desk-nav__item,.desk-user__btn,.desk-logout{display:flex;align-items:center;gap:10px;width:100%;border-radius:12px;text-align:left}.desk-nav__item{height:42px;padding:0 12px;color:var(--text-2);font-size:14.5px;font-weight:600}.desk-nav__item:hover,.desk-user__btn:hover{background:#7676801a}.desk-nav__item.is-active,.desk-user__btn.is-active{background:var(--primary-soft);color:var(--primary)}.desk-nav__icon{width:22px;height:22px;display:grid;place-items:center;flex-shrink:0}.desk-nav__icon svg{width:22px;height:22px}.desk-user{margin-top:8px;padding-top:8px;border-top:.5px solid var(--separator)}.desk-user__btn{padding:8px}.desk-avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;background:var(--primary);color:#fff;font-size:13px;font-weight:700}.desk-user__text{min-width:0;display:flex;flex-direction:column}.desk-user__name,.desk-user__given{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.desk-user__name{font-size:13.5px;font-weight:700}.desk-user__given{font-size:12.5px;color:var(--text-2)}.desk-user__btn.is-active .desk-user__name{color:var(--primary)}.desk-user__actions{display:flex;align-items:center;gap:4px;padding:4px 4px 0}.desk-logout{height:34px;padding:0 10px;color:var(--primary);font-size:15px;font-weight:600}.desk-work{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;border-radius:22px;overflow:hidden;background:var(--bg);border:1px solid rgba(255,255,255,.9);box-shadow:0 18px 50px #1428501a}.desk-work__scroll{flex:1;min-height:0;overflow:auto}.desk-work__screen{min-height:100%;animation:ios-screen .32s var(--ease-ios)}body.is-desktop .search-list{display:grid;grid-template-columns:1fr 1fr;align-items:start}@media (max-width: 1100px){.desk{gap:0;padding:0}.desk-side{width:84px;flex-basis:84px;padding:12px 8px;border-radius:0}.desk-work{border-radius:0;border-top:0;border-right:0;border-bottom:0}.desk-brand__sub,.desk-label,.desk-nav__label,.desk-user__text{display:none}.desk-brand__name{font-size:15px}.desk-nav__item,.desk-user__btn{justify-content:center;padding-left:0;padding-right:0}.desk-logout{font-size:12px;justify-content:center}body.is-desktop .search-list{grid-template-columns:1fr}}.search-page{padding:12px 16px 24px}.search-page__title{margin:8px 4px 14px}.search-field{position:relative;margin-bottom:12px}.search-field input{width:100%;height:40px;padding:0 16px;border-radius:12px;border:none;background:#7676801f;font-size:17px;letter-spacing:-.02em}.search-field input:focus{outline:none;box-shadow:inset 0 0 0 1.5px var(--primary);background:#fff}.search-field__status{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:12px;color:var(--text-3)}.search-filters{margin-bottom:4px}.search-chips{display:flex;gap:8px;overflow-x:auto;margin-bottom:10px;padding-bottom:2px}.search-chip{flex-shrink:0;height:32px;padding:0 12px;border-radius:999px;background:#7676801f;color:var(--text);font-size:14px;font-weight:500;letter-spacing:-.01em;transition:transform .18s var(--ease-ios),background .2s ease,color .2s ease}.search-chip.is-active{background:var(--primary);color:#fff}.search-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px;align-items:center}.search-toolbar label{font-size:13px;color:var(--text-3)}.search-toolbar select,.search-toolbar input[type=number]{height:34px;padding:0 10px;border-radius:10px;border:none;background:#7676801f;font-size:14px;color:var(--text)}.search-count{font-size:13px;color:var(--text-3);margin-bottom:12px}.search-empty{padding:32px;text-align:center}.search-pagination{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:16px}.search-list{display:flex;flex-direction:column;gap:10px;transition:opacity .2s ease}.search-list.is-loading{opacity:.55}.doctor-card{display:flex;align-items:stretch;gap:4px;padding:12px}.doctor-card__open{display:flex;gap:12px;align-items:center;text-align:left;flex:1;min-width:0;background:transparent}.doctor-card__avatar{width:52px;height:52px;border-radius:16px;background:linear-gradient(180deg,#64b5ff,#007aff);display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px;font-weight:700;letter-spacing:-.03em;flex-shrink:0}.doctor-card__body{flex:1;min-width:0}.doctor-card__name{font-size:17px;font-weight:600;letter-spacing:-.03em}.doctor-card__meta{margin-top:2px;font-size:14px;color:var(--primary);font-weight:500}.doctor-card__stats{margin-top:4px;font-size:13px;color:var(--text-3)}.doctor-card__price{margin-top:6px;font-size:15px;font-weight:600;letter-spacing:-.02em}.doctor-card__chevron{align-self:center;color:var(--text-4);font-size:20px}.fav-btn{width:36px;height:36px;align-self:center;flex-shrink:0;border-radius:999px;background:#7676801f;color:var(--warning);font-size:16px}@media (prefers-reduced-motion: reduce){.search-page button,.search-page input,.search-page select,.search-list{transition:none}}:root{--bg: #F2F2F7;--bg-elevated: rgba(255, 255, 255, .82);--card: #FFFFFF;--fill: rgba(118, 118, 128, .12);--primary: #007AFF;--primary-press: #0066D6;--primary-soft: rgba(0, 122, 255, .12);--success: #34C759;--success-soft: rgba(52, 199, 89, .14);--danger: #FF3B30;--danger-soft: rgba(255, 59, 48, .12);--warning: #FF9500;--warning-soft: rgba(255, 149, 0, .14);--text: #1C1C1E;--text-2: #3A3A3C;--text-3: #8E8E93;--text-4: #AEAEB2;--separator: rgba(60, 60, 67, .16);--border: rgba(60, 60, 67, .16);--hover: rgba(118, 118, 128, .1);--shadow-sm: 0 1px 1px rgba(0, 0, 0, .04);--shadow-md: 0 18px 50px rgba(28, 28, 40, .12);--radius-md: 14px;--radius-lg: 18px;--ease-ios: cubic-bezier(.32, .72, 0, 1);--font: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Inter, sans-serif}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{background:radial-gradient(900px 420px at 50% -10%,#ffffff 0%,transparent 60%),#e4e4ec}#root{display:flex;justify-content:center}button,input,textarea,select{font:inherit;color:inherit}button,a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button{border:none;background:none;cursor:pointer}ul,ol{list-style:none}a{color:inherit;text-decoration:none}.app,.auth-screen{width:min(480px,100%);height:100%;background:var(--bg);display:flex;flex-direction:column;overflow:hidden}body.is-desktop{background:#e8eef6}body.is-desktop:not(.is-guest) #root{display:block}body.is-desktop:not(.is-guest) .app{width:100%;height:100%;border-radius:0;box-shadow:none;background:transparent}@media (min-width: 840px){#root{align-items:center}.app,.auth-screen{height:min(920px,calc(100vh - 48px));border-radius:36px;box-shadow:0 30px 80px #14142829,0 0 0 1px #ffffffb3}}.boot-screen{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text-3);font-size:17px;letter-spacing:-.02em}.app-shell{flex:1;min-height:0;display:flex;flex-direction:column}.nav-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:calc(10px + env(safe-area-inset-top)) 16px 10px;background:#f9f9f9c7;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:.5px solid var(--separator);z-index:5}.nav-bar__brand{font-size:17px;font-weight:600;letter-spacing:-.03em}.nav-bar__name{margin-top:1px;font-size:12px;color:var(--text-3);letter-spacing:-.01em}.nav-bar__actions{display:flex;align-items:center;gap:4px}.nav-text-btn,.nav-icon-btn{height:34px;border-radius:999px;color:var(--primary);font-size:16px;font-weight:500;letter-spacing:-.02em;transition:transform .18s var(--ease-ios),background .18s ease}.nav-text-btn{padding:0 12px}.nav-icon-btn{width:34px;display:inline-flex;align-items:center;justify-content:center;position:relative}.nav-text-btn:active,.nav-icon-btn:active,.tabbar__item:active,.btn:active,.search-chip:active,.ios-back:active{transform:scale(.96)}.nav-icon-btn__badge{position:absolute;top:2px;right:0;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:var(--danger);color:#fff;font-size:10px;font-weight:700;line-height:16px}.notif-popover{position:absolute;right:0;top:42px;width:min(320px,78vw);max-height:360px;overflow:auto;z-index:30;padding:6px;border-radius:16px;background:#ffffffeb;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:var(--shadow-md);animation:ios-pop .28s var(--ease-ios)}.notif-item{display:block;width:100%;text-align:left;padding:10px 12px;border-radius:12px;margin-bottom:2px}.notif-item.is-unread{background:var(--primary-soft)}.app-shell__content{flex:1;min-height:0;overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-width:none}.app-shell__content::-webkit-scrollbar,.search-chips::-webkit-scrollbar{display:none}.app-shell__screen{min-height:100%;animation:ios-screen .32s var(--ease-ios)}.tabbar{display:flex;padding:4px 6px calc(6px + env(safe-area-inset-bottom));background:#f9f9f9cc;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-top:.5px solid var(--separator)}.tabbar__item{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 2px 4px;color:var(--text-3);transition:color .2s ease,transform .18s var(--ease-ios)}.tabbar__item.is-active{color:var(--primary)}.tabbar__icon{display:flex;height:26px;transition:transform .28s var(--ease-ios)}.tabbar__item.is-active .tabbar__icon{transform:translateY(-1px) scale(1.06)}.tabbar__label{font-size:10px;font-weight:500;letter-spacing:-.01em;line-height:1.1}.btn,.btn-primary,.btn-secondary,.btn-ghost,.btn-danger,.btn-sm{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 16px;border-radius:12px;font-size:16px;font-weight:600;letter-spacing:-.02em;width:auto;transition:transform .18s var(--ease-ios),opacity .18s ease,background .18s ease}.btn{width:100%;min-height:50px;padding:0 20px;border-radius:14px;font-size:17px}.btn-sm{min-height:34px;padding:0 12px;border-radius:10px;font-size:14px}.btn-primary{background:var(--primary);color:#fff}.btn-secondary{background:#007aff1f;color:var(--primary)}.btn-ghost{background:#e5e5ea;color:var(--text)}.btn-danger{background:var(--danger-soft);color:var(--danger)}.btn-stack{display:flex;flex-direction:column;gap:8px}.btn:active,.btn-primary:active,.btn-secondary:active,.btn-ghost:active,.btn-danger:active,.btn-sm:active{transform:scale(.97)}.btn:disabled,.btn-primary:disabled,.btn-secondary:disabled,.btn-ghost:disabled,.btn-danger:disabled,.btn-sm:disabled{opacity:.4;cursor:default;transform:none}.card{background:var(--card);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.form-group{margin-bottom:14px}.form-label{display:block;font-size:13px;font-weight:500;color:var(--text-3);margin:0 4px 6px;letter-spacing:-.01em}.form-input,.form-select,.form-textarea{width:100%;border:none;outline:none;background:var(--card);border-radius:12px;padding:14px 16px;font-size:17px;letter-spacing:-.02em;box-shadow:inset 0 0 0 .5px transparent;transition:box-shadow .2s ease}.form-input:focus,.form-select:focus,.form-textarea:focus{box-shadow:inset 0 0 0 1.5px var(--primary)}.form-textarea{min-height:100px;resize:vertical;line-height:1.45}.badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:999px;font-size:12px;font-weight:600}.badge-blue{background:var(--primary-soft);color:var(--primary)}.badge-green{background:var(--success-soft);color:#248a3d}.badge-orange{background:var(--warning-soft);color:#c77700}.badge-gray{background:var(--fill);color:var(--text-3)}.auth-screen{justify-content:flex-start;overflow:auto;padding:28px 20px 36px;background:radial-gradient(320px 180px at 50% 0%,rgba(0,122,255,.18),transparent 70%),var(--bg)}.auth-card{width:100%;max-width:420px;margin:auto}.auth-mark{width:76px;height:76px;margin:8px auto 18px;border-radius:22px;display:grid;place-items:center;color:#fff;font-size:30px;font-weight:700;letter-spacing:-.05em;background:linear-gradient(180deg,#5ac8fa,#007aff);box-shadow:0 14px 30px #007aff47}.auth-title{font-size:32px;line-height:1.05;font-weight:700;letter-spacing:-.045em;text-align:center}.auth-subtitle{margin:8px 0 26px;text-align:center;color:var(--text-3);font-size:16px}.auth-error{padding:12px 14px;margin-bottom:14px;background:var(--danger-soft);color:var(--danger);border-radius:14px;font-size:15px}.auth-group{background:#fff;border-radius:16px;overflow:hidden;margin-bottom:18px}.auth-group .form-group{margin:0}.auth-group .form-group+.form-group{border-top:.5px solid var(--separator)}.auth-group .form-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.auth-group .form-input{border-radius:0;background:transparent;box-shadow:none;padding:15px 16px}.auth-group .form-group:first-child .form-input{border-radius:16px 16px 0 0}.auth-group .form-group:last-child .form-input{border-radius:0 0 16px 16px}.auth-group .form-group:only-child .form-input{border-radius:16px}.auth-group .form-input:focus,.auth-group .form-input:focus-visible{box-shadow:inset 0 0 0 1.5px var(--primary)}.auth-footer{margin-top:18px;text-align:center;font-size:15px;color:var(--text-3)}.auth-footer a{color:var(--primary);font-weight:500}.auth-note{margin-top:22px;padding:14px 16px;border-radius:16px;background:#ffffffb3;font-size:13px;line-height:1.45;color:var(--text-3)}.segmented{display:flex;padding:2px;margin-bottom:16px;border-radius:10px;background:var(--fill)}.segmented button{flex:1;height:32px;border-radius:8px;font-size:13px;font-weight:600;letter-spacing:-.01em;color:var(--text);transition:background .22s var(--ease-ios),box-shadow .22s var(--ease-ios),transform .18s var(--ease-ios)}.segmented button.is-active{background:#fff;box-shadow:0 1px 3px #0000001f,0 1px 1px #0000000a}.ios-push{animation:ios-push .36s var(--ease-ios)}.ios-back{display:inline-flex;align-items:center;gap:2px;height:34px;margin-bottom:12px;padding:0 12px 0 8px;border-radius:999px;background:var(--primary-soft);color:var(--primary);font-size:15px;font-weight:600;letter-spacing:-.02em;transition:transform .18s var(--ease-ios),background .18s var(--ease-ios)}.ios-back:active{background:color-mix(in srgb,var(--primary) 18%,transparent)}.page-title,.search-page__title,.appt-page__title{font-size:32px;font-weight:700;letter-spacing:-.045em;line-height:1.08}@keyframes ios-screen{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes ios-push{0%{opacity:.65;transform:translate(18px)}to{opacity:1;transform:none}}@keyframes ios-pop{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:none}}
