@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap");:root{--font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;--calendar-cell-size:40px;--tg-theme-bg-color:#fff;--tg-theme-secondary-bg-color:#f2f2f7;--tg-theme-text-color:#000;--tg-theme-hint-color:#8e8e93;--tg-theme-button-color:#007aff;--tg-theme-button-text-color:#fff;--tg-theme-link-color:#007aff;--tg-theme-header-bg-color:#fff;--tg-theme-section-bg-color:#fff;--tg-theme-section-header-text-color:#007aff;--tg-theme-subtitle-text-color:#8e8e93;--tg-theme-destructive-text-color:#ff3b30;--primary-color:#007aff;--text-primary:#000;--text-secondary:#8e8e93;--bg-primary:#fff;--bg-secondary:#f2f2f7;--navbar-bg:#fff;--navbar-border:rgba(0,0,0,.06);--navbar-icon-color:#8e8e93;--navbar-icon-active:#000;--navbar-item-active-bg:#f2f2f7;color-scheme:light}.dark,:root[data-theme=dark]{--tg-theme-bg-color:#1c1c1e;--tg-theme-secondary-bg-color:#000;--tg-theme-text-color:#fff;--tg-theme-hint-color:#8e8e93;--tg-theme-button-color:#2481cc;--tg-theme-button-text-color:#fff;--tg-theme-link-color:#2481cc;--tg-theme-header-bg-color:#1c1c1e;--tg-theme-section-bg-color:#1c1c1e;--tg-theme-section-header-text-color:#2481cc;--tg-theme-subtitle-text-color:#8e8e93;--tg-theme-destructive-text-color:#ff453a;--primary-color:#2481cc;--text-primary:#fff;--text-secondary:#8e8e93;--bg-primary:#1c1c1e;--bg-secondary:#000;--navbar-bg:#1c1c1e;--navbar-border:hsla(0,0%,100%,.08);--navbar-icon-color:#8e8e93;--navbar-icon-active:#fff;--navbar-item-active-bg:#2c2c2e;color-scheme:dark}*,:after,:before{transition:background-color .2s ease,color .2s ease,border-color .2s ease,fill .2s ease,stroke .2s ease}.no-theme-transition,.no-theme-transition *,.no-theme-transition :after,.no-theme-transition :before{transition:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.schedule-page{min-height:600px}.hostel-page-container{min-height:500px}img{content-visibility:auto}body{font-family:var(--font-family);background:var(--tg-theme-secondary-bg-color,#fff);color:var(--tg-theme-text-color,#000);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body.tgui-modal-open .bottom-nav,body.tgui-modal-open .nav-container,body:has(.tgui-cc76354712c6e8d9) .nav-container,body:has(.tgui-modal) .nav-container,body:has(.tgui-modal__container) .nav-container,body:has([data-vaul-drawer]) .nav-container,body:has([data-vaul-overlay]) .nav-container,body:has([role=dialog]) .nav-container{display:none!important;opacity:0!important;pointer-events:none!important}.theme-switch-container{display:flex;align-items:center;cursor:pointer;padding:4px 0}.theme-switch{width:51px;height:31px;background-color:#e9e9eb;border-radius:16px;position:relative;transition:background-color .2s ease}.dark .theme-switch,:root[data-theme=dark] .theme-switch{background-color:#39393d}.theme-switch.checked{background-color:#34c759}.theme-switch-thumb{width:27px;height:27px;background-color:#fff;border-radius:50%;position:absolute;top:2px;left:2px;transition:transform .2s cubic-bezier(.25,.46,.45,.94);box-shadow:0 3px 8px rgba(0,0,0,.15)}.theme-switch.checked .theme-switch-thumb{transform:translateX(20px)}.nav-container{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:1000;display:flex;align-items:center;gap:12px;pointer-events:none;transition:transform .25s ease,opacity .2s ease}body.tgui-modal-open .nav-container,body:has(.tgui-cc76354712c6e8d9) .nav-container,body:has(.tgui-modal) .nav-container,body:has(.tgui-modal__container) .nav-container,body:has([data-vaul-drawer]) .nav-container,body:has([data-vaul-overlay]) .nav-container,body:has([role=dialog]) .nav-container{opacity:0!important;pointer-events:none!important;transform:translate(-50%,120px)!important;visibility:hidden!important}.gooey-svg-filter{position:absolute;width:0;height:0;pointer-events:none;opacity:0}.bottom-nav.gooey-nav{background:var(--navbar-bg,#fff);border:1px solid var(--navbar-border,rgba(0,0,0,.08));border-radius:32px;height:56px;display:flex;align-items:center;padding:0 8px;box-shadow:0 10px 32px -4px rgba(0,0,0,.12),0 2px 8px rgba(0,0,0,.04);pointer-events:auto;position:relative;user-select:none;touch-action:none;cursor:grab;transition:width .4s cubic-bezier(.34,1.56,.64,1),background-color .3s ease,border-color .3s ease,box-shadow .3s ease}.bottom-nav.gooey-nav.is-dragging{cursor:grabbing}.gooey-liquid-track{position:absolute;top:6px;left:8px;right:8px;bottom:6px;filter:url(#gooey-navbar-filter);-webkit-filter:url(#gooey-navbar-filter);pointer-events:none;z-index:1}.gooey-select{position:absolute;top:0;left:0;width:60px;height:44px;border-radius:22px;background:var(--navbar-item-active-bg,rgba(0,0,0,.08));box-shadow:none;transform-origin:center center;will-change:transform;z-index:2;transition:background-color .25s ease}.gooey-select.dragging{background:var(--navbar-item-active-bg,rgba(0,0,0,.14))}.nav-list.gooey-icons-list{list-style:none;margin:0;padding:0;gap:4px}.nav-item,.nav-list.gooey-icons-list{display:flex;align-items:center;position:relative;z-index:10}.nav-item{justify-content:center;width:60px;height:44px;border-radius:22px;cursor:pointer;color:var(--navbar-icon-color,#8e8e93);background:transparent;border:none;outline:none;transition:color .2s ease,transform .15s ease;-webkit-tap-highlight-color:transparent}.nav-item:active{transform:scale(.92)}.nav-item.active{color:var(--navbar-icon-active,#2481cc)}.nav-icon{font-size:20px;position:relative;z-index:11;transition:transform .25s cubic-bezier(.19,1,.22,1)}.nav-item.active .nav-icon{transform:scale(1.08)}.nav-item.dynamic-nav-item{animation:dynamicItemFadeIn .35s cubic-bezier(.19,1,.22,1) forwards}@keyframes dynamicItemFadeIn{0%{opacity:0;transform:scale(.6) translate3d(8px,0,0)}to{opacity:1;transform:scale(1) translateZ(0)}}.mail-nav-btn,.support-nav-btn{width:56px;height:56px;border-radius:28px;background:var(--navbar-bg,#fff);border:1px solid var(--navbar-border,rgba(0,0,0,.08));color:var(--navbar-icon-active,#2481cc);display:flex;align-items:center;justify-content:center;position:relative;cursor:pointer;box-shadow:0 8px 32px rgba(0,0,0,.08);pointer-events:auto;outline:none;transition:transform .15s ease;-webkit-tap-highlight-color:transparent}.mail-nav-btn:active,.support-nav-btn:active{transform:scale(.92)}.mail-nav-badge,.support-nav-badge{position:absolute;top:-2px;right:-2px;background-color:#ff3b30;color:#fff;border-radius:10px;min-width:18px;height:18px;font-size:9px;font-weight:600;display:flex;align-items:center;justify-content:center;padding:0 4px;border:2px solid var(--navbar-bg,#fff);box-shadow:0 2px 4px rgba(0,0,0,.15);line-height:1}body{padding-bottom:100px}@media (min-width:768px){.nav-container{top:20px!important;bottom:auto!important}body{padding-bottom:32px!important;padding-top:96px!important}}.shadcn-toast-viewport{position:fixed;bottom:24px;right:24px;z-index:100000;display:flex;flex-direction:column;gap:10px;max-width:420px;width:calc(100vw - 32px);pointer-events:none}@media (max-width:600px){.shadcn-toast-viewport{bottom:20px;left:16px;right:16px;width:auto}}.shadcn-toast-card{pointer-events:auto;display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;background:var(--tg-theme-bg-color,#fff);color:var(--tg-theme-text-color,#09090b);border:1px solid var(--tg-theme-secondary-bg-color,rgba(9,9,11,.08));box-shadow:0 10px 30px -10px rgba(0,0,0,.12),0 4px 12px -2px rgba(0,0,0,.06);backdrop-filter:blur(16px);transition:all .25s cubic-bezier(.16,1,.3,1);box-sizing:border-box}.dark .shadcn-toast-card,:root[data-theme=dark] .shadcn-toast-card{background:#18181b;color:#f4f4f5;border-color:hsla(0,0%,100%,.1);box-shadow:0 12px 36px -10px rgba(0,0,0,.5)}.shadcn-toast-enter{opacity:1;transform:translateY(0) scale(1)}.shadcn-toast-exit{opacity:0;transform:translateY(12px) scale(.95)}.shadcn-toast-success{border-left:4px solid #10b981}.shadcn-toast-destructive,.shadcn-toast-error{border-left:4px solid #ef4444}.shadcn-toast-alert{border-left:4px solid #f59e0b}.shadcn-toast-default,.shadcn-toast-neutral{border-left:4px solid #3b82f6}.shadcn-toast-icon-badge{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.shadcn-toast-badge-success{background:rgba(16,185,129,.12);color:#10b981}.shadcn-toast-badge-destructive,.shadcn-toast-badge-error{background:rgba(239,68,68,.12);color:#ef4444}.shadcn-toast-badge-alert{background:rgba(245,158,11,.12);color:#f59e0b}.shadcn-toast-badge-default,.shadcn-toast-badge-neutral{background:rgba(59,130,246,.12);color:#3b82f6}.shadcn-toast-icon-svg{font-size:15px}.shadcn-toast-content{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.shadcn-toast-title{font-size:14px;font-weight:600;line-height:1.3;color:var(--tg-theme-text-color,#09090b)}.dark .shadcn-toast-title,:root[data-theme=dark] .shadcn-toast-title{color:#f4f4f5}.shadcn-toast-description{font-size:13px;color:var(--tg-theme-hint-color,#71717a);line-height:1.35}.dark .shadcn-toast-description,:root[data-theme=dark] .shadcn-toast-description{color:#a1a1aa}.shadcn-toast-action-btn{background:var(--tg-theme-button-color,#09090b);color:var(--tg-theme-button-text-color,#fff);border:none;padding:6px 12px;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;transition:opacity .15s ease;white-space:nowrap}.shadcn-toast-action-btn:hover{opacity:.9}.shadcn-toast-close-btn{background:transparent;border:none;color:#71717a;padding:6px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:13px;transition:all .15s ease;flex-shrink:0}.shadcn-toast-close-btn:hover{background:rgba(0,0,0,.06);color:#09090b}.dark .shadcn-toast-close-btn:hover,:root[data-theme=dark] .shadcn-toast-close-btn:hover{background:hsla(0,0%,100%,.1);color:#fff}.root__loading{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.no-select{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none}.page-fade-in{animation:fadeInUp .4s cubic-bezier(.4,0,.2,1)}.page-ios-push-enter{animation:iosPushEnter .38s cubic-bezier(.32,.72,0,1) forwards;will-change:transform,opacity}@keyframes iosPushEnter{0%{opacity:.4;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.modal-ios-push-exit{animation:iosModalExit .28s cubic-bezier(.32,.72,0,1) forwards!important;pointer-events:none!important}@keyframes iosModalExit{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.94) translateY(12px)}}.page-ios-pop-exit{animation:iosPopExit .32s cubic-bezier(.32,.72,0,1) forwards!important;pointer-events:none!important}@keyframes iosPopExit{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(100%)}}.section-cascade{animation:fadeInSection .5s cubic-bezier(.4,0,.2,1) backwards}.section-cascade:first-child{animation-delay:.05s}.section-cascade:nth-child(2){animation-delay:.1s}.section-cascade:nth-child(3){animation-delay:.15s}.section-cascade:nth-child(4){animation-delay:.2s}.section-cascade:nth-child(5){animation-delay:.25s}.section-cascade:nth-child(6){animation-delay:.3s}.section-cascade:nth-child(7){animation-delay:.35s}.section-cascade:nth-child(8){animation-delay:.4s}@keyframes fadeInSection{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}.tap-scale{transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.tap-scale:active{transform:scale(.97);transition:transform .15s cubic-bezier(.4,0,.2,1)}.tap-ripple:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:var(--tg-theme-button-color);opacity:0;transform:translate(-50%,-50%);pointer-events:none}.tap-ripple:active:after{animation:ripple .6s cubic-bezier(.4,0,.2,1)}@keyframes ripple{0%{width:0;height:0;opacity:.3}50%{opacity:.15}to{width:300px;height:300px;opacity:0}}.fade-in{animation:fadeIn .3s cubic-bezier(.4,0,.2,1)}.content-fade-in{animation:contentFadeIn .5s cubic-bezier(.4,0,.2,1)}@keyframes contentFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.accordion-content{animation:slideDownFade .35s cubic-bezier(.4,0,.2,1) forwards}.accordion-content.closing{animation:slideUpFade .3s cubic-bezier(.4,0,.2,1) forwards}@keyframes slideDownFade{0%{opacity:0;transform:translateY(-10px) scaleY(.95);max-height:0}to{opacity:1;transform:translateY(0) scaleY(1);max-height:2000px}}@keyframes slideUpFade{0%{opacity:1;transform:translateY(0) scaleY(1);max-height:2000px}to{opacity:0;transform:translateY(-10px) scaleY(.95);max-height:0;padding:0}}.scale-fade-in{animation:fadeInScale .3s cubic-bezier(.4,0,.2,1) backwards}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95) translateY(-5px)}to{opacity:1;transform:scale(1) translateY(0)}}.telegram-btn-press{transition:opacity .15s ease,transform .12s cubic-bezier(.2,0,0,1),filter .15s ease!important}.telegram-btn-press:hover:not(:disabled){opacity:.88!important;filter:brightness(1.06)!important}.telegram-btn-press:active:not(:disabled){transform:scale(.93)!important;opacity:.7!important;filter:brightness(.94)!important}@keyframes sendBtnPop{0%{transform:scale(.6);opacity:0}70%{transform:scale(1.12);opacity:1}to{transform:scale(1);opacity:1}}.skeleton-pulse{background:linear-gradient(90deg,var(--tg-theme-secondary-bg-color,rgba(0,0,0,.06)) 25%,var(--tg-theme-bg-color,hsla(0,0%,100%,.65)) 37%,var(--tg-theme-secondary-bg-color,rgba(0,0,0,.06)) 63%)!important;background-size:400% 100%!important;animation:skeletonShimmer 1.4s ease infinite!important;border-radius:10px}@keyframes skeletonShimmer{0%{background-position:100% 50%}to{background-position:0 50%}}.send-btn-appear{animation:sendBtnPop .22s cubic-bezier(.175,.885,.32,1.275) forwards}@keyframes modalSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes modalSlideDown{0%{transform:translateY(0);opacity:1}to{transform:translateY(100%);opacity:.2}}.hostel-page-container{padding:12px 14px;display:flex;flex-direction:column;gap:12px;box-sizing:border-box;width:100%}.hostel-header-card{background:var(--tg-theme-secondary-bg-color,hsla(0,0%,100%,.06));border:1px solid var(--border-color,hsla(0,0%,100%,.16));color:var(--tg-theme-text-color,#fff);border-radius:16px;padding:14px 16px;display:flex;flex-direction:column;gap:10px;box-shadow:0 4px 14px rgba(0,0,0,.15)}.light .hostel-header-card,:root[data-theme=light] .hostel-header-card{background:#fff;border-color:rgba(0,0,0,.12);box-shadow:0 4px 14px rgba(0,0,0,.06)}.hostel-header-row-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:8px;border-bottom:1px solid var(--border-color,hsla(0,0%,100%,.1))}.light .hostel-header-row-top,:root[data-theme=light] .hostel-header-row-top{border-color:rgba(0,0,0,.08)}.hostel-header-title{color:var(--tg-theme-text-color,#fff)!important;margin:0!important;font-size:18px;font-weight:700;display:flex;align-items:center;word-break:break-word}.light .hostel-header-title,:root[data-theme=light] .hostel-header-title{color:#1f2937!important}.hostel-card{background:var(--tg-theme-secondary-bg-color,hsla(0,0%,100%,.06));border:1px solid var(--border-color,hsla(0,0%,100%,.16));border-radius:16px;padding:16px;display:flex;flex-direction:column;box-shadow:0 4px 14px rgba(0,0,0,.12)}.light .hostel-card,:root[data-theme=light] .hostel-card{background:#fff;border-color:rgba(0,0,0,.12);box-shadow:0 4px 14px rgba(0,0,0,.06)}.hostel-section-title{font-size:15px;font-weight:700;color:var(--tg-theme-text-color,#fff);margin-bottom:12px;display:flex;align-items:center;padding-bottom:8px;border-bottom:1px solid var(--border-color,hsla(0,0%,100%,.1))}.light .hostel-section-title,:root[data-theme=light] .hostel-section-title{color:#1f2937;border-color:rgba(0,0,0,.08)}.hostel-info-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--border-color,hsla(0,0%,100%,.08))}.light .hostel-info-row,:root[data-theme=light] .hostel-info-row{border-color:rgba(0,0,0,.06)}.hostel-info-row:last-child{border-bottom:none}.hostel-label{color:var(--tg-theme-hint-color,#aaa);font-size:13px;display:flex;align-items:center}.hostel-value{color:var(--tg-theme-text-color,#fff);font-weight:600;font-size:13px;text-align:right;word-break:break-all}.light .hostel-value,:root[data-theme=light] .hostel-value{color:#1f2937}@media (max-width:600px){.hostel-info-row{flex-direction:row;gap:8px}}.menu-page{--font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;font-family:var(--font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;animation:fadeInUp .4s cubic-bezier(.4,0,.2,1)}.menu-page .tgui-cell,.menu-page .tgui-list,.menu-page .tgui-section{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none}.menu-page .tgui-section{animation:fadeInSection .5s cubic-bezier(.4,0,.2,1) backwards}.menu-page .tgui-section:first-child{animation-delay:.05s}.menu-page .tgui-section:nth-child(2){animation-delay:.1s}.menu-page .tgui-section:nth-child(3){animation-delay:.15s}.menu-page .tgui-section:nth-child(4){animation-delay:.2s}.menu-page .tgui-section:nth-child(5){animation-delay:.25s}.menu-page .tgui-section:nth-child(6){animation-delay:.3s}.menu-page .tgui-section__header{font-family:var(--font-family);font-weight:600;color:var(--tg-theme-hint-color);padding:16px 16px 8px}.menu-page .tgui-cell{padding:12px 16px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.menu-page .tgui-cell:hover{background-color:transparent}.menu-page .tgui-cell:active{transform:scale(.97);transition:transform .15s cubic-bezier(.4,0,.2,1)}.menu-page .tgui-cell:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:var(--tg-theme-button-color);opacity:0;transform:translate(-50%,-50%);pointer-events:none}.menu-page .tgui-cell:active:after{animation:ripple .6s cubic-bezier(.4,0,.2,1)}.telegram-font-family{font-family:var(--tg-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Open Sans","Helvetica Neue",sans-serif)!important}.portfolio-container{padding:16px;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;font-family:var(--tg-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Open Sans","Helvetica Neue",sans-serif)}.portfolio-container,.portfolio-summary{display:flex;flex-direction:column;gap:16px}.portfolio-summary{margin-bottom:20px}.portfolio-summary-item{display:flex;justify-content:space-between;align-items:center;font-size:15px;font-weight:500;color:var(--tg-theme-hint-color,#aaa);padding:12px 16px;background:var(--tg-theme-secondary-bg-color,rgba(60,60,60,.5));border-radius:12px}.portfolio-total-score{font-size:16px;font-weight:600;color:var(--tg-theme-button-color,#5288c1);background:var(--tg-theme-bg-color,rgba(0,0,0,.7));min-width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:16px;padding:0 10px;border:none}.portfolio-category{margin-bottom:24px;animation:fadeInUp .4s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.portfolio-category-title{font-size:16px;font-weight:600;margin-bottom:12px;color:var(--tg-theme-text-color);display:flex;align-items:center;padding:0 8px}.portfolio-category-title:before{content:"";display:block;width:4px;height:18px;background:var(--tg-theme-button-color,#5288c1);border-radius:2px;margin-right:10px}.portfolio-cards{display:flex;flex-direction:column;gap:12px}.portfolio-card{background:var(--tg-theme-bg-color,rgba(40,40,40,.95));border:none;border-radius:16px;overflow:hidden;margin-bottom:8px;transition:all .3s ease;position:relative;user-select:none;-webkit-user-select:none;box-shadow:0 2px 8px rgba(0,0,0,.1);animation:fadeIn .3s ease-out forwards;opacity:0;animation-delay:calc(var(--index, 0) * 50ms)}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.portfolio-header{display:flex;justify-content:space-between;align-items:center;padding:16px;cursor:pointer;transition:background .2s ease;border-radius:16px;background:var(--tg-theme-secondary-bg-color,rgba(60,60,60,.95));user-select:none;-webkit-user-select:none}.portfolio-header.expanded{border-bottom-left-radius:0;border-bottom-right-radius:0;background:var(--tg-theme-secondary-bg-color,rgba(80,80,80,.95));border-bottom:none}.portfolio-title{font-size:15px;font-weight:500;color:var(--tg-theme-text-color);line-height:1.3;user-select:none;-webkit-user-select:none;font-family:var(--tg-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Open Sans","Helvetica Neue",sans-serif);flex:1;margin-right:16px}.portfolio-info{display:flex;align-items:center;gap:12px}.portfolio-score{font-size:16px;font-weight:600;background:var(--tg-theme-bg-color,rgba(0,0,0,.7));min-width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:16px;padding:0 10px;border:none;user-select:none;-webkit-user-select:none;box-shadow:0 2px 4px rgba(0,0,0,.15);font-family:var(--tg-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Open Sans","Helvetica Neue",sans-serif)}.expand-icon,.portfolio-score{color:var(--tg-theme-button-color)}.expand-icon{font-size:11px;transition:transform .3s cubic-bezier(.34,1.56,.64,1);opacity:.8}.expand-icon.expanded{transform:rotate(180deg);opacity:1}.portfolio-details{padding:0 16px 16px;background:var(--tg-theme-bg-color,rgba(30,30,30,.95));border-bottom-left-radius:16px;border-bottom-right-radius:16px;overflow:hidden;max-height:2000px;transition:all .3s ease}.portfolio-details-content{padding-top:12px;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.portfolio-detail-item{margin-bottom:10px}.portfolio-detail-label{font-size:13px;color:var(--tg-theme-hint-color,#aaa);margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.portfolio-detail-value{font-size:14px}.portfolio-badge,.portfolio-detail-value{color:var(--tg-theme-text-color);font-weight:500}.portfolio-badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;font-size:12px;border-radius:12px;margin-right:8px;background:var(--tg-theme-secondary-bg-color,rgba(80,80,80,.5));box-shadow:0 1px 3px rgba(0,0,0,.2)}.portfolio-badge.verified{background:var(--tg-theme-button-color,#5288c1);color:var(--tg-theme-button-text-color,#fff)}.loader-container{display:flex;justify-content:center;align-items:center;height:200px}.error-container{color:var(--tg-theme-negative-color,#ff3b30);text-align:center;padding:24px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:200px;padding:16px}.empty-message{font-size:15px;text-align:center;color:var(--tg-theme-hint-color,#aaa)}.load-more-button{background:var(--tg-theme-button-color,#5288c1);color:var(--tg-theme-button-text-color,#fff);border:none;border-radius:12px;padding:12px 20px;font-size:15px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;margin:20px auto;transition:all .2s ease;box-shadow:0 2px 6px rgba(0,0,0,.15)}.load-more-button:hover{opacity:.9;transform:translateY(-1px);box-shadow:0 3px 8px rgba(0,0,0,.2)}.load-more-button:active{transform:translateY(1px);box-shadow:0 1px 3px rgba(0,0,0,.15)}.portfolio-page-wrapper{position:relative;height:100%;width:100%}.portfolio-page-wrapper.has-modal{overflow:hidden;height:100vh;width:100vw;position:fixed;top:0;left:0}.portfolio-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;z-index:2000;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);animation:fadeIn .2s ease-in-out}.portfolio-modal{width:90%;max-width:480px;max-height:90vh;background:var(--tg-theme-bg-color,#121212);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 8px 24px rgba(0,0,0,.3);animation:scaleIn .3s ease-in-out}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.portfolio-modal-header{padding:16px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--tg-theme-secondary-bg-color,rgba(60,60,60,.7))}.portfolio-modal-title{font-size:18px;font-weight:600;margin:0;color:var(--tg-theme-text-color);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portfolio-modal-close{background:none;border:none;color:var(--tg-theme-hint-color,#aaa);font-size:18px;cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease;margin-left:8px}.portfolio-modal-close:hover{background-color:var(--tg-theme-secondary-bg-color,rgba(60,60,60,.5));color:var(--tg-theme-text-color)}.portfolio-modal-content{padding:16px;overflow-y:auto;max-height:calc(90vh - 70px)}.portfolio-modal-score{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--tg-theme-secondary-bg-color,rgba(60,60,60,.3));border-radius:12px;margin-bottom:16px}.portfolio-modal-score-label{font-weight:500;color:var(--tg-theme-hint-color,#aaa)}.portfolio-modal-score-value{font-size:18px;font-weight:600;color:var(--tg-theme-button-color,#5288c1)}.portfolio-modal-detail{margin-bottom:16px;border-bottom:1px solid var(--tg-theme-secondary-bg-color,rgba(60,60,60,.3));padding-bottom:12px}.portfolio-modal-detail:last-child{border-bottom:none;margin-bottom:0}.portfolio-modal-detail-label{font-size:13px;color:var(--tg-theme-hint-color,#aaa);margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px}.portfolio-modal-detail-value{font-size:15px;color:var(--tg-theme-text-color);font-weight:500}.portfolio-tg-modal{max-height:97vh;width:100%;font-family:var(--tg-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Open Sans","Helvetica Neue",sans-serif);z-index:9999!important}.portfolio-modal-nested{border-top-left-radius:16px!important;border-top-right-radius:16px!important;border-bottom-left-radius:0!important;border-bottom-right-radius:0!important;transform:translateY(100%);transition:transform .3s ease-out}.portfolio-modal-nested[data-state=open]{transform:translateY(0)}.portfolio-tg-modal-content{display:flex;flex-direction:column;padding:0 16px 24px;position:relative;font-family:var(--tg-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Open Sans","Helvetica Neue",sans-serif)}.portfolio-tg-modal-content:before{content:"";width:36px;height:4px;background:var(--tg-theme-hint-color,hsla(0,0%,50%,.3));border-radius:2px;margin:8px auto 16px;display:block}:global(.tgui-modal),:global(.tgui-modal-root),:global(.tgui-modal__container),:global(.tgui-modal__overlay){position:fixed!important;z-index:9999!important}.schedule-page{--font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;display:flex;flex-direction:column;height:100%;font-family:var(--font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:relative;z-index:1;background:transparent}@media (min-width:768px){.schedule-page{flex-direction:row!important;align-items:flex-start!important;gap:32px!important;max-width:1050px!important;margin:0 auto!important;padding:24px 16px!important;overflow:visible!important}.calendar-wrapper{flex:0 0 420px!important;position:sticky!important;top:96px!important;z-index:10!important}.calendar,.calendar-wrapper{width:420px!important;max-width:420px!important}.calendar{--calendar-cell-size:48px!important;box-shadow:0 4px 20px rgba(0,0,0,.05)!important;border:1px solid var(--navbar-border)!important}.lesson-list{flex:1!important;padding:0!important;max-width:580px!important;min-height:650px!important}.calendar__expand-toggle{display:none!important}}.settings-page{min-height:100vh;padding-bottom:90px;background:var(--tg-theme-secondary-bg-color,#efeff4);font-family:var(
    --tg-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Open Sans","Helvetica Neue",sans-serif
  )}.settings-theme-selector{display:flex;align-items:center;gap:6px;padding:4px;background:var(--tg-theme-secondary-bg-color,rgba(0,0,0,.05));border-radius:12px;margin:6px 16px 12px}.settings-theme-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;border-radius:9px;border:none;background:transparent;color:var(--tg-theme-hint-color,#8e8e93);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s cubic-bezier(.32,.72,0,1)}.settings-theme-btn--active{background:var(--tg-theme-bg-color,#fff);color:var(--tg-theme-text-color,#000);font-weight:600;box-shadow:0 2px 8px rgba(0,0,0,.08)}