.app-container{display:flex;flex-direction:column;height:100%;background:var(--tg-theme-grouped-bg-color)}.app-content{flex:1;overflow-y:auto;overflow-x:hidden;padding-top:calc(var(--safe-area-top) + var(--header-height));padding-bottom:calc(var(--safe-area-bottom) + var(--tab-bar-height));-webkit-overflow-scrolling:touch;overscroll-behavior:contain;overscroll-behavior-y:contain}.app-content.no-header{padding-top:var(--safe-area-top)}.app-content.no-tab-bar{padding-bottom:var(--safe-area-bottom)}.page-enter{opacity:0;transform:translate(20px)}.page-enter-active{opacity:1;transform:translate(0);transition:opacity var(--duration-normal),transform var(--duration-normal)}.page-exit{opacity:1}.page-exit-active{opacity:0;transition:opacity var(--duration-fast)}.ptr-indicator{display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xxxl) var(--spacing-xl);text-align:center}.empty-state-icon{font-size:64px;margin-bottom:var(--spacing-lg);opacity:.3}.empty-state-title{font-size:var(--font-size-title3);font-weight:600;margin:0 0 var(--spacing-sm);color:var(--tg-theme-text-color)}.empty-state-text{font-size:var(--font-size-subheadline);color:var(--tg-theme-secondary-text-color);margin:0 0 var(--spacing-xl);max-width:280px}.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xxxl) var(--spacing-xl);text-align:center}.error-state-icon{width:64px;height:64px;border-radius:50%;background:#ff3b301a;display:flex;align-items:center;justify-content:center;margin-bottom:var(--spacing-lg);color:var(--tg-theme-destructive-color);font-size:32px}.error-state-title{font-size:var(--font-size-title3);font-weight:600;margin:0 0 var(--spacing-sm);color:var(--tg-theme-text-color)}.error-state-text{font-size:var(--font-size-subheadline);color:var(--tg-theme-secondary-text-color);margin:0 0 var(--spacing-xl);max-width:280px}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xxxl) var(--spacing-xl);gap:var(--spacing-lg)}.loading-state-text{font-size:var(--font-size-subheadline);color:var(--tg-theme-secondary-text-color)}.section-header{padding:var(--spacing-xxl) var(--spacing-lg) var(--spacing-sm);font-size:var(--font-size-footnote);font-weight:400;color:var(--tg-theme-secondary-text-color);text-transform:uppercase;letter-spacing:.02em}.section-header:first-child{padding-top:var(--spacing-lg)}.inset-group{margin:0 var(--spacing-lg);background:var(--tg-theme-bg-color);border-radius:var(--radius-md);overflow:hidden}.badge{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-xxs) var(--spacing-sm);font-size:var(--font-size-caption1);font-weight:600;border-radius:var(--radius-full);background:var(--tg-theme-accent-color);color:#fff}.badge-success{background:var(--tg-theme-success-color)}.badge-warning{background:var(--tg-theme-warning-color)}.badge-destructive{background:var(--tg-theme-destructive-color)}.badge-secondary{background:var(--tg-theme-fill-color);color:var(--tg-theme-secondary-text-color)}.chip{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-footnote);font-weight:500;border-radius:var(--radius-full);background:var(--tg-theme-fill-color);color:var(--tg-theme-text-color)}.chip-accent{background:rgba(var(--tg-theme-accent-color-rgb),.15);color:var(--tg-theme-accent-color)}.divider{height:.5px;background:var(--tg-theme-separator-color);margin:0 var(--spacing-lg)}.divider-full{margin:0}.avatar{width:40px;height:40px;border-radius:50%;background:var(--tg-theme-fill-color);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.avatar img{width:100%;height:100%;object-fit:cover}.avatar-sm{width:32px;height:32px}.avatar-lg{width:56px;height:56px}.avatar-xl{width:80px;height:80px}.avatar-square{border-radius:var(--radius-md)}.progress-bar{height:4px;background:var(--tg-theme-fill-color);border-radius:var(--radius-full);overflow:hidden}.progress-bar-fill{height:100%;background:var(--tg-theme-accent-color);border-radius:var(--radius-full);transition:width var(--duration-normal) var(--easing-default)}.search-bar{position:relative;margin:var(--spacing-sm) var(--spacing-lg)}.search-bar-input{width:100%;height:36px;padding:0 var(--spacing-md) 0 36px;border:none;border-radius:var(--radius-sm);background:var(--tg-theme-fill-color);font-family:inherit;font-size:var(--font-size-body);color:var(--tg-theme-text-color)}.search-bar-input::placeholder{color:var(--tg-theme-secondary-text-color)}.search-bar-input:focus{outline:none}.search-bar-icon{position:absolute;left:var(--spacing-md);top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--tg-theme-secondary-text-color);pointer-events:none}.segmented-control{display:flex;background:var(--tg-theme-fill-color);border-radius:var(--radius-sm);padding:2px}.segmented-control-item{flex:1;padding:var(--spacing-sm) var(--spacing-md);border:none;background:transparent;font-family:inherit;font-size:var(--font-size-footnote);font-weight:500;color:var(--tg-theme-text-color);cursor:pointer;border-radius:calc(var(--radius-sm) - 2px);transition:all var(--duration-fast)}.segmented-control-item.active{background:var(--tg-theme-bg-color);box-shadow:var(--shadow-sm)}.action-group{background:var(--tg-theme-bg-color);border-radius:var(--radius-lg);overflow:hidden;margin:var(--spacing-sm) var(--spacing-lg)}.action-item{display:flex;align-items:center;justify-content:center;width:100%;padding:var(--spacing-lg);border:none;background:transparent;font-family:inherit;font-size:var(--font-size-body);color:var(--tg-theme-accent-color);cursor:pointer;position:relative}.action-item:not(:last-child):after{content:"";position:absolute;left:0;right:0;bottom:0;height:.5px;background:var(--tg-theme-separator-color)}.action-item:active{background:var(--tg-theme-fill-color)}.action-item-destructive{color:var(--tg-theme-destructive-color)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}*:focus-visible{outline:2px solid var(--tg-theme-accent-color);outline-offset:2px}:root{--tg-theme-accent-color: #0A5098;--tg-theme-accent-color-rgb: 10, 80, 152;--tg-theme-accent-dark: #083d75;--tg-theme-accent-light: #4A90D9;--brand-gradient: linear-gradient(135deg, #0A5098 0%, #4A90D9 100%);--brand-gradient-vibrant: linear-gradient(135deg, #083d75 0%, #0A5098 100%);--brand-gradient-soft: linear-gradient(135deg, #E5E5E5 0%, #F5F5F5 100%);--brand-gradient-vertical: linear-gradient(180deg, #0A5098 0%, #4A90D9 100%);--tg-theme-bg-color: #FFFFFF;--tg-theme-secondary-bg-color: #F9F7F3;--tg-theme-tertiary-bg-color: #FFFFFF;--tg-theme-grouped-bg-color: #F9F7F3;--card-bg: #FFFFFF;--card-border: #e8e4dc;--card-shadow: 0 4px 24px rgba(0, 0, 0, .08);--tg-theme-text-color: #1A1A1A !important;--tg-theme-secondary-text-color: #6b7280 !important;--tg-theme-tertiary-text-color: #C7C7CC !important;--tg-theme-hint-color: #6b7280 !important;--tg-theme-link-color: #0A5098 !important;--tg-theme-button-color: #0A5098;--tg-theme-button-text-color: #FFFFFF;--tg-theme-destructive-color: #FF3B30;--tg-theme-success-color: #34C759;--tg-theme-warning-color: #FF9500;--tg-theme-separator-color: rgba(60, 60, 67, .18);--tg-theme-opaque-separator-color: #C6C6C8;--tg-theme-fill-color: rgba(120, 120, 128, .2);--tg-theme-secondary-fill-color: rgba(120, 120, 128, .16);--tg-theme-tertiary-fill-color: rgba(118, 118, 128, .12);--tg-theme-header-bg-color: rgba(255, 255, 255, .9);--tg-theme-bottom-bar-bg-color: rgba(255, 255, 255, .9);--spacing-xxs: 2px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 16px;--spacing-xl: 20px;--spacing-xxl: 24px;--spacing-xxxl: 32px;--radius-xs: 6px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-xxl: 24px;--radius-full: 9999px;--font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Helvetica Neue", Arial, sans-serif;--font-size-caption2: 11px;--font-size-caption1: 12px;--font-size-footnote: 13px;--font-size-subheadline: 15px;--font-size-body: 17px;--font-size-headline: 17px;--font-size-title3: 20px;--font-size-title2: 22px;--font-size-title1: 28px;--font-size-large-title: 34px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 2px 8px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .12);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .16);--blur-sm: 10px;--blur-md: 20px;--blur-lg: 40px;--duration-fast: .15s;--duration-normal: .25s;--duration-slow: .35s;--easing-default: cubic-bezier(.25, .1, .25, 1);--easing-spring: cubic-bezier(.34, 1.56, .64, 1);--z-base: 0;--z-dropdown: 100;--z-sticky: 200;--z-fixed: 300;--z-modal-backdrop: 400;--z-modal: 500;--z-popover: 600;--z-tooltip: 700;--player-bg: linear-gradient(180deg, #F9F7F3 0%, #F5F3EF 100%);--player-text: #1A1A1A;--player-text-secondary: rgba(26, 26, 26, .5);--player-overlay: rgba(249, 247, 243, .9);--player-overlay-strong: rgba(249, 247, 243, .95);--player-card-bg: rgba(255, 255, 255, .95);--player-card-border: rgba(0, 0, 0, .08);--player-button-bg: rgba(0, 0, 0, .06);--player-button-active: rgba(0, 0, 0, .12);--player-progress-bg: rgba(0, 0, 0, .1);--player-progress-fill: linear-gradient(90deg, #0A5098 0%, #4A90D9 100%);--player-play-bg: linear-gradient(135deg, #0A5098 0%, #083d75 100%);--player-play-shadow: rgba(10, 80, 152, .25);--safe-area-top: env(safe-area-inset-top, 0px);--safe-area-bottom: env(safe-area-inset-bottom, 0px);--safe-area-left: env(safe-area-inset-left, 0px);--safe-area-right: env(safe-area-inset-right, 0px);--header-height: 44px;--tab-bar-height: 49px;--content-max-width: 428px;--vh: 1vh}@supports (height: 1dvh){:root{--vh: 1dvh}}[data-theme=light]{--tg-theme-accent-color: #0A5098;--tg-theme-accent-color-rgb: 10, 80, 152;--tg-theme-accent-dark: #083d75;--tg-theme-accent-light: #4A90D9;--brand-gradient: linear-gradient(135deg, #0A5098 0%, #4A90D9 100%);--brand-gradient-vibrant: linear-gradient(135deg, #083d75 0%, #0A5098 100%);--tg-theme-bg-color: #FFFFFF;--tg-theme-secondary-bg-color: #F9F7F3;--tg-theme-tertiary-bg-color: #FFFFFF;--tg-theme-grouped-bg-color: #F9F7F3;--card-bg: #FFFFFF;--card-border: #e8e4dc;--card-shadow: 0 4px 24px rgba(0, 0, 0, .08);--tg-theme-text-color: #1A1A1A !important;--tg-theme-secondary-text-color: #6b7280 !important;--tg-theme-tertiary-text-color: #C7C7CC !important;--tg-theme-hint-color: #6b7280 !important;--tg-theme-link-color: #0A5098 !important;--tg-theme-button-color: #0A5098;--tg-theme-button-text-color: #FFFFFF;--tg-theme-separator-color: rgba(60, 60, 67, .18);--tg-theme-opaque-separator-color: #C6C6C8;--tg-theme-fill-color: rgba(120, 120, 128, .2);--tg-theme-secondary-fill-color: rgba(120, 120, 128, .16);--tg-theme-tertiary-fill-color: rgba(118, 118, 128, .12);--tg-theme-header-bg-color: rgba(255, 255, 255, .9);--tg-theme-bottom-bar-bg-color: rgba(255, 255, 255, .9);--player-bg: linear-gradient(180deg, #F9F7F3 0%, #F5F3EF 100%);--player-text: #1A1A1A;--player-text-secondary: rgba(26, 26, 26, .5);--player-overlay: rgba(249, 247, 243, .9);--player-overlay-strong: rgba(249, 247, 243, .95);--player-card-bg: rgba(255, 255, 255, .95);--player-card-border: rgba(0, 0, 0, .08);--player-button-bg: rgba(0, 0, 0, .06);--player-button-active: rgba(0, 0, 0, .12);--player-progress-bg: rgba(0, 0, 0, .1);--player-progress-fill: linear-gradient(90deg, #0A5098 0%, #4A90D9 100%);--player-play-bg: linear-gradient(135deg, #0A5098 0%, #083d75 100%);--player-play-shadow: rgba(10, 80, 152, .25)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{height:100%;font-size:16px}body{margin:0;padding:0;min-height:100%;height:calc(var(--vh, 1vh) * 100);font-family:var(--font-family);font-size:var(--font-size-body);line-height:1.47;color:var(--tg-theme-text-color);background:var(--tg-theme-grouped-bg-color);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior:none;overscroll-behavior-y:none;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;overflow:hidden;position:fixed;width:100%}#root{height:100%;display:flex;flex-direction:column}.list-group{background:var(--tg-theme-bg-color);border-radius:var(--radius-md);overflow:hidden;margin:var(--spacing-lg) 0}.list-group-inset{margin-left:var(--spacing-lg);margin-right:var(--spacing-lg)}.list-item{display:flex;align-items:center;padding:var(--spacing-md) var(--spacing-lg);min-height:44px;background:var(--tg-theme-bg-color);position:relative}.list-item:not(:last-child):after{content:"";position:absolute;left:var(--spacing-lg);right:0;bottom:0;height:.5px;background:var(--tg-theme-separator-color)}.list-item:active{background:var(--tg-theme-fill-color)}.list-header{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-footnote);color:var(--tg-theme-secondary-text-color);text-transform:uppercase;letter-spacing:.02em}.list-footer{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-footnote);color:var(--tg-theme-secondary-text-color)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-xl);border:none;border-radius:var(--radius-md);font-family:inherit;font-size:var(--font-size-body);font-weight:600;line-height:1.2;cursor:pointer;transition:all var(--duration-fast) var(--easing-default);min-height:50px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:active:not(:disabled){transform:scale(.98)}.btn-primary{background:var(--tg-theme-button-color);color:var(--tg-theme-button-text-color)}.btn-primary:active:not(:disabled){background:color-mix(in srgb,var(--tg-theme-button-color) 85%,black)}.btn-secondary{background:var(--tg-theme-fill-color);color:var(--tg-theme-accent-color)}.btn-ghost{background:transparent;color:var(--tg-theme-accent-color)}.btn-destructive{background:var(--tg-theme-destructive-color);color:#fff}.btn-full{width:100%}.btn-sm{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-subheadline);min-height:36px}.btn-lg{padding:var(--spacing-lg) var(--spacing-xxl);font-size:var(--font-size-headline);min-height:56px;border-radius:var(--radius-lg)}.card{background:var(--tg-theme-bg-color);border-radius:var(--radius-lg);overflow:hidden}.card-shadow{box-shadow:var(--shadow-md)}.card-body{padding:var(--spacing-lg)}.card-media{position:relative;aspect-ratio:16/9;overflow:hidden}.card-media img{width:100%;height:100%;object-fit:cover}.header{position:fixed;top:0;left:0;right:0;z-index:var(--z-sticky);padding-top:var(--safe-area-top);background:var(--tg-theme-header-bg-color);backdrop-filter:blur(var(--blur-md));-webkit-backdrop-filter:blur(var(--blur-md))}.header-content{display:flex;align-items:center;justify-content:space-between;height:var(--header-height);padding:0 var(--spacing-lg)}.header-title{font-size:var(--font-size-headline);font-weight:600;text-align:center;flex:1}.header-large-title{padding:var(--spacing-sm) var(--spacing-lg) var(--spacing-lg);font-size:var(--font-size-large-title);font-weight:700;line-height:1.1}.spinner{width:24px;height:24px;border:2.5px solid var(--tg-theme-fill-color);border-top-color:var(--tg-theme-accent-color);border-radius:50%;animation:spin .8s linear infinite}.spinner-sm{width:16px;height:16px;border-width:2px}.spinner-lg{width:32px;height:32px;border-width:3px}.skeleton{background:linear-gradient(90deg,var(--tg-theme-fill-color) 25%,var(--tg-theme-secondary-fill-color) 50%,var(--tg-theme-fill-color) 75%);background-size:200% 100%;animation:skeleton-loading 1.5s infinite;border-radius:var(--radius-sm)}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.text-primary{color:var(--tg-theme-text-color)}.text-secondary{color:var(--tg-theme-secondary-text-color)}.text-accent{color:var(--tg-theme-accent-color)}.text-destructive{color:var(--tg-theme-destructive-color)}.text-success{color:var(--tg-theme-success-color)}.text-caption{font-size:var(--font-size-caption1)}.text-footnote{font-size:var(--font-size-footnote)}.text-body{font-size:var(--font-size-body)}.text-headline{font-size:var(--font-size-headline);font-weight:600}.text-title{font-size:var(--font-size-title3);font-weight:600}.text-large-title{font-size:var(--font-size-large-title);font-weight:700}.font-regular{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.flex{display:flex}.flex-col{flex-direction:column}.flex-1{flex:1}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-xs{gap:var(--spacing-xs)}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.px-lg{padding-left:var(--spacing-lg);padding-right:var(--spacing-lg)}.py-md{padding-top:var(--spacing-md);padding-bottom:var(--spacing-md)}.py-lg{padding-top:var(--spacing-lg);padding-bottom:var(--spacing-lg)}.m-0{margin:0}.mb-xs{margin-bottom:var(--spacing-xs)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mt-lg{margin-top:var(--spacing-lg)}.w-full{width:100%}.h-full{height:100%}.min-h-screen{min-height:calc(var(--vh, 1vh) * 100)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-full{border-radius:var(--radius-full)}.object-cover{object-fit:cover}.object-contain{object-fit:contain}.download-button-container{display:flex;flex-direction:column;gap:8px}.download-button{display:flex;align-items:center;gap:8px;padding:8px 16px;border:none;border-radius:8px;font-family:inherit;font-weight:500;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden}.download-button--small{padding:6px 12px;font-size:14px;gap:6px}.download-button--medium{padding:8px 16px;font-size:16px;gap:8px}.download-button--large{padding:12px 20px;font-size:18px;gap:10px}.download-button--primary{background:#0a5098;color:#fff}.download-button--primary:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.download-button--secondary{background:#0000000f;color:#1a1a1a}.download-button--secondary:hover:not(:disabled){opacity:.8;transform:translateY(-1px)}.download-button--outline{background:transparent;color:#0a5098;border:2px solid #0A5098}.download-button--outline:hover:not(:disabled){background:#0a5098;color:#fff;transform:translateY(-1px)}.download-button--downloaded{background:#34c759!important;color:#fff!important;cursor:not-allowed}.download-button--downloading{background:#ff9500!important;color:#fff!important}.download-button--downloading:hover{background:#e08600!important}.download-button:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.download-button__icon{font-size:1.2em;line-height:1}.download-button__text{flex:1;text-align:left}.download-button__size{font-size:.85em;opacity:.8;font-weight:400}.download-progress{display:flex;flex-direction:column;gap:4px}.download-progress__bar{width:100%;height:4px;background:#0000001a;border-radius:2px;overflow:hidden}.download-progress__fill{height:100%;background:#0a5098;border-radius:2px;transition:width .3s ease}.download-progress__info{display:flex;flex-direction:column;gap:2px}.download-progress__text{font-size:14px;font-weight:500;color:#1a1a1a}.download-progress__stats{font-size:12px;color:#8e8e93}.download-error{display:flex;align-items:center;gap:6px;padding:8px 12px;background:var(--tg-theme-destructive-text-color, #ff3b30);color:var(--tg-theme-button-text-color, #ffffff);border-radius:6px;font-size:14px}.download-error__icon{font-size:16px}.download-error__text{flex:1}@media(max-width:480px){.download-button--large{padding:10px 16px;font-size:16px}.download-button--medium{padding:8px 14px;font-size:15px}.download-button--small{padding:6px 10px;font-size:13px}.download-progress__text{font-size:13px}.download-progress__stats{font-size:11px}}.download-button--downloading .download-button__icon{animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(.95)}}.progress-sync-indicator{font-size:14px;color:var(--tg-theme-text-color, #000000)}.progress-sync-indicator__status{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--tg-theme-secondary-bg-color, #f8f9fa);border-radius:8px;border:1px solid var(--tg-theme-section-separator-color, #e1e1e1)}.progress-sync-indicator__icon{display:flex;align-items:center;justify-content:center;width:16px;height:16px}.progress-sync-indicator__spinner{color:var(--tg-theme-button-color, #007aff);animation:spin 1s linear infinite}.progress-sync-indicator__online{color:#28a745;font-size:12px}.progress-sync-indicator__offline{color:var(--tg-theme-hint-color, #999999);font-size:12px}.progress-sync-indicator__info{flex:1;display:flex;flex-direction:column;gap:2px}.progress-sync-indicator__text{font-weight:500;line-height:1.2}.progress-sync-indicator__offline-note{font-size:12px;color:var(--tg-theme-hint-color, #999999);line-height:1.2}.progress-sync-indicator__sync-btn{background:none;border:none;font-size:16px;cursor:pointer;padding:4px;border-radius:4px;color:var(--tg-theme-button-color, #007aff);transition:all .2s ease}.progress-sync-indicator__sync-btn:hover{background:var(--tg-theme-button-color, #007aff);color:var(--tg-theme-button-text-color, #ffffff);transform:rotate(180deg)}.progress-sync-indicator__details{margin-top:8px;padding:8px 12px;background:var(--tg-theme-bg-color, #ffffff);border-radius:6px;border:1px solid var(--tg-theme-section-separator-color, #e1e1e1);font-size:12px}.progress-sync-indicator__last-sync{color:var(--tg-theme-hint-color, #999999);margin-bottom:4px}.progress-sync-indicator__success{color:#28a745;font-weight:500}.progress-sync-indicator__error{color:var(--tg-theme-destructive-text-color, #ff3b30);font-weight:500}.progress-sync-indicator__errors{display:flex;flex-direction:column;gap:2px}.progress-sync-indicator__error-item{color:var(--tg-theme-destructive-text-color, #ff3b30);font-size:11px;line-height:1.3;padding:2px 4px;background:#ff3b301a;border-radius:3px}@media(max-width:480px){.progress-sync-indicator{font-size:13px}.progress-sync-indicator__status{padding:6px 10px}.progress-sync-indicator__details{padding:6px 10px;font-size:11px}}.purchase-button-container{display:flex;flex-direction:column;gap:1rem;width:100%}.purchase-button{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:1rem 1.5rem;font-size:1rem;font-weight:600;border:none;border-radius:50px;background-color:var(--tg-theme-button-color, #3390ec);color:var(--tg-theme-button-text-color, #ffffff);cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden}.purchase-button:hover:not(:disabled){opacity:.9;transform:translateY(-1px);box-shadow:0 4px 12px #0a50984d}.purchase-button:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px #0a509833}.purchase-button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.purchase-button__icon{flex-shrink:0}.purchase-button__text,.purchase-button__loading-text{font-weight:600}.purchase-button__error{display:flex;flex-direction:column;gap:.75rem;padding:1rem;background-color:var(--tg-theme-destructive-text-color, #ff3b30);background-color:#ff3b301a;border:1px solid var(--tg-theme-destructive-text-color, #ff3b30);border-radius:.5rem}.purchase-button__error-message{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--tg-theme-destructive-text-color, #ff3b30);line-height:1.4}.purchase-button__error-icon{flex-shrink:0}.purchase-button__retry{align-self:flex-start;padding:.5rem 1rem;font-size:.875rem;font-weight:500;border:1px solid var(--tg-theme-destructive-text-color, #ff3b30);border-radius:.375rem;background-color:transparent;color:var(--tg-theme-destructive-text-color, #ff3b30);cursor:pointer;transition:all .2s ease}.purchase-button__retry:hover:not(:disabled){background-color:var(--tg-theme-destructive-text-color, #ff3b30);color:#fff}.purchase-button__retry:disabled{opacity:.5;cursor:not-allowed}.purchase-button__info{display:flex;flex-direction:column;gap:.5rem;padding:1rem;background-color:var(--tg-theme-secondary-bg-color, #f8f9fa);border-radius:.5rem;border:1px solid var(--tg-theme-section-separator-color, #e5e5e5)}.purchase-button__info-item{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--tg-theme-hint-color, #999999);line-height:1.3}.purchase-button__info-item svg{flex-shrink:0;color:var(--tg-theme-button-color, #3390ec)}.purchase-button[data-loading=true]{pointer-events:none}.purchase-button[data-loading=true]:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);animation:loading-shimmer 1.5s infinite}@keyframes loading-shimmer{0%{left:-100%}to{left:100%}}.purchase-button__success{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:2rem;text-align:center;background-color:#34c7591a;border-radius:.75rem;animation:success-fade-in .4s ease-out}.purchase-button__success-icon{color:#34c759;animation:success-check .5s ease-out}.purchase-button__success-title{margin:0;font-size:1.125rem;font-weight:600;color:var(--tg-theme-text-color, #000000)}.purchase-button__success-text{margin:0;font-size:.875rem;color:var(--tg-theme-hint-color, #999999)}@keyframes success-fade-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes success-check{0%{opacity:0;transform:scale(0)}50%{transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.purchase-button__awaiting{display:flex;flex-direction:column;gap:1rem;padding:1.5rem;text-align:center;background-color:var(--tg-theme-secondary-bg-color, #f8f9fa);border-radius:.75rem;border:1px solid var(--tg-theme-section-separator-color, #e5e5e5)}.purchase-button__awaiting-header{display:flex;align-items:center;justify-content:center;gap:.5rem}.purchase-button__awaiting-icon{color:var(--tg-theme-button-color, #3390ec);animation:pulse 1.5s ease-in-out infinite}.purchase-button__awaiting-text{font-size:1rem;font-weight:600;color:var(--tg-theme-text-color, #000000)}.purchase-button__awaiting-hint{margin:0;font-size:.875rem;color:var(--tg-theme-hint-color, #999999);line-height:1.4}.purchase-button--check{background-color:var(--tg-theme-button-color, #3390ec)}.purchase-button__cancel{padding:.75rem 1rem;font-size:.875rem;font-weight:500;border:none;border-radius:.5rem;background-color:transparent;color:var(--tg-theme-hint-color, #999999);cursor:pointer;transition:all .2s ease}.purchase-button__cancel:hover:not(:disabled){color:var(--tg-theme-text-color, #000000);background-color:#0000000d}.purchase-button__cancel:disabled{opacity:.5;cursor:not-allowed}.purchase-button__error--inline{padding:.75rem;margin-top:.5rem;text-align:center;font-size:.875rem;color:var(--tg-theme-destructive-text-color, #ff3b30);background-color:#ff3b301a;border-radius:.5rem;border:none}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.purchase-button--success{background-color:var(--tg-theme-button-color, #34c759);animation:success-pulse .6s ease-out}@keyframes success-pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@media(max-width:320px){.purchase-button{padding:.875rem 1rem;font-size:.875rem}.purchase-button__info{padding:.75rem}.purchase-button__info-item{font-size:.6875rem}}@media(min-width:428px){.purchase-button{padding:1.125rem 2rem;font-size:1.125rem}.purchase-button__info{flex-direction:row;flex-wrap:wrap;justify-content:space-between}.purchase-button__info-item{flex:1;min-width:0;justify-content:center}}@media(prefers-contrast:high){.purchase-button{border:2px solid var(--tg-theme-button-color, #3390ec)}.purchase-button__info,.purchase-button__error{border-width:2px}}@media(prefers-reduced-motion:reduce){.purchase-button,.purchase-button__retry{transition:none}.purchase-button:hover:not(:disabled){transform:none}.purchase-button:active:not(:disabled){transform:none}@keyframes loading-shimmer{0%,to{opacity:1}50%{opacity:.5}}@keyframes success-pulse{0%,to{transform:scale(1)}}}.purchase-button__options{display:flex;flex-direction:column;gap:.75rem}.purchase-button__option{display:flex;align-items:center;gap:1rem;width:100%;padding:1rem;border:1px solid var(--tg-theme-section-separator-color, #e5e5e5);border-radius:.75rem;background-color:var(--tg-theme-bg-color, #ffffff);cursor:pointer;transition:all .2s ease;text-align:left;position:relative}.purchase-button__option:hover:not(:disabled){border-color:var(--tg-theme-button-color, #3390ec);background-color:var(--tg-theme-secondary-bg-color, #f8f9fa)}.purchase-button__option:active:not(:disabled){transform:scale(.98)}.purchase-button__option:disabled{opacity:.6;cursor:not-allowed}.purchase-button__option--primary{border-color:var(--tg-theme-button-color, #3390ec);background-color:#3390ec0d}.purchase-button__option--primary:hover:not(:disabled){background-color:#3390ec1a}.purchase-button__option--double{border-color:var(--tg-theme-link-color, #007aff)}.purchase-button__option--gift{border-color:#ff9500}.purchase-button__option--gift:hover:not(:disabled){border-color:#ff9500;background-color:#ff95000d}.purchase-button__option-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);flex-shrink:0}.purchase-button__option--primary .purchase-button__option-icon{background-color:var(--tg-theme-button-color, #3390ec);color:var(--tg-theme-button-text-color, #ffffff)}.purchase-button__option--double .purchase-button__option-icon{background-color:var(--tg-theme-link-color, #007aff);color:#fff}.purchase-button__option--gift .purchase-button__option-icon{background-color:#ff9500;color:#fff}.purchase-button__option-content{display:flex;flex-direction:column;gap:.125rem;flex:1;min-width:0}.purchase-button__option-title{font-size:1rem;font-weight:600;color:var(--tg-theme-text-color, #000000)}.purchase-button__option-desc{font-size:.8125rem;color:var(--tg-theme-hint-color, #999999)}.purchase-button__option-price{font-size:1rem;font-weight:700;color:var(--tg-theme-button-color, #3390ec);margin-top:.25rem}.purchase-button__option-badge{position:absolute;top:-8px;right:12px;padding:.25rem .5rem;font-size:.6875rem;font-weight:700;background-color:#34c759;color:#fff;border-radius:4px}.purchase-button__gift-form{display:flex;flex-direction:column;gap:1rem}.purchase-button__gift-header{display:flex;align-items:center;gap:.75rem}.purchase-button__back{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;border-radius:50%;background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);color:var(--tg-theme-text-color, #000000);cursor:pointer;transition:all .2s ease}.purchase-button__back:hover{background-color:var(--tg-theme-section-separator-color, #e5e5e5)}.purchase-button__gift-title{margin:0;font-size:1.125rem;font-weight:600;color:var(--tg-theme-text-color, #000000)}.purchase-button__gift-field{display:flex;flex-direction:column;gap:.5rem;position:relative}.purchase-button__gift-label{font-size:.875rem;font-weight:500;color:var(--tg-theme-hint-color, #999999)}.purchase-button__gift-input-wrapper{display:flex;align-items:center;border:1px solid var(--tg-theme-section-separator-color, #e5e5e5);border-radius:.5rem;background-color:var(--tg-theme-secondary-bg-color, #f8f9fa);overflow:hidden}.purchase-button__gift-input-wrapper:focus-within{border-color:var(--tg-theme-button-color, #3390ec)}.purchase-button__gift-prefix{padding:.75rem .25rem .75rem .75rem;font-size:1rem;color:var(--tg-theme-hint-color, #999999);-webkit-user-select:none;user-select:none}.purchase-button__gift-input{flex:1;padding:.75rem .75rem .75rem .25rem;font-size:1rem;border:none;background:transparent;color:var(--tg-theme-text-color, #000000);outline:none}.purchase-button__gift-input::placeholder{color:var(--tg-theme-hint-color, #999999)}.purchase-button__gift-textarea{padding:.75rem;font-size:1rem;font-family:inherit;border:1px solid var(--tg-theme-section-separator-color, #e5e5e5);border-radius:.5rem;background-color:var(--tg-theme-secondary-bg-color, #f8f9fa);color:var(--tg-theme-text-color, #000000);resize:vertical;min-height:80px;outline:none}.purchase-button__gift-textarea:focus{border-color:var(--tg-theme-button-color, #3390ec)}.purchase-button__gift-textarea::placeholder{color:var(--tg-theme-hint-color, #999999)}.purchase-button__gift-counter{position:absolute;bottom:.5rem;right:.5rem;font-size:.75rem;color:var(--tg-theme-hint-color, #999999)}.purchase-button__gift-summary{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background-color:var(--tg-theme-secondary-bg-color, #f8f9fa);border-radius:.5rem;font-size:.9375rem}.purchase-button__gift-summary span{color:var(--tg-theme-hint-color, #999999)}.purchase-button__gift-summary strong{color:var(--tg-theme-text-color, #000000);font-size:1.125rem}.purchase-button--gift{background-color:#ff9500}.purchase-button--gift:hover:not(:disabled){background-color:#e68600;box-shadow:0 4px 12px #ff95004d}.purchase-button__promo{display:flex;flex-direction:column;gap:.5rem;padding:1rem;background-color:var(--tg-theme-secondary-bg-color, #f8f9fa);border-radius:.75rem;border:1px solid var(--tg-theme-section-separator-color, #e5e5e5);transition:border-color .2s ease}.purchase-button__promo--valid{border-color:#34c759;background-color:#34c7590d}.purchase-button__promo--invalid{border-color:var(--tg-theme-destructive-text-color, #ff3b30);background-color:#ff3b300d}.purchase-button__promo-label{font-size:.875rem;font-weight:500;color:var(--tg-theme-hint-color, #999999)}.purchase-button__promo-input-wrapper{position:relative;display:flex;align-items:center}.purchase-button__promo-input{width:100%;padding:.75rem 2.5rem .75rem .75rem;font-size:1rem;font-family:inherit;text-transform:uppercase;letter-spacing:1px;border:1px solid var(--tg-theme-section-separator-color, #e5e5e5);border-radius:.5rem;background-color:var(--tg-theme-bg-color, #ffffff);color:var(--tg-theme-text-color, #000000);outline:none;transition:border-color .2s ease}.purchase-button__promo-input:focus{border-color:var(--tg-theme-button-color, #3390ec)}.purchase-button__promo-input::placeholder{color:var(--tg-theme-hint-color, #999999);text-transform:uppercase}.purchase-button__promo--valid .purchase-button__promo-input{border-color:#34c759;background-color:#34c7590d}.purchase-button__promo--invalid .purchase-button__promo-input{border-color:var(--tg-theme-destructive-text-color, #ff3b30);background-color:#ff3b300d}.purchase-button__promo-spinner{position:absolute;right:.75rem;width:20px;height:20px;border:2px solid var(--tg-theme-section-separator-color, #e5e5e5);border-top-color:var(--tg-theme-button-color, #3390ec);border-radius:50%;animation:promo-spin 1s linear infinite}@keyframes promo-spin{to{transform:rotate(360deg)}}.purchase-button__promo-icon{position:absolute;right:.75rem;display:flex;align-items:center;justify-content:center}.purchase-button__promo-icon--valid{color:#34c759}.purchase-button__promo-icon--invalid{color:var(--tg-theme-destructive-text-color, #ff3b30)}.purchase-button__promo-result{display:flex;align-items:center;gap:.5rem;padding:.75rem;border-radius:.5rem;font-size:.875rem}.purchase-button__promo-result--valid{background-color:#34c7591a;color:#166534}.purchase-button__promo-result--invalid{background-color:#ff3b301a;color:#991b1b}.purchase-button__price-summary{display:flex;flex-direction:column;gap:.5rem;padding:1rem;background-color:var(--tg-theme-secondary-bg-color, #f8f9fa);border-radius:.75rem}.purchase-button__price-row{display:flex;justify-content:space-between;align-items:center;font-size:.9375rem}.purchase-button__price-row--discount{color:#34c759}.purchase-button__price-row--total{padding-top:.5rem;border-top:1px solid var(--tg-theme-section-separator-color, #e5e5e5);font-weight:600}.purchase-button__price-label{color:var(--tg-theme-hint-color, #999999)}.purchase-button__price-value{color:var(--tg-theme-text-color, #000000)}.purchase-button__price-value--original{text-decoration:line-through;color:var(--tg-theme-hint-color, #999999);font-size:.875rem}.purchase-button__price-value--discount{color:#34c759}.purchase-button__price-value--total{font-size:1.125rem;color:var(--tg-theme-button-color, #3390ec)}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.map-preview{position:relative;width:100%;border-radius:.75rem;overflow:hidden;background-color:var(--tg-theme-secondary-bg-color, #f8f9fa);border:1px solid var(--tg-theme-section-separator-color, #e5e5e5)}.map-preview__container{position:relative;z-index:1}.map-preview__loading{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;background-color:var(--tg-theme-secondary-bg-color, #f8f9fa);z-index:2}.map-preview__loading-spinner{width:2rem;height:2rem;border:2px solid var(--tg-theme-section-separator-color, #e5e5e5);border-top:2px solid var(--tg-theme-button-color, #3390ec);border-radius:50%;animation:spin 1s linear infinite}.map-preview__loading-text{font-size:.875rem;color:var(--tg-theme-hint-color, #999999);margin:0}.map-preview--empty{min-height:200px}.map-preview__empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:2rem;text-align:center}.map-preview__empty-icon{color:var(--tg-theme-hint-color, #999999);margin-bottom:1rem}.map-preview__empty-text{font-size:.875rem;color:var(--tg-theme-hint-color, #999999);margin:0}.map-preview--error{min-height:200px}.map-preview__error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:2rem;text-align:center;gap:1rem}.map-preview__error-state p{color:var(--tg-theme-hint-color, #999999);margin:0}.map-preview__fallback{position:relative;width:100%;height:100%}.map-preview__static-map{width:100%;height:100%;display:block}.map-preview__overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background-color:#0000004d;opacity:0;transition:opacity .2s ease}.map-preview__fallback:hover .map-preview__overlay{opacity:1}.map-preview__open-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background-color:var(--tg-theme-button-color, #3390ec);color:var(--tg-theme-button-text-color, #ffffff);border:none;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #00000026}.map-preview__open-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0003}.map-preview__open-button:active{transform:translateY(0)}.map-preview__controls{position:absolute;top:.75rem;right:.75rem;z-index:10}.map-preview__fullscreen-button{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;background-color:var(--tg-theme-bg-color, #ffffff);border:1px solid var(--tg-theme-section-separator-color, #e5e5e5);border-radius:.375rem;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #0000001a}.map-preview__fullscreen-button:hover{background-color:var(--tg-theme-secondary-bg-color, #f8f9fa);transform:scale(1.05)}.map-preview__fullscreen-button:active{transform:scale(.95)}.map-preview__fullscreen-button svg{color:var(--tg-theme-text-color, #000000)}.map-preview__info{position:absolute;bottom:0;left:0;right:0;padding:.75rem;background:linear-gradient(to top,rgba(0,0,0,.8) 0%,rgba(0,0,0,.4) 50%,transparent 100%);z-index:5}.map-preview__info-item{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:#fff;font-weight:500}.map-preview__info-item svg{flex-shrink:0}.map-preview .leaflet-container{background-color:var(--tg-theme-secondary-bg-color, #f8f9fa);font-family:inherit}.map-preview .leaflet-control-container{font-size:.75rem}.map-preview .leaflet-control-attribution{display:none}.map-preview .leaflet-popup-content-wrapper{background-color:var(--tg-theme-bg-color, #ffffff);color:var(--tg-theme-text-color, #000000);border-radius:.5rem;box-shadow:0 4px 12px #00000026}.map-preview .leaflet-popup-tip{background-color:var(--tg-theme-bg-color, #ffffff)}.map-preview .leaflet-popup-content{margin:.75rem;font-size:.875rem;line-height:1.4}.map-preview .leaflet-popup-close-button{color:var(--tg-theme-hint-color, #999999);font-size:1rem;padding:.25rem}.map-preview .leaflet-popup-close-button:hover{color:var(--tg-theme-text-color, #000000)}@media(max-width:320px){.map-preview__controls{top:.5rem;right:.5rem}.map-preview__fullscreen-button{width:1.75rem;height:1.75rem}.map-preview__fullscreen-button svg{width:14px;height:14px}.map-preview__info{padding:.5rem}.map-preview__info-item{font-size:.6875rem}}@media(min-width:428px){.map-preview__controls{top:1rem;right:1rem}.map-preview__fullscreen-button{width:2.25rem;height:2.25rem}.map-preview__info{padding:1rem}.map-preview__info-item{font-size:.875rem}}@media(prefers-contrast:high){.map-preview,.map-preview__fullscreen-button{border-width:2px}}@media(prefers-reduced-motion:reduce){.map-preview__loading-spinner{animation:none}.map-preview__fullscreen-button,.map-preview__open-button{transition:none}.map-preview__fullscreen-button:hover,.map-preview__open-button:hover,.map-preview__fullscreen-button:active,.map-preview__open-button:active{transform:none}}.step-map{position:relative;width:100%;border-radius:.5rem;overflow:hidden;background-color:var(--tg-theme-secondary-bg-color, #f8f9fa)}.step-map__container{position:relative;z-index:1}.step-map__open-button{position:absolute;bottom:.5rem;left:.5rem;right:.5rem;display:flex;align-items:center;justify-content:center;gap:.375rem;padding:.5rem;background-color:#fffffff2;color:var(--tg-theme-button-color, #3390ec);border:none;border-radius:.375rem;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #0000001a;z-index:10}.step-map__open-button:hover{background-color:var(--tg-theme-button-color, #3390ec);color:var(--tg-theme-button-text-color, #ffffff)}.step-map__open-button svg{flex-shrink:0}.step-map .leaflet-control-attribution{display:none}.step-map .leaflet-container{cursor:default}.numbered-marker{background:transparent;border:none}.numbered-marker__circle{width:32px;height:32px;background:var(--tg-theme-button-color, #0A5098);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:13px;border:3px solid #ffffff;box-shadow:0 2px 8px #0000004d}.dot-marker{background:transparent;border:none}.dot-marker__circle{width:16px;height:16px;background:var(--tg-theme-button-color, #0A5098);border-radius:50%;border:3px solid #ffffff;box-shadow:0 2px 8px #00000040}.map-preview__yandex-button{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.875rem 1rem;margin-top:.75rem;background-color:transparent;color:var(--tg-theme-button-color, #0A5098);border:2px solid var(--tg-theme-button-color, #0A5098);border-radius:.75rem;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s ease}.map-preview__yandex-button:hover{background-color:var(--tg-theme-button-color, #0A5098);color:var(--tg-theme-button-text-color, #ffffff)}.map-preview__yandex-button:active{transform:scale(.98)}.map-preview__yandex-button svg{flex-shrink:0}.excursion-page{min-height:100%;background:var(--tg-theme-grouped-bg-color);padding-bottom:calc(env(safe-area-inset-bottom,20px) + 20px)}.excursion-page__header{display:flex;align-items:center;gap:var(--spacing-md);padding:12px 16px;padding-top:max(72px,calc(env(safe-area-inset-top,0px) + 60px));background:transparent}.excursion-page__back-button{width:36px;height:36px;border:none;background:#0000000f;border-radius:50%;color:var(--tg-theme-text-color);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:all .2s cubic-bezier(.34,1.56,.64,1)}.excursion-page__back-button:active{transform:scale(.88);background:#0000001a}.excursion-page__title{flex:1;font-size:17px;font-weight:600;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#1a1a1a}.excursion-page__content{padding:12px;display:flex;flex-direction:column;gap:16px}.excursion-page__gallery{border-radius:20px;overflow:hidden;background:var(--card-bg);border:1px solid var(--card-border);box-shadow:var(--card-shadow);padding:8px}.excursion-page__main-image{position:relative;aspect-ratio:1 / 1;border-radius:18px;overflow:hidden;background:linear-gradient(135deg,#00000008,#0000000f)}.excursion-page__image{width:100%;height:100%;object-fit:cover}.excursion-page__purchased-badge{position:absolute;top:16px;left:16px;display:flex;align-items:center;gap:8px;padding:10px 16px;background:#34c759;color:#fff;font-size:14px;font-weight:600;border-radius:20px;box-shadow:0 2px 8px #34c7594d}.excursion-page__thumbnails{display:flex;gap:10px;padding:12px 8px 8px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.excursion-page__thumbnails::-webkit-scrollbar{display:none}.excursion-page__thumbnail{width:60px;height:60px;border:none;border-radius:14px;overflow:hidden;cursor:pointer;flex-shrink:0;opacity:.5;transition:all .25s cubic-bezier(.34,1.56,.64,1);padding:0}.excursion-page__thumbnail.active{opacity:1;box-shadow:0 0 0 3px var(--tg-theme-accent-color)}.excursion-page__thumbnail:active{transform:scale(.92)}.excursion-page__thumbnail img{width:100%;height:100%;object-fit:cover}.excursion-page__info{padding:24px;background:var(--card-bg);border-radius:20px;border:1px solid var(--card-border);box-shadow:var(--card-shadow)}.excursion-page__actions{display:flex;flex-direction:column;gap:14px}.excursion-page__listen-button{width:100%;display:flex;align-items:center;justify-content:center;gap:12px;padding:20px 28px;background:#0a5098;color:#fff;border:none;border-radius:50px;font-size:18px;font-weight:600;cursor:pointer;min-height:56px;transition:all .25s cubic-bezier(.34,1.56,.64,1);box-shadow:0 4px 16px #0a509840;letter-spacing:-.2px}.excursion-page__listen-button:active{transform:scale(.97);box-shadow:0 2px 8px #0000001a}.excursion-page__listen-button svg{fill:currentColor}.excursion-page__purchase-section{display:flex;flex-direction:column;gap:16px}.excursion-page__price{text-align:center;padding:12px 0}.excursion-page__price-amount{font-size:36px;font-weight:700;color:var(--tg-theme-accent-color);letter-spacing:-1px}.excursion-page__description{padding:24px;background:var(--card-bg);border-radius:20px;border:1px solid var(--card-border);box-shadow:var(--card-shadow)}.excursion-page__section-title{font-size:22px;font-weight:700;margin:0 0 16px;color:#1a1a1a;letter-spacing:-.4px}.excursion-page__description-content{font-size:16px;line-height:1.6;color:#8e8e93}.excursion-page__paragraph{margin:0 0 14px}.excursion-page__paragraph:last-child{margin-bottom:0}.excursion-page__map-section,.excursion-page__steps{padding:24px;background:var(--card-bg);border-radius:20px;border:1px solid var(--card-border);box-shadow:var(--card-shadow)}.excursion-page__steps-list{display:flex;flex-direction:column;gap:6px}.excursion-page__step{display:flex;align-items:center;gap:16px;padding:16px 0;position:relative;width:100%;background:none;border:none;font-family:inherit;text-align:left}.excursion-page__step:not(:last-child){border-bottom:1px solid var(--tg-theme-separator-color)}.excursion-page__step:disabled{cursor:default}.excursion-page__step-number{width:32px;height:32px;border-radius:50%;background:#0a5098;color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;flex-shrink:0;box-shadow:0 2px 8px #0a509840}.excursion-page__step-content{flex:1;min-width:0}.excursion-page__step-name{font-size:16px;font-weight:500;margin:0;color:#1a1a1a;line-height:1.35;text-align:left}.excursion-page__step--clickable{cursor:pointer}.excursion-page__step--clickable:active{background:#0000000a}.excursion-page__step--completed .excursion-page__step-name{color:var(--tg-theme-secondary-text-color)}.excursion-page__step-number--completed{background:#34c759!important;color:#fff!important}.excursion-page__step-number--completed svg{width:16px;height:16px}.excursion-page__step-arrow{width:20px;height:20px;color:var(--tg-theme-secondary-text-color);flex-shrink:0}.excursion-page__step-arrow svg{width:20px;height:20px}.excursion-page__progress{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.excursion-page__progress-bar{height:6px;background:#00000026;border-radius:3px;overflow:hidden}.excursion-page__progress-fill{height:100%;background:#34c759;border-radius:3px;transition:width .3s ease}.excursion-page__progress-text{font-size:13px;color:var(--tg-theme-secondary-text-color);text-align:center}.excursion-page__error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 24px;text-align:center}.excursion-page__error-icon{width:80px;height:80px;border-radius:50%;background:#e07a7a26;display:flex;align-items:center;justify-content:center;margin-bottom:24px;color:var(--tg-theme-destructive-color)}.excursion-page__error-title{font-size:22px;font-weight:700;margin:0 0 10px;color:var(--tg-theme-text-color)}.excursion-page__error-message{font-size:16px;color:var(--tg-theme-secondary-text-color);margin:0 0 28px;max-width:300px;line-height:1.5}.button-primary{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:20px 28px;background:#0a5098;color:#fff;border:none;border-radius:50px;font-size:18px;font-weight:600;cursor:pointer;min-height:56px;transition:all .25s cubic-bezier(.34,1.56,.64,1);box-shadow:0 4px 16px #0a509840}.button-primary:active{transform:scale(.97)}.gift-flow{padding:1.5rem;background-color:var(--tg-theme-bg-color, #ffffff);border-radius:1rem}.gift-flow__header{text-align:center;margin-bottom:1.5rem}.gift-flow__icon{font-size:3rem;margin-bottom:.75rem}.gift-flow__title{font-size:1.25rem;font-weight:600;color:var(--tg-theme-text-color, #000000);margin:0 0 .5rem}.gift-flow__subtitle{font-size:.875rem;color:var(--tg-theme-hint-color, #999999);margin:0}.gift-flow__form{display:flex;flex-direction:column;gap:1.25rem}.gift-flow__field{display:flex;flex-direction:column;gap:.5rem}.gift-flow__label{font-size:.875rem;font-weight:500;color:var(--tg-theme-text-color, #000000)}.gift-flow__input-wrapper{display:flex;align-items:center;background-color:var(--tg-theme-secondary-bg-color, #f8f9fa);border:1px solid var(--tg-theme-section-separator-color, #e5e5e5);border-radius:.5rem;overflow:hidden;transition:border-color .2s ease}.gift-flow__input-wrapper:focus-within{border-color:var(--tg-theme-button-color, #3390ec)}.gift-flow__input-prefix{padding:.75rem;color:var(--tg-theme-hint-color, #999999);background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border-right:1px solid var(--tg-theme-section-separator-color, #e5e5e5)}.gift-flow__input{flex:1;padding:.75rem;font-size:1rem;border:none;background:transparent;color:var(--tg-theme-text-color, #000000);outline:none}.gift-flow__input::placeholder{color:var(--tg-theme-hint-color, #999999)}.gift-flow__textarea{padding:.75rem;font-size:1rem;border:1px solid var(--tg-theme-section-separator-color, #e5e5e5);border-radius:.5rem;background-color:var(--tg-theme-secondary-bg-color, #f8f9fa);color:var(--tg-theme-text-color, #000000);resize:none;outline:none;font-family:inherit;transition:border-color .2s ease}.gift-flow__textarea:focus{border-color:var(--tg-theme-button-color, #3390ec)}.gift-flow__textarea::placeholder{color:var(--tg-theme-hint-color, #999999)}.gift-flow__hint{font-size:.75rem;color:var(--tg-theme-hint-color, #999999);margin:0}.gift-flow__error{display:flex;align-items:center;gap:.5rem;padding:.75rem;background-color:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;color:#dc2626;font-size:.875rem}.gift-flow__error svg{flex-shrink:0}.gift-flow__actions{display:flex;gap:.75rem;margin-top:.5rem}.gift-flow__button{flex:1;padding:.875rem 1rem;font-size:1rem;font-weight:500;border:none;border-radius:.5rem;cursor:pointer;transition:all .2s ease}.gift-flow__button--primary{background-color:var(--tg-theme-button-color, #3390ec);color:var(--tg-theme-button-text-color, #ffffff)}.gift-flow__button--primary:hover:not(:disabled){filter:brightness(1.1)}.gift-flow__button--primary:disabled{opacity:.5;cursor:not-allowed}.gift-flow__button--secondary{background-color:var(--tg-theme-secondary-bg-color, #f8f9fa);color:var(--tg-theme-text-color, #000000)}.gift-flow__button--secondary:hover{background-color:var(--tg-theme-section-separator-color, #e5e5e5)}.gift-flow__summary{display:flex;flex-direction:column;gap:.75rem;padding:1rem;background-color:var(--tg-theme-secondary-bg-color, #f8f9fa);border-radius:.75rem;margin-bottom:1.5rem}.gift-flow__summary-item{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.gift-flow__summary-label{font-size:.875rem;color:var(--tg-theme-hint-color, #999999);flex-shrink:0}.gift-flow__summary-value{font-size:.875rem;color:var(--tg-theme-text-color, #000000);text-align:right;word-break:break-word}.gift-flow__summary-message{font-style:italic;max-width:200px}.gift-flow__summary-item--total{padding-top:.75rem;border-top:1px solid var(--tg-theme-section-separator-color, #e5e5e5)}.gift-flow__summary-item--total .gift-flow__summary-label,.gift-flow__summary-item--total .gift-flow__summary-value{font-weight:600;font-size:1rem}.gift-flow__processing{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;gap:1rem}.gift-flow__spinner{width:2.5rem;height:2.5rem;border:3px solid var(--tg-theme-section-separator-color, #e5e5e5);border-top-color:var(--tg-theme-button-color, #3390ec);border-radius:50%;animation:gift-spin 1s linear infinite}@keyframes gift-spin{to{transform:rotate(360deg)}}.gift-flow__processing p{color:var(--tg-theme-hint-color, #999999);margin:0}.gift-flow__result{display:flex;flex-direction:column;align-items:center;text-align:center;padding:2rem 1rem}.gift-flow__result-icon{font-size:4rem;margin-bottom:1rem}.gift-flow__result-title{font-size:1.25rem;font-weight:600;color:var(--tg-theme-text-color, #000000);margin:0 0 .75rem}.gift-flow__result-text{font-size:.875rem;color:var(--tg-theme-hint-color, #999999);margin:0 0 1.5rem;line-height:1.5}.gift-flow__result--success .gift-flow__result-title{color:#16a34a}.gift-flow__result--error .gift-flow__result-title{color:#dc2626}@media(max-width:320px){.gift-flow{padding:1rem}.gift-flow__icon{font-size:2.5rem}.gift-flow__title{font-size:1.125rem}.gift-flow__actions{flex-direction:column}}.audio-controls{display:flex;flex-direction:column;gap:1rem;align-items:center}.audio-controls__primary,.audio-controls__secondary{display:flex;align-items:center;justify-content:center;gap:1rem}.control-button{display:flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:var(--tg-theme-button-color, #007aff);color:var(--tg-theme-button-text-color, #ffffff);cursor:pointer;transition:all .2s ease;position:relative;font-weight:500}.control-button:hover:not(.control-button--disabled){transform:scale(1.05);opacity:.9}.control-button:active:not(.control-button--disabled){transform:scale(.95)}.control-button--disabled{opacity:.4;cursor:not-allowed;background:var(--tg-theme-hint-color, #999999)}.control-button--play-pause{width:64px;height:64px;font-size:1.5rem}.control-button--step,.control-button--skip{width:48px;height:48px;background:var(--tg-theme-secondary-bg-color, #f2f2f7);color:var(--tg-theme-text-color, #000000)}.skip-label{position:absolute;bottom:2px;font-size:.625rem;font-weight:600;line-height:1}.speed-control{position:relative}.control-button--speed{width:48px;height:32px;border-radius:16px;background:var(--tg-theme-secondary-bg-color, #f2f2f7);color:var(--tg-theme-text-color, #000000);font-size:.875rem;font-weight:600}.speed-menu{position:fixed;inset:0;z-index:1000;display:flex;align-items:flex-end;justify-content:center}.speed-menu__backdrop{position:absolute;inset:0;background:#0000004d;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.speed-menu__content{position:relative;background:var(--tg-theme-bg-color, #ffffff);border-radius:12px 12px 0 0;padding:1.5rem;width:100%;max-width:400px;box-shadow:0 -4px 20px #00000026;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.speed-menu__header{font-size:1.125rem;font-weight:600;color:var(--tg-theme-text-color, #000000);text-align:center;margin-bottom:1rem}.speed-menu__options{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.speed-option{display:flex;align-items:center;justify-content:center;padding:.75rem;border:2px solid var(--tg-theme-secondary-bg-color, #f2f2f7);border-radius:8px;background:var(--tg-theme-secondary-bg-color, #f2f2f7);color:var(--tg-theme-text-color, #000000);font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.speed-option:hover{transform:scale(1.02)}.speed-option--active{border-color:var(--tg-theme-button-color, #007aff);background:var(--tg-theme-button-color, #007aff);color:var(--tg-theme-button-text-color, #ffffff)}@media(max-width:375px){.audio-controls__primary{gap:.75rem}.control-button--play-pause{width:56px;height:56px}.control-button--step,.control-button--skip{width:44px;height:44px}.speed-menu__content{padding:1rem}.speed-menu__options{grid-template-columns:repeat(2,1fr)}}.step-list{background:var(--tg-theme-secondary-bg-color, #f2f2f7);border-radius:12px;overflow:hidden}.step-list__header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid var(--tg-theme-separator-color, rgba(0, 0, 0, .1));background:var(--tg-theme-bg-color, #ffffff)}.step-list__title{font-size:1rem;font-weight:600;color:var(--tg-theme-text-color, #000000);margin:0}.step-list__meta{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem;font-size:.75rem;color:var(--tg-theme-hint-color, #999999)}.step-count,.total-duration{font-variant-numeric:tabular-nums}.step-list__items{max-height:300px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--tg-theme-hint-color, #999999) transparent}.step-list__items::-webkit-scrollbar{width:4px}.step-list__items::-webkit-scrollbar-track{background:transparent}.step-list__items::-webkit-scrollbar-thumb{background:var(--tg-theme-hint-color, #999999);border-radius:2px}.step-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border:none;background:transparent;width:100%;text-align:left;cursor:pointer;transition:background-color .2s ease;position:relative}.step-item:hover{background:var(--tg-theme-bg-color, #ffffff)}.step-item:not(:last-child){border-bottom:1px solid var(--tg-theme-separator-color, rgba(0, 0, 0, .05))}.step-item--current{background:var(--tg-theme-bg-color, #ffffff);border-left:3px solid var(--tg-theme-button-color, #007aff)}.step-item--played{opacity:.7}.step-item__icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;flex-shrink:0;transition:all .2s ease}.step-item--current .step-item__icon{background:var(--tg-theme-button-color, #007aff);color:var(--tg-theme-button-text-color, #ffffff)}.step-item--played .step-item__icon{background:var(--tg-theme-accent-text-color, #007aff);color:var(--tg-theme-button-text-color, #ffffff)}.step-item--upcoming .step-item__icon{background:var(--tg-theme-hint-color, #999999);color:var(--tg-theme-button-text-color, #ffffff)}.step-number-circle{font-size:.75rem;font-weight:600;line-height:1}.step-item__content{flex:1;min-width:0}.step-item__header{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.25rem}.step-item__name{font-size:.875rem;font-weight:500;color:var(--tg-theme-text-color, #000000);margin:0;line-height:1.3;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.step-item__duration{font-size:.75rem;color:var(--tg-theme-hint-color, #999999);font-variant-numeric:tabular-nums;flex-shrink:0}.step-item__meta{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.step-item__order{font-size:.75rem;color:var(--tg-theme-hint-color, #999999)}.step-item__status{font-size:.75rem;font-weight:500;color:var(--tg-theme-button-color, #007aff)}.step-item__progress{position:absolute;right:1rem;top:50%;transform:translateY(-50%)}.progress-pulse{width:8px;height:8px;border-radius:50%;background:var(--tg-theme-button-color, #007aff);animation:pulse 2s infinite}@keyframes pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.step-list__footer{padding:1rem;background:var(--tg-theme-bg-color, #ffffff);border-top:1px solid var(--tg-theme-separator-color, rgba(0, 0, 0, .1))}.progress-summary{display:flex;flex-direction:column;gap:.5rem}.progress-text{font-size:.75rem;color:var(--tg-theme-hint-color, #999999);text-align:center}.progress-bar-mini{height:3px;background:var(--tg-theme-separator-color, rgba(0, 0, 0, .1));border-radius:1.5px;overflow:hidden}.progress-bar-mini__fill{height:100%;background:var(--tg-theme-button-color, #007aff);border-radius:1.5px;transition:width .3s ease}@media(max-width:375px){.step-list__header{padding:.75rem}.step-item{padding:.75rem;gap:.5rem}.step-item__icon{width:28px;height:28px}.step-number-circle{font-size:.6875rem}.step-item__name{font-size:.8125rem}.step-list__footer{padding:.75rem}}.audio-player{background:var(--tg-theme-bg-color, #ffffff);border-radius:12px;padding:1rem;box-shadow:0 2px 8px #0000001a;max-width:100%}.audio-player__error{margin-bottom:1rem}.error-message{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#ff3b301a;border:1px solid rgba(255,59,48,.2);border-radius:8px;color:var(--tg-theme-destructive-text-color, #ff3b30);font-size:.875rem}.error-icon{font-size:1rem}.audio-player__main{margin-bottom:1.5rem}.audio-player__step-info{margin-bottom:1rem}.step-info__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem;gap:1rem}.step-info__title{font-size:1.125rem;font-weight:600;color:var(--tg-theme-text-color, #000000);margin:0;line-height:1.4;flex:1}.step-info__meta{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem;flex-shrink:0}.step-number{font-size:.875rem;color:var(--tg-theme-hint-color, #999999);font-weight:500}.loading-indicator{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--tg-theme-hint-color, #999999)}.loading-spinner{width:12px;height:12px;border:2px solid var(--tg-theme-hint-color, #999999);border-top:2px solid var(--tg-theme-button-color, #007aff);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.audio-player__progress{margin-bottom:.5rem}.progress-bar{position:relative;height:4px;background:var(--tg-theme-secondary-bg-color, #f2f2f7);border-radius:2px;margin-bottom:.5rem;overflow:hidden}.progress-bar__fill{height:100%;background:var(--tg-theme-button-color, #007aff);border-radius:2px;transition:width .1s ease}.progress-bar__slider{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;margin:0}.progress-bar__slider:disabled{cursor:not-allowed}.progress-time{display:flex;justify-content:space-between;align-items:center;font-size:.75rem;color:var(--tg-theme-hint-color, #999999);font-variant-numeric:tabular-nums}.time-separator{margin:0 .25rem}@media(max-width:375px){.audio-player{padding:.75rem}.step-info__header{flex-direction:column;align-items:flex-start;gap:.5rem}.step-info__meta{align-items:flex-start}.step-info__title{font-size:1rem}}.step-navigation{display:flex;flex-direction:column;gap:1rem;padding:1rem;background-color:var(--tg-theme-bg-color, #ffffff);border-radius:1rem}.step-navigation__indicators{display:flex;justify-content:center;gap:.5rem;padding:.5rem 0}.step-navigation__indicator{width:8px;height:8px;border-radius:50%;border:none;padding:0;background-color:var(--tg-theme-section-separator-color, #e5e5e5);cursor:pointer;transition:all .2s ease}.step-navigation__indicator--completed{background-color:var(--tg-theme-button-color, #3390ec);opacity:.5}.step-navigation__indicator--active{width:24px;border-radius:4px;background-color:var(--tg-theme-button-color, #3390ec);opacity:1}.step-navigation__indicator:hover{transform:scale(1.2)}.step-navigation__content{touch-action:pan-y;-webkit-user-select:none;user-select:none;cursor:grab}.step-navigation__content:active{cursor:grabbing}.step-navigation__step{display:flex;flex-direction:column;gap:.75rem}.step-navigation__step-header{display:flex;flex-direction:column;gap:.25rem}.step-navigation__step-number{font-size:.75rem;font-weight:500;color:var(--tg-theme-button-color, #3390ec);text-transform:uppercase;letter-spacing:.05em}.step-navigation__step-title{font-size:1.125rem;font-weight:600;color:var(--tg-theme-text-color, #000000);margin:0;line-height:1.3}.step-navigation__step-description{font-size:.875rem;color:var(--tg-theme-hint-color, #999999);margin:0;line-height:1.5}.step-navigation__map{margin-top:.5rem;border-radius:.75rem;overflow:hidden}.step-navigation__buttons{display:flex;justify-content:space-between;gap:1rem;margin-top:.5rem}.step-navigation__button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.875rem;font-weight:500;border:none;border-radius:.5rem;cursor:pointer;transition:all .2s ease;background-color:var(--tg-theme-secondary-bg-color, #f8f9fa);color:var(--tg-theme-text-color, #000000)}.step-navigation__button:hover:not(:disabled){background-color:var(--tg-theme-section-separator-color, #e5e5e5)}.step-navigation__button:disabled{opacity:.4;cursor:not-allowed}.step-navigation__button--prev{padding-left:.75rem}.step-navigation__button--next{padding-right:.75rem;margin-left:auto;background-color:var(--tg-theme-button-color, #3390ec);color:var(--tg-theme-button-text-color, #ffffff)}.step-navigation__button--next:hover:not(:disabled){filter:brightness(1.1)}.step-navigation__button svg{flex-shrink:0}.step-navigation__hint{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem;font-size:.75rem;color:var(--tg-theme-hint-color, #999999);animation:hint-pulse 2s ease-in-out infinite}@keyframes hint-pulse{0%,to{opacity:.5}50%{opacity:1}}.step-navigation__hint svg{animation:hint-slide 1.5s ease-in-out infinite}@keyframes hint-slide{0%,to{transform:translate(0)}50%{transform:translate(-4px)}}@media(max-width:320px){.step-navigation{padding:.75rem;gap:.75rem}.step-navigation__step-title{font-size:1rem}.step-navigation__button{padding:.625rem .75rem;font-size:.8125rem}.step-navigation__button span{display:none}}@media(prefers-reduced-motion:reduce){.step-navigation__content{transition:none}.step-navigation__hint{animation:none}.step-navigation__hint svg{animation:none}}.step-gallery{display:flex;flex-direction:column;gap:.5rem}.step-gallery__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.step-gallery__grid:has(.step-gallery__thumbnail:only-child){grid-template-columns:1fr}.step-gallery__thumbnail{position:relative;aspect-ratio:4/3;border:none;padding:0;border-radius:.5rem;overflow:hidden;cursor:pointer;background-color:var(--tg-theme-secondary-bg-color, #f8f9fa);transition:transform .2s ease}.step-gallery__thumbnail:hover{transform:scale(1.02)}.step-gallery__thumbnail:active{transform:scale(.98)}.step-gallery__thumbnail img{width:100%;height:100%;object-fit:cover}.step-gallery__thumbnail--more:after{content:"";position:absolute;inset:0;background-color:#00000080}.step-gallery__more-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:600;color:#fff;z-index:1}.step-gallery__caption{font-size:.75rem;color:var(--tg-theme-hint-color, #999999);margin:0;line-height:1.4}.step-gallery__lightbox{position:fixed;inset:0;z-index:1000;display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:#000000f2;animation:lightbox-fade-in .2s ease-out}@keyframes lightbox-fade-in{0%{opacity:0}to{opacity:1}}.step-gallery__lightbox-close{position:absolute;top:1rem;right:1rem;z-index:10;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:none;border-radius:50%;background-color:#ffffff1a;color:#fff;cursor:pointer;transition:background-color .2s ease}.step-gallery__lightbox-close:hover{background-color:#fff3}.step-gallery__lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:10;display:flex;align-items:center;justify-content:center;width:3rem;height:3rem;border:none;border-radius:50%;background-color:#ffffff1a;color:#fff;cursor:pointer;transition:all .2s ease}.step-gallery__lightbox-nav:hover:not(:disabled){background-color:#fff3}.step-gallery__lightbox-nav:disabled{opacity:.3;cursor:not-allowed}.step-gallery__lightbox-nav--prev{left:1rem}.step-gallery__lightbox-nav--next{right:1rem}.step-gallery__lightbox-content{flex:1;display:flex;align-items:center;justify-content:center;width:100%;padding:4rem 1rem 2rem;overflow:hidden}.step-gallery__lightbox-image,.step-gallery__lightbox-video{max-width:100%;max-height:100%;object-fit:contain;border-radius:.5rem}.step-gallery__lightbox-video{background-color:#000}.step-gallery__lightbox-footer{position:absolute;bottom:4rem;left:0;right:0;display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:0 1rem}.step-gallery__lightbox-caption{max-width:600px;font-size:.875rem;color:#fffc;text-align:center;margin:0;line-height:1.5}.step-gallery__lightbox-counter{font-size:.75rem;color:#fff9}.step-gallery__lightbox-dots{position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%);display:flex;gap:.5rem}.step-gallery__lightbox-dot{width:8px;height:8px;border:none;border-radius:50%;padding:0;background-color:#ffffff4d;cursor:pointer;transition:all .2s ease}.step-gallery__lightbox-dot:hover{background-color:#ffffff80}.step-gallery__lightbox-dot--active{width:24px;border-radius:4px;background-color:#fff}@media(max-width:480px){.step-gallery__lightbox-nav{display:none}.step-gallery__lightbox-content{padding:3rem .5rem 6rem}.step-gallery__lightbox-close{top:.5rem;right:.5rem;width:2rem;height:2rem}}@media(prefers-reduced-motion:reduce){.step-gallery__lightbox{animation:none}.step-gallery__thumbnail:hover{transform:none}}.offline-library{display:flex;flex-direction:column;gap:16px;padding:16px;max-width:800px;margin:0 auto}.offline-library__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.offline-library__header h2{margin:0;color:var(--tg-theme-text-color, #000000);font-size:24px;font-weight:600}.offline-library__refresh-btn{background:none;border:none;font-size:20px;cursor:pointer;padding:8px;border-radius:50%;color:var(--tg-theme-button-color, #007aff);transition:all .2s ease}.offline-library__refresh-btn:hover{background:var(--tg-theme-secondary-bg-color, #f1f1f1);transform:rotate(180deg)}.storage-usage{background:var(--tg-theme-secondary-bg-color, #f8f9fa);border-radius:12px;padding:16px;border:1px solid var(--tg-theme-section-separator-color, #e1e1e1)}.storage-usage__info{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.storage-usage__label{font-weight:500;color:var(--tg-theme-text-color, #000000)}.storage-usage__value{font-weight:600;color:var(--tg-theme-text-color, #000000)}.storage-usage__quota{color:var(--tg-theme-hint-color, #999999);font-weight:400}.storage-usage__bar{width:100%;height:6px;background:var(--tg-theme-section-separator-color, #e1e1e1);border-radius:3px;overflow:hidden}.storage-usage__fill{height:100%;background:var(--tg-theme-button-color, #007aff);border-radius:3px;transition:width .3s ease}.offline-library__error{display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--tg-theme-destructive-text-color, #ff3b30);color:var(--tg-theme-button-text-color, #ffffff);border-radius:8px;font-size:14px}.offline-library__error-icon{font-size:16px}.offline-library__actions{display:flex;justify-content:flex-end}.offline-library__clear-btn{background:var(--tg-theme-destructive-text-color, #ff3b30);color:var(--tg-theme-button-text-color, #ffffff);border:none;padding:8px 16px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.offline-library__clear-btn:hover{background:var(--tg-theme-destructive-text-color, #cc2e24);transform:translateY(-1px)}.offline-library__empty{text-align:center;padding:48px 24px;color:var(--tg-theme-hint-color, #999999)}.offline-library__empty-icon{font-size:48px;margin-bottom:16px}.offline-library__empty h3{margin:0 0 8px;color:var(--tg-theme-text-color, #000000);font-size:18px;font-weight:600}.offline-library__empty p{margin:0;font-size:14px;line-height:1.4}.offline-library__list{display:flex;flex-direction:column;gap:16px}.offline-excursion-card{display:flex;background:var(--tg-theme-bg-color, #ffffff);border:1px solid var(--tg-theme-section-separator-color, #e1e1e1);border-radius:12px;overflow:hidden;transition:all .2s ease}.offline-excursion-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.offline-excursion-card__image{width:120px;height:120px;flex-shrink:0;overflow:hidden}.offline-excursion-card__image img{width:100%;height:100%;object-fit:cover}.offline-excursion-card__content{flex:1;padding:16px;display:flex;flex-direction:column;gap:8px}.offline-excursion-card__header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.offline-excursion-card__title{margin:0;font-size:16px;font-weight:600;color:var(--tg-theme-text-color, #000000);line-height:1.3;flex:1}.offline-excursion-card__delete-btn{background:none;border:none;font-size:16px;cursor:pointer;padding:4px;border-radius:4px;color:var(--tg-theme-destructive-text-color, #ff3b30);transition:all .2s ease;flex-shrink:0}.offline-excursion-card__delete-btn:hover:not(:disabled){background:var(--tg-theme-secondary-bg-color, #f1f1f1);transform:scale(1.1)}.offline-excursion-card__delete-btn:disabled{opacity:.6;cursor:not-allowed}.offline-excursion-card__author{margin:0;font-size:14px;color:var(--tg-theme-hint-color, #999999);font-weight:500}.offline-excursion-card__description{margin:0;font-size:14px;color:var(--tg-theme-text-color, #000000);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.offline-excursion-card__meta{display:flex;gap:12px;font-size:12px;color:var(--tg-theme-hint-color, #999999);margin-top:auto}.offline-excursion-card__footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:4px}.offline-excursion-card__downloaded{font-size:12px;color:var(--tg-theme-hint-color, #999999);flex:1}.offline-excursion-card__play-btn{background:var(--tg-theme-button-color, #007aff);color:var(--tg-theme-button-text-color, #ffffff);border:none;padding:6px 12px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:4px}.offline-excursion-card__play-btn:hover{background:var(--tg-theme-button-color, #0056cc);transform:translateY(-1px)}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.modal{background:var(--tg-theme-bg-color, #ffffff);border-radius:12px;padding:24px;max-width:400px;width:100%;box-shadow:0 8px 32px #0003}.modal h3{margin:0 0 16px;color:var(--tg-theme-text-color, #000000);font-size:18px;font-weight:600}.modal p{margin:0 0 24px;color:var(--tg-theme-text-color, #000000);font-size:14px;line-height:1.4}.modal__actions{display:flex;gap:12px;justify-content:flex-end}.modal__btn{padding:8px 16px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.modal__btn--secondary{background:var(--tg-theme-secondary-bg-color, #f1f1f1);color:var(--tg-theme-text-color, #000000)}.modal__btn--secondary:hover{background:var(--tg-theme-secondary-bg-color, #e1e1e1)}.modal__btn--danger{background:var(--tg-theme-destructive-text-color, #ff3b30);color:var(--tg-theme-button-text-color, #ffffff)}.modal__btn--danger:hover:not(:disabled){background:var(--tg-theme-destructive-text-color, #cc2e24)}.modal__btn:disabled{opacity:.6;cursor:not-allowed}@media(max-width:480px){.offline-library{padding:12px}.offline-excursion-card{flex-direction:column}.offline-excursion-card__image{width:100%;height:160px}.offline-excursion-card__content{padding:12px}.offline-excursion-card__meta{flex-wrap:wrap;gap:8px}.offline-excursion-card__footer{flex-direction:column;align-items:stretch;gap:8px}.offline-excursion-card__play-btn{justify-content:center}.modal{padding:20px;margin:16px}.modal__actions{flex-direction:column;gap:8px}.modal__btn{width:100%;padding:12px}}.download-progress{padding:1.25rem;background-color:var(--tg-theme-bg-color, #ffffff);border:1px solid var(--tg-theme-section-separator-color, #e5e5e5);border-radius:1rem}.download-progress__header{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:1rem}.download-progress__icon{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background-color:var(--tg-theme-button-color, #3390ec);border-radius:.75rem;flex-shrink:0}.download-progress__icon-svg{color:var(--tg-theme-button-text-color, #ffffff);animation:download-bounce 1s ease-in-out infinite}@keyframes download-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(2px)}}.download-progress__info{flex:1;min-width:0}.download-progress__title{font-size:.875rem;font-weight:600;color:var(--tg-theme-text-color, #000000);margin:0 0 .25rem}.download-progress__excursion{font-size:.8125rem;color:var(--tg-theme-hint-color, #999999);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.download-progress__bar-container{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.download-progress__bar{flex:1;height:8px;background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border-radius:4px;overflow:hidden}.download-progress__bar-fill{height:100%;background-color:var(--tg-theme-button-color, #3390ec);border-radius:4px;transition:width .3s ease-out}.download-progress__percentage{font-size:.875rem;font-weight:600;color:var(--tg-theme-button-color, #3390ec);min-width:40px;text-align:right}.download-progress__stats{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem 1rem;margin-bottom:1rem}.download-progress__stat{display:flex;justify-content:space-between;align-items:center}.download-progress__stat-label{font-size:.75rem;color:var(--tg-theme-hint-color, #999999)}.download-progress__stat-value{font-size:.75rem;font-weight:500;color:var(--tg-theme-text-color, #000000)}.download-progress__current-step{font-size:.75rem;color:var(--tg-theme-hint-color, #999999);margin:0 0 1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.download-progress__cancel{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.75rem;font-size:.875rem;font-weight:500;color:#dc2626;background-color:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;cursor:pointer;transition:all .2s ease}.download-progress__cancel:hover{background-color:#fee2e2}.download-progress__cancel:active{transform:scale(.98)}.download-progress-inline{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background-color:var(--tg-theme-secondary-bg-color, #f8f9fa);border-radius:.5rem}.download-progress-inline__bar{flex:1;height:4px;background-color:var(--tg-theme-section-separator-color, #e5e5e5);border-radius:2px;overflow:hidden}.download-progress-inline__bar-fill{height:100%;background-color:var(--tg-theme-button-color, #3390ec);border-radius:2px;transition:width .3s ease-out}.download-progress-inline__text{font-size:.75rem;color:var(--tg-theme-hint-color, #999999);white-space:nowrap}.download-progress-inline__cancel{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;padding:0;border:none;border-radius:50%;background-color:transparent;color:var(--tg-theme-hint-color, #999999);cursor:pointer;transition:all .2s ease}.download-progress-inline__cancel:hover{background-color:#fef2f2;color:#dc2626}@media(max-width:320px){.download-progress{padding:1rem}.download-progress__stats{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.download-progress__icon-svg{animation:none}.download-progress__bar-fill,.download-progress-inline__bar-fill{transition:none}}.app-header{background:var(--tg-theme-grouped-bg-color, #F9F7F3);padding-top:calc(env(safe-area-inset-top,0px) + 48px)}.app-header__content{display:flex;align-items:center;gap:12px;padding:16px;max-width:100%}.app-header__logo{width:40px;height:40px;flex-shrink:0}.app-header__logo-img{width:100%;height:100%;object-fit:contain;border-radius:10px}.app-header__title{font-size:22px;font-weight:700;color:#1a1a1a;margin:0;letter-spacing:-.4px}.pl{position:fixed;inset:0;display:flex;flex-direction:column;background:var(--player-bg);color:var(--player-text);overscroll-behavior:none;touch-action:pan-x pan-y}.pl-head{display:flex;align-items:center;gap:12px;padding:12px 16px;padding-top:max(72px,calc(env(safe-area-inset-top) + 60px));flex-shrink:0;background:transparent}.pl-back{width:36px;height:36px;border:none;background:var(--player-button-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:50%;color:var(--player-text);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .2s}.pl-back:active{background:var(--player-button-active)}.pl-back svg{width:20px;height:20px}.pl-title{flex:1;font-size:15px;font-weight:600;opacity:.9;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center}.pl-num{font-size:13px;font-weight:600;background:var(--player-button-bg);padding:4px 10px;border-radius:12px}.pl-toggle{display:flex;gap:4px;justify-content:center;padding:8px 16px;flex-shrink:0;background:transparent}.pl-toggle button{padding:8px 20px;border:none;background:var(--player-button-bg);color:var(--player-text-secondary);border-radius:20px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.pl-toggle button.active{background:var(--brand-gradient);color:var(--tg-theme-button-text-color, #fff)}.pl-content{flex:1;display:flex;flex-direction:column;min-height:0}.pl-img{flex:1;display:flex;align-items:center;justify-content:center;padding:20px;position:relative;overflow:hidden}.pl-img img{max-width:100%;max-height:100%;object-fit:contain;border-radius:12px;box-shadow:0 4px 24px #0000001f}.pl-noimg{font-size:80px;opacity:.2}.pl-imgnum{position:absolute;top:24px;right:24px;background:#00000080;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:6px 12px;border-radius:14px;font-size:13px;font-weight:500}.pl-map{flex:1;min-height:0}.pl-map .leaflet-container{height:100%;width:100%;background:#1a1a1a}.pl-ctrl{background:linear-gradient(to top,var(--player-overlay-strong),var(--player-overlay));backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding:20px;padding-bottom:max(20px,calc(env(safe-area-inset-bottom) + 12px));border-radius:24px 24px 0 0;border-top:1px solid var(--player-card-border)}.pl-name{font-size:18px;font-weight:700;text-align:center;margin-bottom:4px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pl-err{background:#ff3b3026;color:#ff6b6b;padding:8px 12px;border-radius:8px;font-size:13px;text-align:center;margin:8px 0}.pl-prog{margin:16px 0;cursor:pointer}.pl-bar{height:4px;background:var(--player-progress-bg);border-radius:2px;overflow:hidden;position:relative}.pl-bar:after{content:"";position:absolute;top:50%;transform:translateY(-50%);width:12px;height:12px;background:var(--player-text);border-radius:50%;right:calc(100% - var(--progress, 0%));opacity:0;transition:opacity .2s}.pl-prog:active .pl-bar:after{opacity:1}.pl-fill{height:100%;background:var(--player-progress-fill);border-radius:2px;transition:width .1s linear}.pl-time{display:flex;justify-content:space-between;font-size:12px;color:var(--player-text-secondary);margin-top:8px;font-variant-numeric:tabular-nums}.pl-btns{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:8px;position:relative}.pl-btn{width:52px;height:52px;border:none;background:transparent;color:var(--player-text);display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:50%;transition:transform .1s,opacity .1s}.pl-btn svg{width:28px;height:28px}.pl-btn:disabled{opacity:.25}.pl-btn:active:not(:disabled){transform:scale(.9)}.pl-play{width:72px;height:72px;background:var(--player-play-bg);color:var(--tg-theme-button-text-color, #fff);box-shadow:0 4px 20px var(--player-play-shadow)}.pl-play svg{width:32px;height:32px}.pl-play:disabled{background:var(--tg-theme-fill-color);color:var(--player-text-secondary);box-shadow:none}.pl-play:active:not(:disabled){transform:scale(.95);box-shadow:0 2px 10px var(--player-play-shadow)}.pl-spd{position:absolute;right:0;min-width:48px;height:32px;padding:0 12px;border:none;background:var(--player-button-bg);border-radius:16px;color:var(--tg-theme-accent-light, #A8DADC);font-size:13px;font-weight:600;cursor:pointer;transition:background .15s}.pl-spd:active{background:var(--player-button-active)}.pl-spin{width:28px;height:28px;border:3px solid var(--player-progress-bg);border-top-color:var(--player-text);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.pl-swipe-hint{position:absolute;bottom:16px;left:50%;transform:translate(-50%);display:flex;gap:6px}.pl-swipe-dot{width:6px;height:6px;border-radius:50%;background:var(--player-progress-bg)}.pl-swipe-dot.active{background:var(--player-text)}.pl-steps-modal{position:fixed;inset:0;background:var(--player-overlay);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:100;display:flex;flex-direction:column;justify-content:flex-end}.pl-steps-sheet{background:var(--tg-theme-secondary-bg-color);border-radius:16px 16px 0 0;max-height:70vh;overflow-y:auto}.pl-steps-header{padding:16px;border-bottom:.5px solid var(--player-card-border);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:var(--tg-theme-secondary-bg-color)}.pl-steps-title{font-size:17px;font-weight:600}.pl-steps-close{width:30px;height:30px;border-radius:50%;background:var(--player-button-bg);border:none;color:var(--player-text);display:flex;align-items:center;justify-content:center;cursor:pointer}.pl-step-item{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;transition:background .15s}.pl-step-item:active{background:var(--tg-theme-tertiary-fill-color)}.pl-step-item.current{background:var(--tg-theme-fill-color)}.pl-step-num{width:28px;height:28px;border-radius:50%;background:var(--player-button-bg);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;flex-shrink:0}.pl-step-item.current .pl-step-num{background:var(--brand-gradient)}.pl-step-name{flex:1;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pl-img-slider{position:relative;width:100%;height:100%;overflow:hidden}.pl-img-slide{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;transition:transform .35s cubic-bezier(.25,.46,.45,.94),opacity .35s ease;will-change:transform,opacity}.pl-img-slide img{max-width:90%;max-height:90%;object-fit:contain;border-radius:12px;box-shadow:0 4px 24px #0000001f;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.pl-img-slide.pl-img-current{transform:translate(0);opacity:1;z-index:2}.pl-img-slide.pl-img-prev{transform:translate(-100%);opacity:0;z-index:1}.pl-img-slide.pl-img-next{transform:translate(100%);opacity:0;z-index:1}.pl-dots{position:absolute;bottom:16px;left:50%;transform:translate(-50%);display:flex;gap:6px;z-index:5}.pl-dot{width:6px;height:6px;border-radius:50%;background:var(--player-progress-bg);transition:all .2s ease}.pl-dot.active{background:var(--player-text);transform:scale(1.2)}.pl-expand-hint{position:absolute;top:16px;left:16px;width:36px;height:36px;background:var(--player-button-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--player-text);opacity:.7;cursor:pointer;z-index:5;transition:opacity .2s,transform .2s}.pl-expand-hint:active{opacity:1;transform:scale(.95)}.pl-expand-hint svg{width:18px;height:18px}.img-viewer{position:fixed;inset:0;background:#000000f2;z-index:1000;display:flex;flex-direction:column;touch-action:none}.img-viewer-close{position:absolute;top:max(56px,calc(env(safe-area-inset-top) + 44px));left:12px;width:36px;height:36px;border:none;background:var(--player-button-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:50%;color:var(--player-text);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;transition:background .2s}.img-viewer-close:active{background:var(--player-button-active)}.img-viewer-close svg{width:20px;height:20px}.img-viewer-counter{position:absolute;top:max(56px,calc(env(safe-area-inset-top) + 44px));right:16px;background:var(--player-button-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:6px 12px;border-radius:14px;font-size:13px;font-weight:500;color:var(--player-text);z-index:10}.img-viewer-content{flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.img-viewer-image{max-width:100%;max-height:100%;object-fit:contain;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;transition:transform .2s ease-out;transform-origin:center center}.img-viewer-nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border:none;background:var(--player-button-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:50%;color:var(--player-text);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;transition:background .2s,opacity .2s}.img-viewer-nav:disabled{opacity:.3;cursor:default}.img-viewer-nav:active:not(:disabled){background:var(--player-button-active)}.img-viewer-nav svg{width:24px;height:24px}.img-viewer-prev{left:12px}.img-viewer-next{right:12px}.img-viewer-dots{position:absolute;bottom:max(24px,calc(env(safe-area-inset-bottom) + 12px));left:50%;transform:translate(-50%);display:flex;gap:8px;z-index:10}.img-viewer-dot{width:8px;height:8px;border-radius:50%;background:var(--player-progress-bg);transition:all .2s ease;cursor:pointer}.img-viewer-dot.active{background:var(--player-text);transform:scale(1.25)}.img-viewer-hint{position:absolute;bottom:max(60px,calc(env(safe-area-inset-bottom) + 48px));left:50%;transform:translate(-50%);background:var(--player-button-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:8px 16px;border-radius:20px;font-size:13px;color:var(--player-text-secondary);z-index:10;animation:fadeInOut 3s ease-in-out forwards}@keyframes fadeInOut{0%{opacity:0;transform:translate(-50%) translateY(10px)}15%{opacity:1;transform:translate(-50%) translateY(0)}85%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0;transform:translate(-50%) translateY(-10px)}}@media(max-width:768px){.img-viewer-prev,.img-viewer-next{display:none}}.download-prompt-overlay{position:fixed;inset:0;background:var(--player-overlay);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.download-prompt{background:var(--tg-theme-secondary-bg-color);border:1px solid var(--player-card-border);border-radius:24px;padding:32px 24px;max-width:320px;width:100%;text-align:center;animation:promptSlideUp .3s ease-out;box-shadow:0 20px 60px #0003}@keyframes promptSlideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.download-prompt-icon{width:72px;height:72px;margin:0 auto 20px;background:var(--player-play-bg);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px var(--player-play-shadow)}.download-prompt-icon svg{width:36px;height:36px;color:var(--tg-theme-button-text-color, #fff)}.download-prompt-icon.downloading svg{animation:downloadBounce 1s ease-in-out infinite}@keyframes downloadBounce{0%,to{transform:translateY(0)}50%{transform:translateY(4px)}}.download-prompt-title{font-size:22px;font-weight:700;color:var(--tg-theme-text-color);margin:0 0 8px}.download-prompt-info{font-size:15px;color:var(--tg-theme-accent-color);margin:0 0 12px;font-weight:500}.download-prompt-desc{font-size:14px;color:var(--tg-theme-hint-color);margin:0 0 24px;line-height:1.5}.download-prompt-error{background:#e07a7a26;color:var(--tg-theme-destructive-color);padding:10px 14px;border-radius:10px;font-size:14px;margin:0 0 16px}.download-prompt-buttons{display:flex;flex-direction:column;gap:12px}.download-prompt-btn{padding:16px 20px;border:none;border-radius:14px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .1s,box-shadow .2s}.download-prompt-btn:active{transform:scale(.98)}.download-prompt-btn-primary{background:var(--player-play-bg);color:var(--tg-theme-button-text-color, #fff);box-shadow:0 4px 16px var(--player-play-shadow)}.download-prompt-btn-primary:active{box-shadow:0 2px 8px var(--player-play-shadow)}.download-prompt-btn-secondary{background:var(--player-button-bg);color:var(--tg-theme-accent-color);border:1px solid var(--player-card-border)}.download-prompt-btn-cancel{background:#e07a7a1a;color:var(--tg-theme-destructive-color);margin-top:8px}.download-prompt-progress{margin:20px 0}.download-prompt-progress-bar{height:8px;background:var(--player-progress-bg);border-radius:4px;overflow:hidden;margin-bottom:12px}.download-prompt-progress-fill{height:100%;background:var(--player-progress-fill);border-radius:4px;transition:width .3s ease-out}.download-prompt-progress-text{font-size:15px;color:var(--tg-theme-accent-color);font-variant-numeric:tabular-nums;font-weight:600}.subscription-banner{margin:0 0 16px;padding:16px 20px;background:linear-gradient(135deg,#007aff,#5856d6);border-radius:20px;box-shadow:0 4px 16px #007aff40}.subscription-banner__content{display:flex;align-items:flex-start;gap:14px;margin-bottom:16px}.subscription-banner__icon{width:40px;height:40px;border-radius:12px;background:#fff3;display:flex;align-items:center;justify-content:center;flex-shrink:0}.subscription-banner__icon svg{width:24px;height:24px;color:#fff}.subscription-banner__text{flex:1}.subscription-banner__title{margin:0 0 4px;font-size:17px;font-weight:600;color:#fff}.subscription-banner__desc{margin:0;font-size:14px;color:#ffffffd9;line-height:1.3}.subscription-banner__actions{display:flex;gap:10px}.subscription-banner__btn{flex:1;padding:12px 16px;border:none;border-radius:12px;font-family:inherit;font-size:15px;font-weight:600;cursor:pointer;transition:opacity .2s,transform .1s}.subscription-banner__btn:active{transform:scale(.97)}.subscription-banner__btn--primary{background:#fff;color:#007aff}.subscription-banner__btn--secondary{background:#fff3;color:#fff}.catalog{padding:16px 16px 120px}.catalog-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 24px;gap:20px}.exc-card{background:var(--card-bg);border-radius:20px;overflow:hidden;margin-bottom:16px;border:1px solid var(--card-border);box-shadow:var(--card-shadow);cursor:pointer;transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease}.exc-card:active{transform:scale(.98);box-shadow:0 2px 12px #0000000f}.exc-card__image{position:relative;width:calc(100% - 40px);margin:20px auto 0;aspect-ratio:1 / 1;border-radius:20px;overflow:hidden;background:linear-gradient(135deg,#0000000a,#00000014)}.exc-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .4s cubic-bezier(.34,1.56,.64,1)}.exc-card:active .exc-card__image img{transform:scale(1.02)}.exc-card__placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0000000a,#00000014)}.exc-card__placeholder svg{width:72px;height:72px;color:var(--tg-theme-secondary-text-color);opacity:.3}.exc-card__badge{position:absolute;display:inline-flex;align-items:center;gap:5px;padding:8px 12px;border-radius:20px;font-size:12px;font-weight:600;letter-spacing:.1px;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:none}.exc-card__badge svg{width:13px;height:13px}.exc-card__badge--duration{bottom:12px;left:12px;background:#0009;color:#fff}.exc-card__badge--steps{bottom:12px;right:12px;background:#0009;color:#fff}.exc-card__badge--purchased{top:12px;left:12px;background:#34c759;color:#fff;box-shadow:0 2px 8px #34c7594d;-webkit-backdrop-filter:none;backdrop-filter:none}.exc-card__content{padding:20px 20px 24px}.exc-card__title{margin:0 0 10px;font-size:22px;font-weight:700;line-height:1.2;color:#1a1a1a;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;letter-spacing:-.4px}.exc-card__desc{margin:0 0 24px;font-size:15px;line-height:1.5;color:#8e8e93;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.exc-card__actions{display:flex;flex-direction:column;gap:12px}.exc-card__btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:18px 28px;border:none;border-radius:50px;font-size:17px;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.34,1.56,.64,1);letter-spacing:-.2px}.exc-card__btn svg{width:22px;height:22px}.exc-card__btn:active{transform:scale(.96)}.exc-card__btn--primary{background:#0a5098;color:#fff;box-shadow:0 4px 16px #0a509840}.exc-card__btn--primary:active{box-shadow:0 2px 8px #0000001a}.exc-card__btn--secondary{background:#0000000f;color:#0a5098}.exc-card__btn--secondary:active{background:#0000001a}.empty-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 24px;text-align:center}.empty-state-icon,.error-state-icon{width:100px;height:100px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:24px;font-size:48px;background:#5b9aa01a;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.error-state-icon{background:#e07a7a26;color:var(--tg-theme-destructive-color);font-size:36px;font-weight:700}.empty-state-title,.error-state-title{font-size:24px;font-weight:700;margin:0 0 10px;color:var(--tg-theme-text-color);letter-spacing:-.4px}.empty-state-text,.error-state-text{font-size:16px;color:var(--tg-theme-secondary-text-color);margin:0 0 28px;max-width:300px;line-height:1.5}.section-header{font-size:15px;font-weight:600;color:var(--tg-theme-secondary-text-color);padding:24px 8px 12px;text-transform:uppercase;letter-spacing:.5px}.free-excursions{margin-bottom:24px}.free-excursions__header{display:flex;align-items:center;gap:10px;margin-bottom:16px;padding:0 4px}.free-excursions__icon{font-size:24px}.free-excursions__title{font-size:20px;font-weight:600;margin:0;color:#1a1a1a}.free-excursions__success,.free-excursions__error{margin-bottom:16px;padding:12px 16px;border-radius:14px;font-size:14px;line-height:1.4}.free-excursions__success{background:#34c7591f;color:#34c759}.free-excursions__error{background:#ff3b301f;color:#ff3b30}.free-excursions__list{display:flex;flex-direction:column;gap:12px}.free-grant{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;background:var(--card-bg);border-radius:20px;border:1px solid var(--card-border);box-shadow:var(--card-shadow)}.free-grant__info{flex:1;min-width:0}.free-grant__title{margin:0 0 4px;font-size:17px;font-weight:600;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.free-grant__reason{margin:0 0 6px;font-size:14px;color:var(--tg-theme-secondary-text-color);line-height:1.3}.free-grant__expiry{display:inline-block;padding:4px 10px;border-radius:8px;background:#ff950026;color:#ff9500;font-size:12px;font-weight:500}.free-grant__btn{flex-shrink:0;min-width:90px;padding:10px 18px;border:none;border-radius:12px;background:#34c759;color:#fff;font-family:inherit;font-size:15px;font-weight:600;cursor:pointer;transition:opacity .2s,transform .1s;display:flex;align-items:center;justify-content:center}.free-grant__btn:disabled{opacity:.6;cursor:not-allowed}.free-grant__btn:not(:disabled):active{transform:scale(.96)}.free-grant__btn .spinner-sm{width:18px;height:18px;border-width:2px;border-color:#ffffff4d;border-top-color:#fff}.library{padding:16px 0 var(--spacing-lg)}.library-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xxxl) var(--spacing-xl);gap:var(--spacing-lg)}.library-list{padding:0 var(--spacing-lg)}.library-card{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);margin-bottom:var(--spacing-md);background:var(--tg-theme-bg-color);border-radius:var(--radius-lg);cursor:pointer;transition:transform var(--duration-fast),background var(--duration-fast);position:relative}.library-card:active{transform:scale(.98);background:var(--tg-theme-fill-color)}.library-card-media{position:relative;width:72px;height:72px;border-radius:var(--radius-md);overflow:hidden;flex-shrink:0;background:var(--tg-theme-fill-color)}.library-card-media img{width:100%;height:100%;object-fit:cover}.library-card-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:28px;background:linear-gradient(135deg,#0a5098,#4a90d9)}.library-card-play-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#0000004d;opacity:0;transition:opacity var(--duration-fast)}.library-card:hover .library-card-play-overlay,.library-card:active .library-card-play-overlay{opacity:1}.library-card-play-overlay svg{width:32px;height:32px;color:#fff;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.library-card-duration{position:absolute;bottom:var(--spacing-xs);right:var(--spacing-xs);padding:2px 6px;background:#0009;color:#fff;font-size:var(--font-size-caption2);font-weight:500;border-radius:var(--radius-xs)}.library-card-content{flex:1;min-width:0}.library-card-title{font-size:var(--font-size-body);font-weight:600;margin:0 0 2px;color:var(--tg-theme-text-color);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.library-card-author{font-size:var(--font-size-footnote);color:var(--tg-theme-secondary-text-color);margin:0 0 var(--spacing-sm)}.library-card-meta{display:flex;align-items:center;gap:var(--spacing-md)}.library-card-meta-item{display:flex;align-items:center;gap:4px;font-size:var(--font-size-caption1);color:var(--tg-theme-secondary-text-color)}.library-card-meta-item svg{opacity:.6}.library-card-chevron{width:20px;height:20px;color:var(--tg-theme-tertiary-text-color);flex-shrink:0}.library-card-chevron svg{width:100%;height:100%}.library-footer{padding:var(--spacing-lg);text-align:center}.continue-section{margin-bottom:var(--spacing-xl)}.continue-card{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);margin:0 var(--spacing-lg);background:linear-gradient(135deg,#0a5098,#4a90d9);border-radius:var(--radius-lg);color:#fff;cursor:pointer;transition:transform var(--duration-fast)}.continue-card:active{transform:scale(.98)}.continue-card-media{width:56px;height:56px;border-radius:var(--radius-sm);overflow:hidden;background:#fff3;flex-shrink:0}.continue-card-media img{width:100%;height:100%;object-fit:cover}.continue-card-content{flex:1;min-width:0}.continue-card-label{font-size:var(--font-size-caption1);opacity:.8;margin-bottom:2px}.continue-card-title{font-size:var(--font-size-subheadline);font-weight:600;margin:0}.continue-card-progress{height:3px;background:#ffffff4d;border-radius:var(--radius-full);margin-top:var(--spacing-sm);overflow:hidden}.continue-card-progress-fill{height:100%;background:#fff;border-radius:var(--radius-full)}.continue-card-play{width:44px;height:44px;background:#fff3;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.continue-card-play svg{width:24px;height:24px}.settings-page{min-height:100%;padding:24px 16px;padding-bottom:calc(env(safe-area-inset-bottom,20px) + 100px)}.settings-page__title{font-size:34px;font-weight:700;margin:0 0 24px 4px;color:#1a1a1a;letter-spacing:-.5px}.settings-section{margin-bottom:32px}.settings-section__title{font-size:13px;font-weight:600;color:var(--tg-theme-secondary-text-color);text-transform:uppercase;letter-spacing:.5px;margin:0 0 12px 4px}.settings-card{background:var(--card-bg);border-radius:20px;border:1px solid var(--card-border);overflow:hidden;box-shadow:var(--card-shadow)}.settings-item{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;gap:16px}.settings-item:not(:last-child){border-bottom:1px solid rgba(0,0,0,.1)}.settings-item--column{flex-direction:column;align-items:stretch;gap:12px}.settings-item__header,.settings-item__content{display:flex;align-items:center;gap:12px}.settings-item__icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:#1a1a1a}.settings-item__icon svg{width:22px;height:22px}.settings-item__label{font-size:17px;font-weight:400;color:#1a1a1a}.settings-item__value{font-size:17px;color:var(--tg-theme-secondary-text-color)}.settings-item__desc{font-size:14px;color:var(--tg-theme-secondary-text-color);margin:0;line-height:1.4}.settings-item__left{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.settings-item__left>div{display:flex;flex-direction:column;gap:2px;min-width:0}.settings-item__sublabel{font-size:13px;color:var(--tg-theme-secondary-text-color)}.settings-toggle{position:relative;display:inline-block;width:51px;height:31px;flex-shrink:0}.settings-toggle input{opacity:0;width:0;height:0}.settings-toggle__slider{position:absolute;cursor:pointer;inset:0;background-color:#0000001f;transition:.3s;border-radius:31px}.settings-toggle__slider:before{position:absolute;content:"";height:27px;width:27px;left:2px;bottom:2px;background-color:#fff;transition:.3s;border-radius:50%;box-shadow:0 2px 4px #0003}.settings-toggle input:checked+.settings-toggle__slider{background-color:#0a5098}.settings-toggle input:checked+.settings-toggle__slider:before{transform:translate(20px)}.settings-toggle input:disabled+.settings-toggle__slider{opacity:.5;cursor:not-allowed}.settings-segmented{display:flex;background:#00000014;border-radius:10px;padding:3px;gap:2px}.settings-segmented__btn{flex:1;padding:8px 12px;border:none;background:transparent;border-radius:8px;font-family:inherit;font-size:13px;font-weight:500;color:#1a1a1a;cursor:pointer;transition:all .2s ease}.settings-segmented__btn.active{background:#fff;color:#1a1a1a;box-shadow:0 2px 8px #0000001f}.settings-radio-group{display:flex;flex-direction:column;gap:4px}.settings-radio{display:flex;align-items:center;gap:12px;padding:12px 0;cursor:pointer;transition:opacity .2s}.settings-radio:active{opacity:.7}.settings-radio input{display:none}.settings-radio__indicator{width:22px;height:22px;border-radius:50%;border:2px solid rgba(0,0,0,.3);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s ease}.settings-radio.active .settings-radio__indicator{border-color:var(--tg-theme-text-color);background:var(--tg-theme-text-color)}.settings-radio.active .settings-radio__indicator:after{content:"";width:8px;height:8px;border-radius:50%;background:#fff}.settings-radio__label{font-size:16px;color:#1a1a1a}.support-form{display:flex;flex-direction:column;gap:12px;margin-top:8px}.support-form__textarea{width:100%;padding:12px 16px;border:1px solid rgba(0,0,0,.15);border-radius:12px;background:#00000008;font-family:inherit;font-size:16px;line-height:1.4;resize:vertical;color:#1a1a1a;transition:border-color .2s,background-color .2s}.support-form__textarea::placeholder{color:var(--tg-theme-secondary-text-color)}.support-form__textarea:focus{outline:none;border-color:var(--tg-theme-text-color)}.support-form__textarea:disabled{opacity:.6}.support-form__btn{width:100%;padding:14px 20px;border:none;border-radius:50px;background:#0a5098;color:#fff;font-family:inherit;font-size:16px;font-weight:600;cursor:pointer;transition:opacity .2s,background-color .2s}.support-form__btn:disabled{opacity:.5;cursor:not-allowed}.support-form__btn:not(:disabled):active{opacity:.8}.support-form__error{margin:0;padding:10px 14px;border-radius:10px;background:#ff3b301f;color:#ff3b30;font-size:14px}.support-form__success{margin:0;padding:10px 14px;border-radius:10px;background:#34c7591f;color:#34c759;font-size:14px}.app-container{display:flex;flex-direction:column;min-height:100%;height:calc(var(--vh, 1vh) * 100);overflow:hidden;background:var(--tg-theme-grouped-bg-color)}.app-content{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 100px)}.tab-bar{position:fixed;bottom:0;left:0;right:0;z-index:100;padding:12px 20px;padding-bottom:calc(env(safe-area-inset-bottom,12px) + 12px)}.tab-bar-content{display:flex;justify-content:center;gap:4px;height:60px;max-width:320px;margin:0 auto;backdrop-filter:blur(40px) saturate(180%);-webkit-backdrop-filter:blur(40px) saturate(180%);border-radius:30px;padding:6px;background:#fff;border:1px solid rgba(0,0,0,.12);box-shadow:0 4px 20px #0000001f,0 2px 8px #00000014}.tab-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;flex:1;padding:8px 16px;color:#8e8e93;background:none;border:none;border-radius:24px;font-family:inherit;cursor:pointer;transition:all .25s cubic-bezier(.34,1.56,.64,1)}.tab-item:active{transform:scale(.92)}.tab-item.active{color:#fff;background:#0a5098;box-shadow:0 4px 12px #0a50984d}.tab-item-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center}.tab-item-icon svg{width:22px;height:22px}.tab-item-label{font-size:10px;font-weight:600;letter-spacing:.2px}.section-header{font-size:15px;font-weight:600;color:var(--tg-theme-secondary-text-color);padding:24px 20px 12px;text-transform:uppercase;letter-spacing:.5px}.badge{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border-radius:16px;font-size:12px;font-weight:600}.badge-success{background:#7dc9a0e6;color:#fff;box-shadow:0 2px 8px #7dc9a04d}.badge-accent{background:#5b9aa0e6;color:#fff;box-shadow:0 2px 8px #5b9aa04d}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.hide-scrollbar::-webkit-scrollbar{display:none}.telegram-required{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2)}.telegram-required__content{text-align:center;max-width:320px;padding:40px 30px;background:#fff;border-radius:24px;box-shadow:0 20px 60px #0000004d}.telegram-required__icon{font-size:64px;margin-bottom:20px}.telegram-required__title{font-size:24px;font-weight:700;color:#1a1a1a;margin:0 0 16px}.telegram-required__text{font-size:15px;line-height:1.5;color:#666;margin:0 0 24px}.telegram-required__button{display:inline-block;padding:14px 32px;background:#08c;color:#fff;font-size:16px;font-weight:600;text-decoration:none;border-radius:12px;transition:background .2s}.telegram-required__button:hover{background:#006daa}
