:root{--primary-50:#e3f2fd;--primary-100:#bbdefb;--primary-200:#90caf9;--primary-300:#64b5f6;--primary-400:#42a5f5;--primary-500:#229cff;--primary-600:#1e88e5;--primary-700:#1d4eff;--primary-800:#1565c0;--primary-900:#0d47a1;--secondary-50:#eef2ff;--secondary-100:#e0e7ff;--secondary-200:#c7d2fe;--secondary-300:#a5b4fc;--secondary-400:#818cf8;--secondary-500:#6366f1;--secondary-600:#4f46e5;--secondary-700:#4338ca;--secondary-800:#3730a3;--secondary-900:#312e81;--surface:#fff;--surface-variant:#f8fafc;--outline-variant:#f1f5f9;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a, 0 10px 10px -5px #0000000a;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--duration-fast:.15s;--duration-normal:.2s;--duration-slow:.3s;--ease-out-cubic:cubic-bezier(.4, 0, .2, 1);--ease-in-out-cubic:cubic-bezier(.4, 0, .6, 1);--sidebar-width:280px;--brand-primary:#229cff;--brand-secondary:#6366f1;--brand-accent:#f59e0b;--brand-light:#64b5f6;--brand-lightest:#e3f2fd;--brand-primary-soft:#229cff14;--color-link:#0067b8;--color-link-hover:#4338ca;--brand-secondary-soft:#6366f10f;--brand-accent-soft:#f59e0b0d;--color-success:#10b981;--color-warning:#f59e0b;--color-error:#ef4444;--color-info:#229cff;--color-white:#fff;--color-black:#000;--color-gray-50:#fafaf9;--color-gray-100:#f5f5f4;--color-gray-200:#e7e5e4;--color-gray-300:#d6d3d1;--color-gray-400:#a8a29e;--color-gray-500:#78716c;--color-gray-600:#57534e;--color-gray-700:#44403c;--color-gray-800:#292524;--color-gray-900:#1c1917;--ease-spring:cubic-bezier(.175, .885, .32, 1.275);--ease-bounce:cubic-bezier(.68, -.55, .265, 1.55);--duration-slower:.5s;--app-interactive-transition:background-color var(--duration-normal) var(--ease-out-cubic), border-color var(--duration-normal) var(--ease-out-cubic), box-shadow var(--duration-normal) var(--ease-out-cubic), color var(--duration-normal) var(--ease-out-cubic), opacity var(--duration-normal) var(--ease-out-cubic), transform var(--duration-normal) var(--ease-out-cubic);--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--app-page-gutter:clamp(16px, 2.5vw, 32px);--app-page-block-padding:clamp(24px, 3vw, 32px);--app-page-gap:clamp(16px, 2.2vw, 24px);--app-section-gap:clamp(24px, 4vw, 48px);--app-content-gap:16px;--app-control-gap:8px;--app-surface-padding:clamp(16px, 2vw, 24px);--app-surface-header-gap:clamp(10px, 1.4vw, 16px);--app-overlay-gutter:clamp(12px, 2.5vw, 32px);--app-overlay-shadow:var(--shadow-xl);--radius-xs:2px;--radius-2xl:20px;--radius-3xl:24px;--radius-4xl:28px;--radius-full:9999px;--z-mobile-stepper:1000;--z-speed-dial:1050;--z-app-bar:1100;--z-drawer:1200;--z-modal:1300;--z-snackbar:1400;--z-tooltip:1500;--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1290;--z-popover:1290;--focus-ring-color:#087ac4;--focus-ring-width:3px;--focus-ring-shadow:0 0 0 var(--focus-ring-width) var(--focus-ring-color)}[data-brand-density=compact]{--app-page-gap:12px;--app-content-gap:12px;--app-control-gap:6px;--app-surface-padding:clamp(12px, 1.5vw, 18px);--app-surface-header-gap:8px}[data-brand-density=spacious]{--app-page-gap:clamp(20px, 2.5vw, 28px);--app-content-gap:20px;--app-control-gap:12px;--app-surface-padding:clamp(20px, 2.5vw, 30px);--app-surface-header-gap:clamp(14px, 1.8vw, 20px)}[data-theme=dark]{--color-link:#93c5fd;--color-link-hover:#c4b5fd;--color-gray-50:#292524;--color-gray-100:#44403c;--color-gray-200:#57534e;--color-gray-300:#78716c;--color-gray-400:#a8a29e;--color-gray-500:#d6d3d1;--color-gray-600:#e7e5e4;--color-gray-700:#f5f5f4;--color-gray-800:#fafaf9;--color-gray-900:#fff;--shadow-sm:0 1px 2px #00000073;--shadow-md:0 4px 10px #00000073;--shadow-lg:0 10px 24px #0000008c;--shadow-xl:0 20px 48px #0009;--focus-ring-color:#64b5f6}@media (forced-colors:active){:root{--focus-ring-color:Highlight}}@media (prefers-contrast:more){:root{--focus-ring-color:var(--brand-primary);--focus-ring-width:4px}}:where(:focus-visible){outline:var(--focus-ring-width) solid transparent;box-shadow:var(--focus-ring-shadow)}:where(:focus:not(:focus-visible)){outline-color:#0000}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-feature-settings:"kern" 1, "liga" 1, "calt" 1;overscroll-behavior:none;-webkit-overflow-scrolling:touch;overscroll-behavior-y:none;background:0 0}.MuiTableContainer-root,[data-mobile-scroll=x]{touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}*,:before,:after{-webkit-tap-highlight-color:transparent}button,[role=button],a{-webkit-touch-callout:none}@supports (-webkit-touch-callout:none){input,textarea,select{font-size:max(16px,1rem)}}input:-webkit-autofill{caret-color:var(--brand-primary);transition:background-color 9999s ease-in-out;-webkit-box-shadow:0 0 0 1000px var(--color-gray-50) inset!important;-webkit-text-fill-color:var(--color-gray-900)!important}input:-webkit-autofill:hover{caret-color:var(--brand-primary);transition:background-color 9999s ease-in-out;-webkit-box-shadow:0 0 0 1000px var(--color-gray-50) inset!important;-webkit-text-fill-color:var(--color-gray-900)!important}input:-webkit-autofill:focus{caret-color:var(--brand-primary);transition:background-color 9999s ease-in-out;-webkit-box-shadow:0 0 0 1000px var(--color-gray-50) inset!important;-webkit-text-fill-color:var(--color-gray-900)!important}input:-webkit-autofill:active{caret-color:var(--brand-primary);transition:background-color 9999s ease-in-out;-webkit-box-shadow:0 0 0 1000px var(--color-gray-50) inset!important;-webkit-text-fill-color:var(--color-gray-900)!important}button::-moz-focus-inner{border:0;padding:0}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}input::-ms-reveal{display:none}input::-ms-clear{display:none}input[type=search]::-webkit-search-decoration{-webkit-appearance:none}input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}input[type=search]::-webkit-search-results-button{-webkit-appearance:none}input[type=search]::-webkit-search-results-decoration{-webkit-appearance:none}@media (horizontal-viewport-segments:2){.layout-foldable-h{grid-template-columns:env(viewport-segment-width 0 0) env(viewport-segment-width 1 0);display:grid}}@media (vertical-viewport-segments:2){.layout-foldable-v{grid-template-rows:env(viewport-segment-height 0 0) env(viewport-segment-height 1 0);display:grid}}body{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;color:var(--color-gray-900);background:var(--brand-bg-app,#fafaf9);min-height:100vh;min-height:100svh;min-height:100dvh;padding:0;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);overscroll-behavior:none;overscroll-behavior-y:none;-webkit-overflow-scrolling:touch;margin:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Inter,system-ui,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-weight:400;line-height:1.6;position:relative;overflow-x:hidden}html[data-telegram-miniapp=true]{background:var(--tg-theme-bg-color,transparent);background-attachment:initial}html[data-telegram-miniapp=true] body{background:var(--tg-theme-bg-color,#fff);background-attachment:initial;background-size:initial;color:var(--tg-theme-text-color,var(--color-gray-900))}html[data-telegram-miniapp=true] body:before{display:none}[data-theme=dark] html,[data-theme=dark] body{background:var(--brand-bg-app,#0f172a)}[data-theme=dark] #root{background:0 0}html,body,#root{min-height:100vh}@supports (min-height:100dvh){html,body,#root{min-height:100dvh}}html,body,#root{height:100%}html,#root{background:0 0}body{background:var(--brand-bg-app,#fafaf9)}#root{z-index:1;background:0 0;position:relative}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border-radius:var(--radius-sm);transition:background-color var(--duration-normal) var(--ease-out-cubic);background-color:#0003}::-webkit-scrollbar-thumb:hover{background-color:#0000004d}[data-theme=dark] ::-webkit-scrollbar-thumb{background-color:#fff3}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background-color:#ffffff4d}::selection{background-color:var(--brand-primary);color:var(--color-white)}::selection{background-color:var(--brand-primary);color:var(--color-white)}:where(a:not(.MuiButtonBase-root):not(.btn):not([role=button])){color:var(--color-link);transition:color var(--duration-normal) var(--ease-out-cubic);font-weight:500;text-decoration:none}:where(a:not(.MuiButtonBase-root):not(.btn):not([role=button])):hover{color:var(--color-link-hover)}:where(a:not(.MuiButtonBase-root):not(.btn):not([role=button])):focus-visible{box-shadow:none}h1,h2,h3,h4,h5,h6{letter-spacing:-.01em;color:var(--color-gray-900);text-wrap:balance;scroll-margin-top:calc(var(--app-header-h,64px) + var(--space-md));margin:0;font-weight:600;line-height:1.2}h1{letter-spacing:-.02em;font-size:2.5rem;font-weight:700}h2{letter-spacing:-.01em;font-size:2rem}h3{font-size:1.75rem}h4{font-size:1.5rem}h5{font-size:1.25rem}h6{font-size:1.125rem}p{color:var(--color-gray-700);text-wrap:pretty;margin:0;line-height:1.6}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;margin:0;padding:0}button:focus-visible{outline:var(--focus-ring-width) solid transparent;box-shadow:0 0 0 var(--focus-ring-width) var(--brand-primary)}button{border-radius:var(--app-button-radius,var(--radius-lg));transition:var(--app-interactive-transition);-webkit-tap-highlight-color:transparent;font-weight:600}button:disabled{opacity:.6;cursor:not-allowed}input,textarea,select{font:inherit;color:inherit;transition:var(--app-interactive-transition);background:0 0;border:none;margin:0;padding:0;font-family:inherit}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.glass{background-color:var(--brand-surface,#fcfcfc);border:none}[data-theme=dark] .glass{background-color:var(--brand-surface,#120c0c)}@media (max-width:599.95px){h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.5rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.print-only{display:none}@media (prefers-contrast:high){*{border-color:currentColor!important}}@media print{.no-print{display:none!important}.print-only{display:block!important}[data-testid=page-content],[data-testid=page-scroll]{height:auto!important;min-height:auto!important;overflow:visible!important}*{color:#000!important;box-shadow:none!important;text-shadow:none!important;background:0 0!important}[data-schedule-block]{background:#fafafa!important;border:1px solid #333!important}[data-schedule-block] [data-timeline-column],[data-schedule-block] [data-timeline-block]{border:1px solid #ccc!important}.MuiCard-root:not(.no-print){border:1px solid #333!important}a,a:visited{text-decoration:none}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}img{page-break-inside:avoid}h2,h3{page-break-after:avoid}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes scaleInBounce{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}@keyframes wiggle{0%,7%{transform:rotate(0)}15%{transform:rotate(-15deg)}20%{transform:rotate(10deg)}25%{transform:rotate(-10deg)}30%{transform:rotate(6deg)}35%{transform:rotate(-4deg)}40%,to{transform:rotate(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}to{opacity:1;transform:scale(1)}}@keyframes zoomOut{0%{opacity:1;transform:scale(1)}50%{opacity:0;transform:scale3d(.3,.3,.3)}to{opacity:0;transform:scale3d(.3,.3,.3)}}@keyframes heartbeat{0%{transform:scale(1)}14%{transform:scale(1.3)}28%{transform:scale(1)}42%{transform:scale(1.3)}70%{transform:scale(1)}}.animate-fade-in{animation:fadeIn var(--duration-slow) var(--ease-out-cubic)}.animate-fade-in-up{animation:fadeInUp var(--duration-slow) var(--ease-out-cubic)}.animate-fade-in-down{animation:fadeInDown var(--duration-slow) var(--ease-out-cubic)}.animate-slide-in-left{animation:slideInLeft var(--duration-slow) var(--ease-out-cubic)}.animate-slide-in-right{animation:slideInRight var(--duration-slow) var(--ease-out-cubic)}.animate-scale-in{animation:scaleIn var(--duration-normal) var(--ease-out-cubic)}.animate-scale-in-bounce{animation:scaleInBounce var(--duration-slower) var(--ease-bounce)}.animate-shake{animation:.82s cubic-bezier(.36,.07,.19,.97) both shake}.animate-wiggle{animation:1s ease-in-out wiggle}.animate-slide-down{animation:slideDown var(--duration-slow) var(--ease-out-cubic)}.animate-slide-up{animation:slideUp var(--duration-slow) var(--ease-out-cubic)}.animate-zoom-in{animation:zoomIn var(--duration-slow) var(--ease-out-cubic)}.animate-zoom-out{animation:zoomOut var(--duration-slow) var(--ease-out-cubic)}.animate-heartbeat{animation:1.5s ease-in-out infinite both heartbeat}.animate-delay-75{animation-delay:75ms}.animate-delay-100{animation-delay:.1s}.animate-delay-150{animation-delay:.15s}.animate-delay-200{animation-delay:.2s}.animate-delay-300{animation-delay:.3s}.animate-delay-500{animation-delay:.5s}.animate-delay-700{animation-delay:.7s}.animate-delay-1000{animation-delay:1s}.animate-duration-75{animation-duration:75ms}.animate-duration-100{animation-duration:.1s}.animate-duration-150{animation-duration:.15s}.animate-duration-200{animation-duration:.2s}.animate-duration-300{animation-duration:.3s}.animate-duration-500{animation-duration:.5s}.animate-duration-700{animation-duration:.7s}.animate-duration-1000{animation-duration:1s}.hover-lift:hover{transform:translateY(-2px)}.hover-scale{transition:transform var(--duration-normal) var(--ease-out-cubic)}.hover-scale:hover{transform:scale(1.05)}.hover-rotate{transition:transform var(--duration-normal) var(--ease-out-cubic)}.hover-rotate:hover{transform:rotate(5deg)}.hover-glow{transition:box-shadow var(--duration-normal) var(--ease-out-cubic)}.hover-glow:hover{box-shadow:0 0 20px #1747494d}.stagger-children>*{animation:fadeInUp var(--duration-slow) var(--ease-out-cubic) both}.stagger-children>:first-child{animation-delay:0s}.stagger-children>:nth-child(2){animation-delay:50ms}.stagger-children>:nth-child(3){animation-delay:.1s}.stagger-children>:nth-child(4){animation-delay:.15s}.stagger-children>:nth-child(5){animation-delay:.2s}.stagger-children>:nth-child(6){animation-delay:.25s}.stagger-children>:nth-child(7){animation-delay:.3s}.stagger-children>:nth-child(8){animation-delay:.35s}.stagger-children>:nth-child(9){animation-delay:.4s}.stagger-children>:nth-child(10){animation-delay:.45s}.modal-enter{animation:scaleIn var(--duration-normal) var(--ease-out-cubic)}.modal-exit{animation:zoomOut var(--duration-normal) var(--ease-out-cubic)}.notification-enter{animation:slideInRight var(--duration-normal) var(--ease-out-cubic)}.notification-exit{animation:slideInRight var(--duration-normal) var(--ease-out-cubic) reverse}.loading-dots{gap:4px;display:inline-flex}.loading-dots:before,.loading-dots:after{content:"";background-color:currentColor;border-radius:50%;width:4px;height:4px;animation:1.4s ease-in-out infinite both pulse}.loading-dots:before{animation-delay:-.32s}.loading-dots:after{animation-delay:-.16s}.loading-spinner{border:2px solid #0000;border-top-color:currentColor;border-radius:50%;width:20px;height:20px;animation:1s linear infinite spin}.route-loader-spinner{animation:.75s linear infinite spin}@media (prefers-reduced-motion:reduce){.route-loader-spinner{animation-duration:1.5s}}.progress-bar{position:relative;overflow:hidden}.progress-bar:after{content:"";background:linear-gradient(90deg,#0000,#fff6,#0000);width:100%;height:100%;animation:2s infinite shimmer;position:absolute;top:0;left:-100%}@keyframes shimmer{0%{left:-100%}to{left:100%}}@keyframes glowPulse{0%,to{box-shadow:0 0 20px #0d94881a}50%{box-shadow:0 0 40px #0d948833}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes gradientShift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.animate-glow-pulse{animation:3s ease-in-out infinite glowPulse}.animate-float{animation:3s ease-in-out infinite float}.gradient-text{background:linear-gradient(135deg, var(--brand-primary) 0%, var(--brand-secondary) 100%);-webkit-text-fill-color:transparent;color:var(--brand-primary);-webkit-background-clip:text;background-clip:text}@supports not ((-webkit-background-clip:text) or (background-clip:text)){.gradient-text{color:var(--brand-primary);-webkit-text-fill-color:unset}}@media (prefers-reduced-motion:reduce){.animate-glow-pulse,.animate-float{animation:none}}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.animate-fadeIn{animation:.2s ease-out fadeIn}.animate-slideUp{animation:.3s ease-out slideUp}.animate-slideIn{animation:.3s ease-out slideIn}.animate-slideInRight{animation:.3s ease-out slideInRight}.animate-scaleIn{animation:.2s ease-out scaleIn}.animate-pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}.animate-bounce{animation:1s infinite bounce}.animate-spin{animation:1s linear infinite spin}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}.animate-ping{animation:1s cubic-bezier(0,0,.2,1) infinite ping}.transition-all{transition:var(--app-interactive-transition);transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.chat-scrollbar::-webkit-scrollbar{width:6px}.chat-scrollbar::-webkit-scrollbar-track{background:0 0;margin:8px 0}.chat-scrollbar::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--brand-primary) 30%, transparent);border-radius:var(--radius-lg);border:1px solid #ffffff4d}.chat-scrollbar::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--brand-primary) 50%, transparent)}[data-theme=dark] .chat-scrollbar::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--brand-primary) 50%, transparent);border:1px solid #ffffff1a}[data-theme=dark] .chat-scrollbar::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--brand-primary) 70%, transparent)}.glass-effect{background:var(--brand-surface,#fff);border:none}.glass-effect-dark{background:var(--brand-surface,#1e293b);border:none}@keyframes messageBubbleIn{0%{opacity:0;transform:translateY(10px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.message-bubble{animation:.2s ease-out messageBubbleIn}.gradient-primary,[data-theme=dark] .gradient-primary,.gradient-blue-purple,[data-theme=dark] .gradient-blue-purple{background:var(--brand-primary)}.gradient-chat-bg{background:var(--brand-surface-subtle,#f6f8fb)}[data-theme=dark] .gradient-chat-bg{background:var(--brand-surface-subtle,#0f172a)}.shadow-chat,[data-theme=dark] .shadow-chat,.shadow-message,[data-theme=dark] .shadow-message,.shadow-float,[data-theme=dark] .shadow-float{box-shadow:none}.hover-lift{transition:var(--app-interactive-transition)}.hover-lift:hover{background-color:color-mix(in srgb, currentColor 5%, transparent)}
