body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Montserrat,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;min-height:100vh}@media (max-width:700px){body{height:100dvh;min-height:100vh}}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.hero-button,.option-btn,.option-btn.login,.option-btn.register,.role-btn,button{font-family:Montserrat,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}@media (max-width:600px){.hero-section{align-items:center;background:linear-gradient(135deg,#4f8cff,#a6c1ee);background-position:50%;background-repeat:no-repeat;background-size:cover;box-sizing:border-box;color:#fff;display:flex;flex-direction:column;justify-content:center;margin:0;min-height:100vh;overflow-x:hidden;padding:0;position:relative;width:100%}.hero-title{display:block;font-size:clamp(20px,9vw,28px);letter-spacing:0;line-height:1.05;margin:8px auto;max-width:100%;overflow:visible;padding:0 8px;text-align:center;white-space:normal}.hero-description{font-size:1rem;margin-bottom:8px;padding:0 10px;text-align:center}.start-options{gap:12px;margin-top:12px;padding:0}.option-btn{border-radius:18px;font-size:1rem;margin-bottom:8px;min-width:120px;padding:10px 14px}.about-section{padding:12px 0 18px}.about-title{font-size:1.25rem;margin-bottom:8px}.about-description{font-size:1rem;margin:0;padding:0 8px}.container-center-wrapper{box-sizing:border-box;max-width:100%;padding:0 16px}}@media (max-width:900px){.hero-section{min-height:80vh;padding:24px 0}.hero-title{font-size:2.1rem;margin:24px 0 10px}.hero-description{font-size:1.05rem;margin-bottom:18px;padding:0 8px}.start-options{align-items:center;flex-direction:column;gap:16px;margin-top:20px;width:100%}.option-btn{border-radius:24px;font-size:1.05rem;max-width:340px;min-width:0;padding:14px 0;width:90vw}.about-section{max-width:98vw;padding:16px 0 24px}.about-title{font-size:1.3rem;margin-bottom:12px}.about-description{font-size:.98rem;padding:0 4px}}body{margin:0;padding:0}body,html{height:100%;overflow-x:hidden}.hero-title{font-size:3.2rem;margin:32px 0 16px;text-align:center;width:100%;word-break:break-word}.hero-description{font-size:1.3rem;padding:0 12px}.start-options{align-items:center;display:flex;flex-direction:row;flex-wrap:wrap;gap:32px;justify-content:center;margin-top:32px;width:100%}.option-btn{border:none;border-radius:32px;box-shadow:0 4px 16px #4f8cff1f;cursor:pointer;font-size:1.2rem;font-weight:700;margin:0 0 8px;min-width:140px;outline:none;padding:16px 40px;transition:background .2s,color .2s,transform .1s;width:auto}.option-btn.login{background:#fff;color:#4f8cff}.option-btn.login:active,.option-btn.login:focus,.option-btn.login:hover{background:#e0e7ff;color:#2a5db0;transform:translateY(-2px) scale(1.04)}.option-btn.register{background:#4f8cff;color:#fff}.option-btn.register:active,.option-btn.register:focus,.option-btn.register:hover{background:#2a5db0;color:#fff;transform:translateY(-2px) scale(1.04)}.about-section{align-items:center;background:#fff;border-radius:0;box-shadow:none;box-sizing:border-box;color:#222;display:flex;flex-direction:column;height:auto;justify-content:center;margin:0 auto;max-width:700px;min-height:0;min-height:auto;padding:32px 0;position:relative;text-align:center;top:0;width:100%;z-index:2}.about-section,.about-section.about-visible{opacity:1;transform:translateY(0)}.about-title{color:#4f8cff;font-size:2rem;font-weight:700;margin-bottom:20px}.about-description{font-size:1.15rem;line-height:1.7;margin:0 auto;max-width:600px;text-align:center}.hero-section{background:linear-gradient(135deg,#4f8cff,#a6c1ee);background-position:50%;background-repeat:no-repeat;background-size:cover;color:#fff;margin:0;min-height:100vh;overflow:hidden;padding:0;position:relative}.hero-inner,.hero-section{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;width:100%}.hero-inner{gap:12px;padding:0 16px}.hero-title{font-size:4rem;font-weight:700;letter-spacing:2px;margin-bottom:16px}.hero-description{color:#e0e7ff;font-size:1.5rem;margin-bottom:32px;text-align:center;width:100%}.hero-logo-img{display:block;height:150px;width:auto}.scroll-hint{align-items:center;color:#fffffff2;display:flex;flex-direction:column;gap:6px;margin-top:18px;pointer-events:none}.scroll-hint .scroll-arrow{color:#fffffff2;height:28px;width:28px}.scroll-hint .scroll-text{font-size:.95rem;letter-spacing:.3px;opacity:.95}@media (prefers-reduced-motion:reduce){.scroll-hint{animation:none}.scroll-hint svg{transform:none!important}}@media (max-width:600px){.scroll-hint .scroll-text{display:none}}.hero-button{background:#fff;border:none;border-radius:32px;box-shadow:0 4px 16px #4f8cff26;color:#4f8cff;cursor:pointer;font-size:1.25rem;font-weight:700;padding:16px 40px;transition:background .2s,color .2s}.hero-button:hover{background:#4f8cff;color:#fff}.homepage{text-align:center}.homepage,.homepage .container-center-wrapper{align-items:center;display:flex;flex-direction:column}.homepage .container-center-wrapper{box-sizing:border-box;justify-content:center;max-width:1100px;padding:0 16px;width:100%}.hero-section>.container-center-wrapper{max-width:none;padding:0;width:100%}.hero-section .hero-inner{max-width:none;padding:0 24px;width:100%}.homepage .footer{align-self:stretch;width:100%}.hero-inner{max-width:1100px;text-align:center}.hero-inner,.hero-logo-img{margin:0 auto}img,svg{display:block;height:auto;max-width:100%}.hero-section>.container-center-wrapper{box-sizing:border-box}.homepage-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.homepage-logo{animation:homepage-logo-spin 20s linear infinite}}.homepage-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.homepage-link{color:#61dafb}@keyframes homepage-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.courses{align-items:center;background:#f8faff;display:flex;flex-direction:column;gap:40px;padding:80px 0;text-align:center;width:100%}.courses-title{color:#4f8cff;font-size:2rem;font-weight:700}.course-container{display:flex;flex-wrap:wrap;gap:24px;justify-content:center;margin:0 auto;max-width:1100px;padding:0;width:100%}.container-center-wrapper{box-sizing:border-box;margin:0 auto;max-width:1100px;padding:0 16px;width:100%}@media (max-width:600px){.container-center-wrapper{padding:0 12px}}.course-card{background:#fff;border-radius:16px;box-shadow:0 4px 16px #4f8cff1a;box-sizing:border-box;flex:0 1 220px;padding:24px;transition:transform .2s,box-shadow .2s}.course-card:hover{box-shadow:0 8px 30px #4f8cff26;transform:translateY(-5px)}.course-icon{font-size:2rem;margin-bottom:12px}.course-card-title{color:#2a5db0;font-size:1.25rem;margin-bottom:8px}.course-card-description{color:#555;font-size:1rem;line-height:1.5}@media (max-width:599px){.course-card{flex-basis:calc(100% - 24px);flex-grow:0;flex-shrink:1}}@media (min-width:600px) and (max-width:899px){.course-card{flex-basis:calc(50% - 24px);flex-grow:0;flex-shrink:1}}@media (min-width:900px) and (max-width:1199px){.course-card{flex-basis:calc(33.333% - 24px);flex-grow:0;flex-shrink:1}}@media (min-width:1200px){.course-card{flex-basis:calc(25% - 24px);flex-grow:0;flex-shrink:1}}.SectionHeader{align-items:flex-start;display:flex;flex-direction:column;gap:10px;width:100%}.SectionHeader>.subtitle{color:#96bb7c;font-size:14px;font-weight:700;letter-spacing:1px;line-height:25px}.SectionHeader>.title{color:#252b42;font-size:40px;font-weight:700;line-height:50px}.SectionHeader>.paragraph{color:#737373;font-size:14px;font-weight:400;line-height:25px}.user-card{align-items:center;border-radius:20px;box-shadow:0 13px 19px 0 #00000012;display:flex;flex-direction:column;width:240px}.user-card>.thumbnails{border-radius:10px;height:230px;overflow:hidden;-webkit-user-select:none;user-select:none;width:230px}.user-card>.thumbnails>img{-webkit-user-drag:none;height:inherit;object-fit:cover;object-position:center;width:inherit}.user-card>.content{align-items:center;display:flex;flex-direction:column;gap:30px;padding:30px;width:230px}.user-card>.content>.username{color:#252b42;font-size:16px;font-style:normal;font-weight:700;line-height:24px;text-align:center}.user-card>.content>.title{color:#737373;font-size:12px;font-style:normal;font-weight:400;line-height:16px;text-align:center}.user-card>.content>.social-media{align-items:center;display:flex;flex-direction:row;gap:20px;justify-content:center}.user-card>.content>.social-media>a{align-items:center;color:inherit;color:#00000080;display:flex;font-size:1.5rem;height:30px;justify-content:center;text-decoration:none;transition:all .2s;width:30px}.user-card>.content>.social-media>a:hover{color:#000}.footer-title{color:#252b42;font-size:16px}.footer-subtitle,.footer-title{font-style:normal;font-weight:700;line-height:24px}.footer-subtitle{color:#737373;font-size:14px;letter-spacing:1px;text-decoration:none}.footer-subtitle:hover{text-decoration:underline}.footer-title-with-icon{align-items:center;display:flex;gap:10px;width:auto}.footer-title-with-icon>.icon{align-items:center;color:#96bb7c;display:flex;font-size:1.5em;height:25px;justify-content:center;width:25px}.footer-title-with-icon>.inner-text{font-size:14px;font-style:normal;font-weight:700;letter-spacing:1px;line-height:28px}.footer{background-color:#4f8cff;color:#fff;flex-direction:column;gap:12px;left:0;margin:0 auto;max-width:100vw;overflow-x:hidden;padding:20px;position:relative;right:0;text-align:center;width:100vw}.footer,.footer-contact{align-items:center;box-sizing:border-box;display:flex}.footer-contact{flex-direction:row;flex-wrap:nowrap;gap:30px;justify-content:center;margin-top:12px;max-width:1100px;width:100%}.footer-contact div{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:600px){.footer-contact{align-items:center;box-sizing:border-box;flex-direction:column;gap:12px;padding:0 8px}.footer,.footer-contact{margin:0 auto;max-width:100vw;width:100vw}.footer{left:0;overflow-x:hidden;padding:18px 4px;position:relative;right:0}}.footer-copy{color:#e0e7ff;font-size:.9rem;margin-top:20px}.input-password-wrapper{position:relative;width:100%}.input-password{padding-right:40px;width:100%}.icon-btn{align-items:center;background:none;border:none;color:#888;cursor:pointer;display:flex;font-size:1.3em;height:24px;justify-content:center;margin:0;outline:none;padding:0;position:absolute;right:10px;top:50%;transform:translateY(-50%);transition:color .2s;width:32px}.icon-btn:focus,.icon-btn:hover{color:#4f8cff}.fade-in{animation:fadeIn .4s}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.workmode-checkboxes{display:flex;flex-wrap:wrap;gap:18px;margin-top:8px}.workmode-checkbox{align-items:center;background:#f3f6fd;border:2px solid #e0e7ff;border-radius:16px;box-sizing:border-box;color:#4f8cff;cursor:pointer;display:flex;font-size:1.08rem;font-weight:500;gap:10px;min-width:120px;padding:8px 22px 8px 14px;position:relative;transition:background .2s,box-shadow .2s;-webkit-user-select:none;user-select:none}.workmode-checkbox.checked{background:#e0e7ff;border-color:#4f8cff;box-shadow:0 2px 12px #4f8cff14}.workmode-checkbox input[type=checkbox]{height:0;opacity:0;position:absolute;width:0}.custom-checkbox{background:#fff;border:2px solid #4f8cff;border-radius:8px;display:inline-block;height:22px;margin-right:4px;position:relative;transition:background .2s,border .2s;width:22px}.workmode-checkbox.checked .custom-checkbox{background:#4f8cff;border-color:#4f8cff}.custom-checkbox:after{content:"";display:none;position:absolute}.workmode-checkbox.checked .custom-checkbox:after{border:solid #fff;border-width:0 3px 3px 0;content:"";display:block;height:12px;left:6px;top:2px;transform:rotate(45deg);width:6px}.workmode-label{color:#222;font-size:1.08rem;font-weight:500}.subjects-select__menu{background:#fff!important;border-radius:0 0 16px 16px;box-shadow:0 8px 32px #4f8cff26;color:#222;margin-top:0;z-index:10}.subjects-select__option{background:#0000;color:#fff;cursor:pointer}.subjects-select__option--is-selected{background:#4f8cff!important;color:#fff}.subjects-select__option--is-focused{background:#e0e7ff!important;color:#222}.subjects-select__multi-value{background:#fff;border-radius:12px;color:#4f8cff}.subjects-select__multi-value__label{color:#4f8cff}.subjects-select__multi-value__remove{color:#4f8cff;cursor:pointer}.subjects-checkboxes{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:8px}.subject-checkbox{align-items:center;background:#f3f6fd;border-radius:16px;box-sizing:border-box;color:#4f8cff;cursor:pointer;display:flex;flex-direction:column;flex-wrap:wrap;font-size:1rem;font-weight:500;gap:10px 16px;justify-content:flex-start;max-height:120px;min-width:120px;overflow-y:auto;padding:6px 14px;transition:background .2s}.subject-checkbox input[type=checkbox]{accent-color:#4f8cff;height:18px;width:18px}.subject-checkbox:hover{background:#e0e7ff}.register-page{align-items:flex-start;background:linear-gradient(135deg,#4f8cff,#a6c1ee);background-attachment:fixed;display:flex;justify-content:center;min-height:100vh;min-height:100dvh;padding-top:24px;width:100vw}.register-form{align-items:stretch;background:#fff;border-radius:24px;box-shadow:0 4px 24px #4f8cff1a;box-sizing:border-box;display:flex;flex-direction:column;gap:22px;max-width:900px;min-width:0;overflow-x:hidden;padding:48px 32px 40px;position:relative;width:100%;z-index:0}@media (max-width:900px){.register-form{max-width:98vw;padding:32px 8vw 28px}}@media (max-width:600px){.register-form{border-radius:0;box-shadow:none;max-width:100vw;min-width:100%;padding:18px 5vw}}.register-title{color:#4f8cff;font-size:2rem;font-weight:700;margin-bottom:8px;text-align:center}.register-page .form-group label{color:#222;font-size:1rem;font-weight:500}.form-group input,.form-group select,.form-group textarea{border:1px solid #c7d2fe;border-radius:8px;box-sizing:border-box;font-size:1rem;outline:none;padding:12px 16px;transition:border .2s;width:100%}.form-group input:focus{border:1.5px solid #4f8cff}.roles-group{margin-top:8px}.register-roles{display:flex;flex-wrap:wrap;gap:16px;margin-top:8px}.role-btn{background:#e0e7ff;border:none;border-radius:24px;color:#4f8cff;cursor:pointer;font-size:1.1rem;font-weight:700;padding:12px 24px;transition:background .2s,color .2s,transform .1s}.role-btn.selected,.role-btn:hover{background:#4f8cff;color:#fff;transform:translateY(-2px) scale(1.04)}.form-error{background:#fff0f0;border-radius:8px;color:#e53e3e;font-size:1rem;margin-bottom:8px;padding:8px 12px;text-align:center}.register-submit{border-radius:32px;font-size:1.1rem;margin-top:8px;padding:14px 0;transition:background .2s,transform .1s}.register-submit:hover{background:#2a5db0;transform:translateY(-2px) scale(1.03)}.verify-code-btn{align-self:flex-start;background:#4f8cff;border:none;border-radius:24px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:4px;padding:10px 18px;transition:background .2s,transform .1s}.verify-code-btn:hover{background:#2a5db0;transform:translateY(-1px) scale(1.02)}.verify-code-btn:disabled{background:#c7d2fe;color:#888;cursor:not-allowed;transform:none}:root{--toastify-color-light:#fff;--toastify-color-dark:#121212;--toastify-color-info:#3498db;--toastify-color-success:#07bc0c;--toastify-color-warning:#f1c40f;--toastify-color-error:#e74d3c;--toastify-color-transparent:#ffffffb3;--toastify-icon-color-info:var(--toastify-color-info);--toastify-icon-color-success:var(--toastify-color-success);--toastify-icon-color-warning:var(--toastify-color-warning);--toastify-icon-color-error:var(--toastify-color-error);--toastify-container-width:fit-content;--toastify-toast-width:320px;--toastify-toast-offset:16px;--toastify-toast-top:max(var(--toastify-toast-offset),env(safe-area-inset-top));--toastify-toast-right:max(var(--toastify-toast-offset),env(safe-area-inset-right));--toastify-toast-left:max(var(--toastify-toast-offset),env(safe-area-inset-left));--toastify-toast-bottom:max(var(--toastify-toast-offset),env(safe-area-inset-bottom));--toastify-toast-background:#fff;--toastify-toast-padding:14px;--toastify-toast-min-height:64px;--toastify-toast-max-height:800px;--toastify-toast-bd-radius:6px;--toastify-toast-shadow:0px 4px 12px #0000001a;--toastify-font-family:sans-serif;--toastify-z-index:9999;--toastify-text-color-light:#757575;--toastify-text-color-dark:#fff;--toastify-text-color-info:#fff;--toastify-text-color-success:#fff;--toastify-text-color-warning:#fff;--toastify-text-color-error:#fff;--toastify-spinner-color:#616161;--toastify-spinner-color-empty-area:#e0e0e0;--toastify-color-progress-light:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);--toastify-color-progress-dark:#bb86fc;--toastify-color-progress-info:var(--toastify-color-info);--toastify-color-progress-success:var(--toastify-color-success);--toastify-color-progress-warning:var(--toastify-color-warning);--toastify-color-progress-error:var(--toastify-color-error);--toastify-color-progress-bgo:0.2}.Toastify__toast-container{box-sizing:border-box;color:#fff;display:flex;flex-direction:column;position:fixed;-webkit-transform:translateZ(9999);-webkit-transform:translateZ(var(--toastify-z-index));width:-webkit-fit-content;width:fit-content;width:var(--toastify-container-width);z-index:9999;z-index:var(--toastify-z-index)}.Toastify__toast-container--top-left{left:max(16px,env(safe-area-inset-left));left:var(--toastify-toast-left);top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top)}.Toastify__toast-container--top-center{align-items:center;left:50%;top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top);transform:translateX(-50%)}.Toastify__toast-container--top-right{align-items:end;right:max(16px,env(safe-area-inset-right));right:var(--toastify-toast-right);top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top)}.Toastify__toast-container--bottom-left{bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);left:max(16px,env(safe-area-inset-left));left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{align-items:center;bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);left:50%;transform:translateX(-50%)}.Toastify__toast-container--bottom-right{align-items:end;bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);right:max(16px,env(safe-area-inset-right));right:var(--toastify-toast-right)}.Toastify__toast{--y:0;align-items:center;border-radius:6px;border-radius:var(--toastify-toast-bd-radius);box-shadow:0 4px 12px #0000001a;box-shadow:var(--toastify-toast-shadow);box-sizing:border-box;display:flex;flex:1 1 auto;font-family:sans-serif;font-family:var(--toastify-font-family);margin-bottom:1rem;max-height:800px;max-height:var(--toastify-toast-max-height);min-height:64px;min-height:var(--toastify-toast-min-height);padding:14px;padding:var(--toastify-toast-padding);position:relative;touch-action:none;width:320px;width:var(--toastify-toast-width);word-break:break-word;z-index:0}@media only screen and (max-width:480px){.Toastify__toast-container{left:env(safe-area-inset-left);margin:0;width:100vw}.Toastify__toast-container--top-center,.Toastify__toast-container--top-left,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translateX(0)}.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translateX(0)}.Toastify__toast-container--rtl{left:auto;right:env(safe-area-inset-right)}.Toastify__toast{--toastify-toast-width:100%;border-radius:0;margin-bottom:0}}.Toastify__toast-container[data-stacked=true]{width:320px;width:var(--toastify-toast-width)}.Toastify__toast--stacked{position:absolute;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s;width:100%}.Toastify__toast--stacked[data-collapsed] .Toastify__close-button,.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{bottom:100%;content:"";height:calc(var(--g)*1px);left:0;position:absolute;right:0}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{bottom:0;content:"";height:100%;left:0;position:absolute;right:0;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{-webkit-margin-end:10px;display:flex;flex-shrink:0;margin-inline-end:10px;width:22px}.Toastify--animate{animation-duration:.5s;animation-fill-mode:both}.Toastify--animate-icon{animation-duration:.3s;animation-fill-mode:both}.Toastify__toast-theme--dark{background:#121212;background:var(--toastify-color-dark);color:#fff;color:var(--toastify-text-color-dark)}.Toastify__toast-theme--colored.Toastify__toast--default,.Toastify__toast-theme--light{background:#fff;background:var(--toastify-color-light);color:#757575;color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{background:#3498db;background:var(--toastify-color-info);color:#fff;color:var(--toastify-text-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{background:#07bc0c;background:var(--toastify-color-success);color:#fff;color:var(--toastify-text-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{background:#f1c40f;background:var(--toastify-color-warning);color:#fff;color:var(--toastify-text-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{background:#e74d3c;background:var(--toastify-color-error);color:#fff;color:var(--toastify-text-color-error)}.Toastify__progress-bar-theme--light{background:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:#bb86fc;background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:#3498db;background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:#07bc0c;background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:#f1c40f;background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:#e74d3c;background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning{background:#ffffffb3;background:var(--toastify-color-transparent)}.Toastify__close-button{background:#0000;border:none;color:#fff;cursor:pointer;opacity:.7;outline:none;padding:0;position:absolute;right:6px;top:6px;transition:.3s ease;z-index:1}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:auto}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:focus,.Toastify__close-button:hover{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{bottom:0;height:100%;left:0;opacity:.7;position:absolute;transform-origin:left;width:100%;z-index:1}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{border-bottom-left-radius:0;left:auto;right:0;transform-origin:right}.Toastify__progress-bar--wrp{border-bottom-left-radius:6px;border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:6px;border-bottom-right-radius:var(--toastify-toast-bd-radius);bottom:0;height:5px;left:0;overflow:hidden;position:absolute;width:100%}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{height:100%;opacity:.2;opacity:var(--toastify-color-progress-bgo);width:100%}.Toastify__spinner{animation:Toastify__spin .65s linear infinite;border:2px solid #e0e0e0;border-color:var(--toastify-spinner-color-empty-area);border-radius:100%;border-right-color:#616161;border-right-color:var(--toastify-spinner-color);box-sizing:border-box;height:20px;width:20px}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,var(--y),0)}to{opacity:0;transform:translate3d(2000px,var(--y),0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,var(--y),0)}to{opacity:0;transform:translate3d(-2000px,var(--y),0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--bottom-left,.Toastify__bounce-enter--top-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--bottom-right,.Toastify__bounce-enter--top-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--bottom-left,.Toastify__bounce-exit--top-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--bottom-right,.Toastify__bounce-exit--top-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{animation-timing-function:ease-in;opacity:0;transform:perspective(400px) rotateX(90deg)}40%{animation-timing-function:ease-in;transform:perspective(400px) rotateX(-20deg)}60%{opacity:1;transform:perspective(400px) rotateX(10deg)}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0,var(--y),0) perspective(400px)}30%{opacity:1;transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg)}to{opacity:0;transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg)}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(110%,var(--y),0);visibility:hidden}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(-110%,var(--y),0);visibility:hidden}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(0,500px,0);visibility:hidden}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(0,-500px,0);visibility:hidden}}.Toastify__slide-enter--bottom-left,.Toastify__slide-enter--top-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--bottom-right,.Toastify__slide-enter--top-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--bottom-left,.Toastify__slide-exit--top-left{animation-duration:.3s;animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-right,.Toastify__slide-exit--top-right{animation-duration:.3s;animation-name:Toastify__slideOutRight;animation-timing-function:ease-in}.Toastify__slide-exit--top-center{animation-duration:.3s;animation-name:Toastify__slideOutUp;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-center{animation-duration:.3s;animation-name:Toastify__slideOutDown;animation-timing-function:ease-in}@keyframes Toastify__spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.navbar-links .register-link{border-bottom:1px solid #ffffff21!important}.navbar-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1e293b40;height:100vh;left:0;position:fixed;top:0;transition:opacity .3s;width:100vw;z-index:99}.navbar{align-items:center;background:#4f8cff;color:#fff;display:flex;justify-content:space-between;padding:16px 32px;position:relative;z-index:1000}.navbar-logo{height:50px}.navbar-right{align-items:center;display:flex;gap:16px}.navbar-fixed-links{align-items:center;display:flex;gap:12px}.navbar-link{color:#fff;font-size:1.1rem;text-decoration:none;transition:color .2s}.navbar-link:hover{color:#e0e7ff}.navbar-link.icon-only{align-items:center;border-radius:8px;display:inline-flex;height:38px;justify-content:center;transition:background .2s;width:38px}.navbar-link.icon-only:hover{background:#ffffff1a}.nav-link-icon svg{color:#fff;height:24px;width:24px}.logout-btn{background:none;border:none;color:#fff;cursor:pointer;padding:0}.logout-btn:hover{color:#e0e7ff}.chat-dot{background:#e74c3c;height:10px;right:2px;top:2px;width:10px;z-index:2}.navbar-hamburger{background:none;border:none;cursor:pointer;font-weight:400;height:36px;width:36px;z-index:1100}.hamburger-icon,.navbar-hamburger{display:flex;flex-direction:column;justify-content:center}.hamburger-icon{gap:5px;height:24px;width:24px}.hamburger-icon span{background:#fff;border-radius:2px;display:block;height:3px;transition:transform .3s ease,opacity .3s ease;width:100%}.navbar-hamburger.open .hamburger-icon span:first-child{transform:translateY(8px) rotate(45deg)}.navbar-hamburger.open .hamburger-icon span:nth-child(2){opacity:0}.navbar-hamburger.open .hamburger-icon span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.navbar-links{align-items:flex-start;background:linear-gradient(180deg,#2563eb,#60a5fa 60%,#e0e7ff);background-color:#2563eb;border-bottom-left-radius:22px;border-bottom-right-radius:22px;border-top-left-radius:22px;box-shadow:-8px 0 32px #1e293b21;display:flex;flex-direction:column;gap:16px;height:100vh;justify-content:flex-start;max-width:90vw;padding:64px 20px 32px;position:fixed;right:-340px;top:0;transition:right .32s cubic-bezier(.77,.2,.05,1);width:260px;z-index:120}.navbar-links.open{right:0}.navbar-links .navbar-link,.navbar-links a{align-items:center;border-bottom:1px solid #ffffff21;border-radius:12px;color:#fff;display:flex;font-size:1.13rem;font-weight:500;gap:13px;margin-bottom:0;padding:10px 12px;text-decoration:none;transition:background .18s,color .18s}.navbar-links .logout-mobile{border-bottom:1px solid #ffffff21!important}.navbar-links .navbar-link:last-child,.navbar-links a:last-child{border-bottom:none;.navbar-links .navbar-link:hover,.navbar-links a:hover{background:#dbeafe;color:#2563eb}.navbar-links .nav-link-icon svg{color:#fff;height:26px;width:26px}@media (max-width:768px){.navbar-fixed-links{display:none}.navbar-links{align-items:flex-start;max-width:320px;padding:64px 16px 32px;right:-100vw;width:90vw}.navbar-links.open{right:0}}}.city-autocomplete-group{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.city-autocomplete-group label{color:#fff;font-weight:700}.geo-btn{background:#2b6cb0;color:#fff}.geo-btn:active,.geo-btn:focus,.geo-btn:hover{background:#225aa3}.city-autocomplete-row{align-items:center;display:flex;gap:8px}.geo-btn{align-items:center;background:#e0e7ff;border:none;border-radius:8px;color:#4f8cff;cursor:pointer;display:flex;font-size:1.3rem;justify-content:center;min-height:44px;min-width:44px;padding:8px 12px;transition:background .2s,color .2s}.geo-btn:active,.geo-btn:focus,.geo-btn:hover{background:#4f8cff;color:#fff}.geo-spinner{animation:spin .8s linear infinite;border:3px solid #4f8cff;border-radius:50%;border-top-color:#e0e7ff;display:inline-block;height:22px;width:22px}.city-autocomplete-error{color:#e53e3e;font-size:.98em;margin-top:2px}.city-autocomplete-info{color:#4f8cff;font-size:.98em;margin-top:2px}.city-autocomplete-desc{color:#666;font-size:.93em;margin-top:2px}@media (max-width:600px){.city-autocomplete-row{align-items:stretch;flex-direction:column;gap:6px}.geo-btn{font-size:1.1rem;min-height:38px;min-width:0;width:100%}}.dashboard-shell{background:linear-gradient(135deg,#4f8cff,#a6c1ee);box-sizing:border-box;display:flex;justify-content:flex-start;min-height:100vh;padding:2.5rem 1.25rem 4rem;width:100%}.dashboard-container{display:flex;flex-direction:column;gap:28px;margin:0 auto;max-width:1120px;width:100%}.dashboard-eyebrow{color:#eaf2ff;font-size:.78rem;font-weight:500;letter-spacing:.04em;margin:0}.dashboard-heading{color:#fff;font-size:2.2rem;font-weight:700;letter-spacing:-.03em;margin:0}.dashboard-subtitle{color:#f5f7ff;font-size:1rem;margin:4px 0 12px;max-width:720px}.section-shell{margin:0 auto;max-width:1120px;width:100%}.panel-block{background:linear-gradient(135deg,#b3cdfa,#7fa4e6);border-radius:26px;box-shadow:0 4px 24px #4f8cff22;box-sizing:border-box;margin:0 auto;padding:34px 30px;width:100%}.panel-compact{max-width:760px}.panel-narrow{max-width:840px}.panel-title{color:#304b7a;font-size:1.32rem;font-weight:700;letter-spacing:-.01em;margin:0 0 18px;text-align:left}.panel-title.center{text-align:center}.panel-list{gap:18px;max-height:460px;overflow-y:auto}.panel-card,.panel-list{display:flex;flex-direction:column}.panel-card{align-items:flex-start;background:#fff;border:1.5px solid #e3eaf6;border-radius:18px;box-shadow:0 2px 12px #4f8cff11;box-sizing:border-box;gap:8px;padding:20px 22px;width:100%}.item-title{color:#304b7a;font-size:1.4rem;font-weight:700;word-break:break-word}.detail-row{color:#304b7a;font-size:.9rem;font-weight:400;line-height:1.5}.detail-label{color:#6d7ea7;font-weight:400;margin-right:6px}.detail-value{color:#1d2f5d;font-weight:600}.panel-note{color:#b91c1c;font-weight:700;margin-top:6px}.calendar-shell{align-items:center}.calendar-frame,.calendar-shell{display:flex;justify-content:center;width:100%}.calendar-frame{background:linear-gradient(135deg,#4f8cff24,#a6c1ee1f);border-radius:26px;box-shadow:0 4px 24px #4f8cff22;box-sizing:border-box;max-width:840px;padding:26px 14px}.calendar-frame .calendar{margin:0 auto;width:min(100%,960px)}.upcoming-wrap{margin:0 auto;max-width:840px;width:100%}.list-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.list-actions button{border:none;border-radius:8px;cursor:pointer;font-size:.98em;font-weight:600;margin:0;padding:7px 14px;transition:background .18s,transform .12s}.list-actions button.primary{background:linear-gradient(90deg,#4f8cff,#2563eb);box-shadow:0 2px 8px #4f8cff22;color:#fff}.list-actions button.secondary{background:#e3eaf6;color:#2563eb}.list-actions button.muted{background:#f4f5fa;color:#a3adc4}.stats-panel{background:linear-gradient(135deg,#b3cdfa,#7fa4e6);border-radius:26px;box-shadow:0 4px 24px #4f8cff22;box-sizing:border-box;margin:0 auto 32px;padding:34px 30px}.stats-panel .panel-title{color:#304b7a;font-size:1.32rem;font-weight:700;letter-spacing:-.01em;margin:0 0 18px;text-align:left}.stats-chart-wrap{background:#0000;border-radius:0;box-shadow:none;margin:0 auto;max-width:600px;padding:0}@media (max-width:900px){.panel-block{padding:26px 20px}.panel-compact{max-width:100%}.dashboard-container{gap:22px}}@media (max-width:768px){.dashboard-shell{padding:1.6rem 1.05rem 3rem}.dashboard-heading{font-size:1.9rem}.panel-block{border-radius:22px;padding:24px 18px}.panel-list{max-height:320px;overflow-y:auto}.calendar-frame{border-radius:22px;justify-content:center;padding:20px 12px}.calendar-frame .calendar{max-width:100%;width:100%}}.lessons-and-payments-panel{margin-top:8px}.lessons-and-payment-actions{padding-left:0;width:100%}.tutor-rating-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 6px 18px #0000000a;margin:16px 0;padding:16px}.tutor-rating-header{align-items:center;display:flex;gap:12px;justify-content:space-between}.tutor-rating-avg{align-items:flex-end;display:flex;flex-direction:column}.tutor-rating-avg .avg-value{color:#0b1220;font-size:1.8rem;font-weight:800;line-height:1}.tutor-rating-avg .avg-count{color:#6b7280;font-size:.95rem}.tutor-reviews-list{display:flex;flex-direction:column;gap:10px;margin-top:10px}.tutor-review{background:#f9fbfd;border:1px solid #eef2f5;border-radius:10px;padding:10px 12px}.tutor-review-meta{color:#4b5563;display:flex;font-size:.9rem;justify-content:space-between;margin-bottom:4px}.tutor-review-rating{color:#111827;font-weight:700}.tutor-review-text{color:#0f172a;font-size:.95rem;margin:0}.tutor-rating-muted{color:#6b7280;font-size:.95rem;margin:4px 0}.tutor-rating-error{color:#dc2626;font-size:.95rem;margin:4px 0}.calendar-modal-events .add-event-btn{margin-top:18px}.calendar-modal-backdrop{-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:none;bottom:0;left:0;position:fixed;right:0;top:0;z-index:2000}.calendar-modal{animation:fadeInModal .22s cubic-bezier(.22,.9,.3,1);background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid #4f8cff40;border-radius:16px;box-shadow:0 8px 28px #4f8cff1f,0 2px 8px #0000000f;display:flex;flex-direction:column;font-family:Montserrat,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;left:50%;max-height:80vh;max-width:96vw;min-height:120px;min-width:340px;overflow:hidden;padding:28px 28px 24px;position:fixed;top:50%;transform:translate(-50%,-50%);z-index:2100}.calendar-modal-header{font-family:inherit}.calendar-modal-close{color:#2563eb;transition:none}.calendar-modal-events{font-family:inherit;padding:0}.calendar-modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:18px}.calendar-modal-title{color:#2563eb;font-size:1.18rem;font-weight:700}.calendar-modal-close{background:none;border:none;color:#2563eb!important;cursor:pointer;font-size:1.2rem;margin-left:10px}.calendar-modal-events{max-height:55vh;overflow-y:auto}@keyframes fadeInModal{0%{opacity:0;transform:translate(-50%,-60%)}to{opacity:1;transform:translate(-50%,-50%)}}.inline-event-card{align-items:center;background:#f4f8ff;border-left:4px solid #4f8cff;border-radius:8px;box-shadow:0 2px 8px #4f8cff12;color:#1e293b;display:flex;font-size:1.04rem;font-weight:500;gap:10px;margin-bottom:6px;padding:7px 12px}.inline-event-time{color:#2563eb;font-size:1.08rem;font-weight:700;margin-right:8px}.event-item,.inline-event-title{color:#1e293b;font-size:1.04rem;font-weight:500}.event-item{background:#fff;border-left:4px solid #4f8cff;border-radius:12px;box-shadow:0 4px 18px #4f8cff1f;cursor:pointer;gap:10px;margin-bottom:10px;max-width:340px;min-width:180px;padding:10px 16px;transition:box-shadow .18s,background .18s}.event-item:active,.event-item:hover{background:#fff;box-shadow:none}.event-color-dot{align-self:center;border:2px solid #fff;border-radius:50%;box-shadow:0 3px 10px #0000001f;height:14px;min-width:14px;width:14px}.event-time{color:#2563eb;font-size:1.08rem;font-weight:700;margin-right:8px}.event-partner,.event-student,.event-title{color:#1e293b;font-size:1.04rem;font-weight:500}.event-partner{opacity:.9}.calendar{--cal-bg:#fff;--cal-accent:#4f8cff;--cal-muted:#6b7280;--cal-border:#0000000f;--cal-radius:12px;background:var(--cal-bg);border-radius:var(--cal-radius);box-shadow:0 6px 30px #0206170f;box-sizing:border-box;max-width:1000px;padding:14px;width:100%}.calendar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.cal-nav{background:#0000;border:none;border-radius:8px;color:var(--cal-accent);cursor:pointer;font-size:1.4rem;padding:8px}.year-select{align-items:center;appearance:none;-webkit-appearance:none;-moz-appearance:none;background:#fff;background-image:url("data:image/svg+xml;utf8,<svg xmlns=%27http://www.w3.org/2000/svg%27 width=%2714%27 height=%2710%27 viewBox=%270 0 14 10%27><path fill=%27%234f8cff%27 d=%27M7 10L0 0h14z%27/></svg>");background-position:right 10px center;background-repeat:no-repeat;border:1px solid #0000000f;border-radius:8px;color:#222;display:inline-flex;font-family:Montserrat,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1.05rem;font-weight:700;padding:6px 34px 6px 8px}.year-select::-ms-expand{display:none}.cal-title{color:#0f1724;font-size:1.05rem;font-weight:600}.calendar-grid{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(7,1fr)}.cal-weekday{color:#666;font-size:.85rem;text-align:center}.cal-cell{align-items:flex-end;background:#0000;border-radius:10px;cursor:pointer;display:flex;flex-direction:column;min-height:60px;overflow:hidden;padding:8px;transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease}.cal-cell.empty{background:#0000;box-shadow:none;cursor:default;opacity:.45;pointer-events:none;transform:none}.cal-day-number{color:#222;font-weight:600}.cal-dots{align-self:flex-start;display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}.cal-dot{background:#4f8cff;border:2px solid #fff;border-radius:50%;box-shadow:0 3px 8px #00000014;height:10px;width:10px}.cal-cell.today{box-shadow:inset 0 0 0 2px #4f8cff1f}.cal-cell:hover{box-shadow:0 8px 24px #02061714;transform:translateY(-4px)}.cal-cell.selected{border:1px solid #0e72ff2e;box-shadow:0 10px 30px #0e72ff38,0 2px 6px #0000000f}.inline-day-view{background:linear-gradient(180deg,#4f8cff08,#4f8cff03);border:1px solid #4f8cff0a;border-radius:10px;margin-top:8px;max-height:360px;overflow:auto;padding:10px;transition:max-height .18s ease,box-shadow .18s ease}.inline-day-header{align-items:center;color:var(--cal-accent);display:flex;font-size:13px;font-weight:700;gap:10px;justify-content:space-between;margin-bottom:8px}.inline-hours{display:flex;flex-direction:column;gap:6px}.inline-hour-row{align-items:center;display:flex;gap:8px}.inline-hour-label{color:#223;font-size:12px;opacity:.9;width:56px}.inline-hour-events{flex:1 1}.inline-event{background:#fff;border:1px solid #4f8cff0f;border-radius:6px;color:#0b2345;font-size:12px;padding:4px 8px}.inline-event .inline-event-time{color:#4f8cff;font-weight:700;margin-right:6px}.inline-no-event{color:#7b8794;font-size:12px}.inline-no-events-msg{color:var(--cal-muted);font-size:13px;padding:8px;text-align:left}@media (max-width:600px){.calendar{max-width:100%}.cal-cell{min-height:44px}.inline-day-view{border-radius:10px;box-shadow:0 8px 24px #0206170f;max-height:none;padding:14px;width:100%}.inline-day-header{color:#2f6fe6;font-size:1.05rem;font-weight:800;margin-bottom:8px}.inline-hours{display:flex;flex-direction:column;gap:10px}.inline-hour-row{align-items:flex-start;display:flex;gap:10px;padding:8px 6px}.inline-hour-label{color:#233;flex-shrink:0;font-size:.95rem;width:72px}.inline-event{border-radius:10px;font-size:.95rem;padding:10px 12px}.inline-no-events-msg{font-size:.98rem;padding:12px}.add-event-btn{border-radius:10px;box-sizing:border-box;font-size:1rem;padding:12px 14px;width:100%}.day-view{border-radius:12px;padding:16px}.day-view-title{font-size:1.05rem}.day-hours{max-height:none}.hour-label{width:68px}.event-item{font-size:.98rem;padding:12px}.event-time{width:64px}}.mobile-day-panel{background:#fff;border-top-left-radius:14px;border-top-right-radius:14px;bottom:0;box-shadow:0 -12px 40px #0206171f;left:0;overflow:auto;padding:14px;position:fixed;right:0;top:20%;z-index:1200}.mobile-day-panel .day-view-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.mobile-day-panel .day-view-title{font-size:1.1rem;font-weight:800}.mobile-day-panel .day-hours{max-height:60vh;overflow:auto}.mobile-day-panel .add-event-btn{bottom:12px;margin-top:12px;position:-webkit-sticky;position:sticky}.calendar-footer{display:flex;flex-direction:column;gap:8px;margin-top:12px}.day-view{background:#fff;border:1px solid #0000000a;border-radius:10px;padding:12px}.day-view-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.day-view-title{color:#222;font-weight:700}.day-hours{display:flex;flex-direction:column;gap:8px;max-height:320px;overflow:auto;padding-right:6px}.hour-row{align-items:flex-start;display:flex;gap:12px}.hour-label{color:#666;width:60px}.hour-events{flex:1 1}.event-item{align-items:center;background:#eef7ff;border-radius:8px;display:flex;gap:8px;padding:8px}.event-time{color:var(--cal-accent);font-weight:600;width:60px}.event-student,.event-title{color:#0f1724}.no-event-slot{color:#999}.events-list ul{list-style:none;margin:0;padding:0}.events-list li{background:#f6f9ff;border-radius:6px;color:#0f1724;margin-bottom:6px;padding:6px}.no-events{color:var(--cal-muted);font-size:.95rem}.add-event-btn{background:var(--cal-accent);border:none;border-radius:8px;color:#fff;cursor:pointer;padding:8px 12px}.add-event-btn:disabled{cursor:not-allowed;opacity:.6}.mobile-backdrop{background:#02061759;bottom:0;left:0;position:fixed;right:0;top:0;z-index:1100}@keyframes slideUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.mobile-day-panel{animation:slideUp .22s cubic-bezier(.22,.9,.3,1)}.upcoming-events-panel{align-items:center;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:linear-gradient(135deg,#b3cdfa,#7fa4e6);border-radius:28px;color:#1a2d5a;display:flex;flex-direction:column;margin:32px auto 0;max-width:840px;padding:26px 14px;position:relative}.upcoming-events-title{color:#304b7a;font-size:1.35rem;font-weight:600;letter-spacing:-.01em;margin-bottom:1rem;text-shadow:0 2px 12px #7896c82e}.upcoming-events-row{align-items:center;display:flex;flex-direction:row;gap:.6rem;justify-content:center;margin-top:.5rem;padding:0 52px;position:relative;width:100%}.upcoming-events-list{display:flex;flex:1 1 auto;flex-direction:row;gap:.65rem;min-width:0;overflow-x:auto;padding:0 34px 12px;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none}.upcoming-events-list::-webkit-scrollbar{display:none}.upcoming-events-list:after{content:"";flex:0 0 38px}.upcoming-event-card{align-items:flex-start;background:#ffffffe0;border:1px solid #ffffffa6;border-radius:22px;display:flex;flex:0 0 auto;gap:1.1rem;margin:0;max-width:250px;min-width:200px;padding:.7rem;position:relative;scroll-snap-align:center;transition:transform .12s ease,box-shadow .12s ease}.upcoming-event-card:hover{border-radius:22px;box-shadow:0 30px 60px #28467847;transform:translateY(-3px)}.event-leading{gap:10px;min-width:64px}.event-icon,.event-leading{align-items:center;display:flex}.event-icon{background:linear-gradient(135deg,#f2f6ff,#d9e6ff);border-radius:14px;box-shadow:0 4px 14px #32509626;color:#4c7dff;font-size:1.2rem;font-weight:700;height:42px;justify-content:center;width:42px}.upcoming-dot{border:2px solid #fff;border-radius:50%;box-shadow:0 4px 10px #00000014;display:inline-block;height:14px;position:absolute;right:10px;top:10px;width:14px}.event-details{display:flex;flex-direction:column;gap:.25rem}.event-title{color:#203466;font-size:1.1rem;font-weight:700}.event-label{color:#6d7ea7;font-size:.82rem}.event-value{color:#1d2f5d;font-weight:600}.event-partner{color:#5a6b8a;font-size:.9em;font-weight:400}.event-partner strong{color:#1d2f5d;font-weight:600}.arrow-btn{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fff6;border:none;border-radius:50%;color:#3a5ea8;cursor:pointer;display:flex;font-size:2rem;height:46px;justify-content:center;transition:background .2s,box-shadow .2s;width:46px}.arrow-btn:hover{background:#ffffff8c;box-shadow:0 10px 25px #3c5a9633}.arrow-btn.white{background:#ffffff59;color:#3353a1}.arrow-btn.white:hover{background:#ffffff8c}@media (max-width:768px){.upcoming-events-panel{padding:1.5rem 1rem}.upcoming-events-title{margin:0 0 1rem;text-align:center}.upcoming-events-row{align-items:center;display:flex;gap:0;justify-content:center;padding:0;position:relative;width:100%}.upcoming-events-list{align-items:center;display:flex;flex:1 1 auto;flex-direction:row;gap:80px;min-width:0;overflow-x:auto;padding:0 48px 14px;scroll-behavior:smooth;scroll-padding-inline:48px;scroll-snap-type:x mandatory;scrollbar-width:none;width:100%}.upcoming-events-list::-webkit-scrollbar{display:none}.upcoming-events-list:after,.upcoming-events-list:before{content:"";flex:0 0}.upcoming-event-card{box-sizing:border-box;flex-basis:calc(100vw - 96px);flex-grow:0;flex-shrink:0;gap:.6rem;margin:0 auto;max-width:calc(100vw - 96px);padding:.6rem;scroll-snap-align:center;scroll-snap-stop:always}.arrow-btn{background:#ffffffb3;border-radius:50%;box-shadow:0 2px 8px #5078c81a;display:flex!important;font-size:1.2rem;height:28px;margin:0;opacity:1!important;position:absolute;top:50%;transform:translateY(-50%);visibility:visible!important;width:28px;z-index:2}.arrow-btn.left{left:8px}.arrow-btn.right{right:8px}}.form-group select option.placeholder,.form-group select option:disabled{color:#b0b8c9!important}.student-list{align-items:flex-start;background:#f8fbff;border:1px solid #b3d4fc;border-radius:6px;box-sizing:border-box;display:flex;flex-direction:column;font-family:Montserrat,system-ui,Arial,sans-serif;margin-bottom:2px;margin-top:4px;padding:10px;text-align:left;transition:box-shadow .2s;width:100%}@media (max-width:600px){.student-list{font-size:.98rem;min-width:0;padding:8px 4px;width:100%}.student-radio-item label{font-size:.98rem;white-space:normal;word-break:break-word}.student-radio-item{gap:5px;margin-bottom:2px}}.student-list:focus-within{box-shadow:0 0 0 2px #4f8cff44}.student-radio-item{gap:7px;margin-bottom:6px;text-align:left;white-space:nowrap;width:100%}.student-radio-item label{display:inline;font-weight:500;margin:0 0 0 4px;white-space:nowrap}.modal-backdrop{-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);background:#4f8cff1a;height:100vh;width:100vw;z-index:2000}.lesson-form-modal{background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid #4f8cff2e;border-radius:16px;box-shadow:0 8px 28px #4f8cff1f,0 2px 8px #0000000f;display:flex;flex-direction:column;font-family:Montserrat,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;left:50%;max-height:92vh;max-width:440px;overflow-y:auto;padding:28px 28px 20px;position:fixed;top:50%;transform:translate(-50%,-50%);width:96vw;z-index:9999}@media (max-width:600px){.lesson-form-modal{left:50%!important;top:52%!important;transform:translate(-50%,-50%)!important;z-index:99999!important}}.modal-header{border-bottom:none;font-family:inherit;justify-content:space-between;margin-bottom:0;padding-bottom:0}.lesson-form-date-row{color:#2563eb;font-size:1.7rem;font-weight:900;letter-spacing:.01em;margin-bottom:10px;margin-top:2px;padding-left:2px;text-align:left}.close-btn{background:none;border:none;color:#2563eb;font-size:1.2rem;margin-left:10px;transition:color .18s}.close-btn:focus,.close-btn:hover{background:#4f8cff14}.form-group{margin-bottom:15px}.subject-group{margin-bottom:0!important}.subject-group label{margin-bottom:1px!important}.form-row{gap:0!important}#subject.form-group+.form-row,.form-group:last-of-type+.form-row{margin-top:1px}.form-group:first-of-type{margin-top:22px}.offer-separator{background:none;border:none;border-top:1px solid #e3eaf6;height:0;margin:0 0 8px;width:100%}.form-row input[type=number],.form-row input[type=time]{background:#f8fbff!important;border:1px solid #b3d4fc!important;border-radius:6px!important;box-sizing:border-box!important;font-size:1rem!important;height:42px!important;padding:10px!important}.form-group label{color:#333!important;display:block;margin-bottom:5px}.form-group input,.form-group select{background:#f8fbff;border:1px solid #b3d4fc;border-radius:6px;box-sizing:border-box;color:#1e293b;font-family:inherit;font-size:1rem;padding:10px;transition:border .18s,color .18s;width:100%}input::placeholder,select option.placeholder,select:invalid{color:#b0b8c9!important;opacity:1}.form-group select:invalid{background:#f8fbff!important;color:#b0b8c9!important}.form-group select option.placeholder{background:#f8fbff!important;color:#b0b8c9!important}.form-group select option:not(.placeholder){background:#fff!important;color:#1e293b!important}.form-group input:focus,.form-group select:focus{background:#f0f6ff;border:1.5px solid #4f8cff;outline:none}.form-row{display:flex;flex-direction:column;gap:2px}.form-row .form-group label{margin-bottom:5px}.form-row .form-group{flex:1 1}.student-radio-item{align-items:center;display:flex;margin-bottom:5px}.student-radio-item input{margin-right:10px;width:auto}.modal-actions{margin-top:20px;text-align:right}.save-btn{background:linear-gradient(90deg,#4f8cff,#2563eb);border:none;border-radius:8px;box-shadow:0 2px 8px #4f8cff1a;color:#fff;cursor:pointer;font-family:Montserrat,system-ui,Arial,sans-serif;font-size:1.08rem;font-weight:600;letter-spacing:.01em;padding:11px 26px;transition:background .18s,box-shadow .18s,color .18s}.save-btn:focus,.save-btn:hover{background:linear-gradient(90deg,#2563eb,#4f8cff);box-shadow:0 4px 16px #4f8cff29;color:#e3f0fd;outline:none}.save-btn:disabled{background:#b3d4fc;box-shadow:none;color:#e5eaf3;cursor:not-allowed}.proposal-error-message{align-self:flex-end;background:#fff6f6;border-left:3px solid #d32f2f;border-radius:7px;box-shadow:0 1px 3px #d32f2f0f;color:#d32f2f;font-size:.97em;font-weight:500;margin-bottom:8px;max-width:95%;padding:7px 12px}.chat-proposal-entry .proposal-form-row input::placeholder,.chat-proposal-entry .proposal-form-row select option[value=""]{color:#999}.chat-proposal-entry .proposal-form-row input:not(:placeholder-shown),.chat-proposal-entry .proposal-form-row select option:not([value=""]),.chat-proposal-entry .proposal-form-row select:not([value=""]){color:#000}.chat-proposal-entry .proposal-form-row input:focus,.chat-proposal-entry .proposal-form-row select:focus{background:#f0f6ff;border:1.5px solid #4f8cff;outline:none}.chat-proposal-entry{align-self:flex-end;background:#f0f6ff;border-left:3px solid #2563eb;border-radius:8px;box-shadow:0 1px 3px #0000000f;font-size:.97em;margin:4px 0;max-width:77%;padding:7px 12px 7px 10px;width:-webkit-fit-content;width:fit-content}.chat-proposal-entry h3{color:#2563eb;font-size:1.05em;font-weight:600;margin:0 0 7px;text-align:left}.chat-proposal-entry .proposal-form-row label{font-size:.97em;min-width:65px}.chat-proposal-entry .proposal-form-row input,.chat-proposal-entry .proposal-form-row select{border-radius:5px;box-sizing:border-box;color:#b4b5ba;font-size:.95em;max-width:220px;min-width:0;padding:4px 6px;transition:border .18s,color .18s;width:100%}.chat-proposal-entry .proposal-form-actions{gap:8px;margin-top:7px}.chat-proposal-entry .proposal-btn{border-radius:6px;font-size:.97em;padding:6px 14px}.chat-text-input{background:#f8fbff;border:1px solid #b3d4fc;border-radius:10px;flex:1 1;font-size:1rem;height:26px;line-height:1.4;max-height:120px;min-height:26px;min-width:0;overflow:hidden;padding:4px 10px;resize:none;transition:border .18s,background .18s,height .12s}.chat-text-input:not(:placeholder-shown){height:auto;min-height:26px}.chat-text-input:focus{background:#f0f6ff;border-color:#4f8cff;outline:none}.chat-btn{background:linear-gradient(90deg,#4f8cff,#2563eb);border:none;border-radius:10px;box-shadow:0 2px 6px #4f8cff2e;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;min-width:0;padding:10px 12px;transition:.15s;white-space:nowrap}.chat-btn:hover{background:linear-gradient(90deg,#2563eb,#4f8cff)}.chat-btn.secondary{background:#e3eaf6;box-shadow:none;color:#2563eb}.chat-btn.secondary:hover{background:#edf3fb}.send-btn{font-size:1.2rem;min-width:0;padding:8px 10px;text-align:center;width:40px}.proposal-modal{background:none;border:none;border-radius:0;box-shadow:none;display:flex;flex-direction:column;font-family:inherit;font-size:.97em;gap:.4em;margin:8px 0 0;max-width:none;padding:10px 0 0;position:static;width:100%;z-index:1}.proposal-modal h3{color:#2563eb;font-size:1.18rem;font-weight:700;margin-bottom:12px;text-align:center}.proposal-form-row{align-items:center;display:flex;gap:8px;margin-bottom:10px}.proposal-form-row label{color:#2563eb;font-size:1em;font-weight:500;min-width:68px}.proposal-form-row input,.proposal-form-row select{background:#f8fbff;border:1px solid #b3d4fc;border-radius:7px;flex:1 1;font-family:inherit;font-size:1em;padding:8px 10px;transition:border .18s}.proposal-form-row input:focus,.proposal-form-row select:focus{background:#f0f6ff;border:1.5px solid #4f8cff;outline:none}.proposal-form-actions{display:flex;gap:12px;justify-content:center;margin-top:10px}.proposal-btn{background:linear-gradient(90deg,#4f8cff,#2563eb);border:none;border-radius:8px;box-shadow:0 2px 8px #4f8cff1a;color:#fff;cursor:pointer;font-family:inherit;font-size:1.01rem;font-weight:600;letter-spacing:.01em;padding:9px 22px;transition:background .18s,box-shadow .18s,color .18s}.proposal-btn:focus,.proposal-btn:hover{background:linear-gradient(90deg,#2563eb,#4f8cff);box-shadow:0 4px 16px #4f8cff29;color:#e3f0fd;outline:none}.proposal-btn.cancel{background:#e3eaf6;box-shadow:none;color:#2563eb;font-weight:500}.proposal-btn.cancel:hover{background:#f8fbff;color:#1e293b}.chatbar-header{align-items:center;background:linear-gradient(90deg,#2563eb,#4f8cff);border-bottom:1px solid #e3eaf6;box-shadow:0 2px 8px #4f8cff12;color:#fff;display:flex;height:72px;min-height:81px;padding:0 16px 0 6px;position:relative;z-index:2}.chatbar-back-btn{margin-left:0;margin-right:12px}.chatbar-title{color:#fff;flex:1 1;font-size:1.18rem;font-weight:700;letter-spacing:.01em;margin:0 0 0 8px;text-align:left}.chatbar-close-btn{margin-left:12px;margin-right:0}@media (max-width:700px){.chat-sidebar{border-radius:0;bottom:0;box-shadow:none;height:100dvh;left:0;max-width:100vw!important;min-height:100vh;min-width:100vw!important;position:fixed;right:0;top:0;width:100vw!important;z-index:1000}.chatbar-header{height:58px;min-height:58px;padding:0 12px 0 8px}}.chatbar-back-btn,.chatbar-close-btn{align-items:center;background:none;border:none;border-radius:7px;color:#fff;cursor:pointer;display:flex;font-size:1.3rem;justify-content:center;margin-left:2px;margin-right:2px;padding:7px 10px;transition:background .18s,color .18s}.chatbar-back-btn:hover,.chatbar-close-btn:hover{background:#dbeafe;color:#2563eb}.chat-sidebar{animation:chatSlideIn .22s cubic-bezier(.22,.9,.3,1);background-color:#fff;border-bottom-left-radius:18px;border-top-left-radius:18px;bottom:0;box-shadow:-6px 0 22px #0000001f;height:100vh;max-width:100%;overflow:hidden;position:fixed;right:0;top:0;width:380px;z-index:1000}.chat-messages,.chat-sidebar{display:flex;flex-direction:column}.chat-messages{flex-grow:1;min-height:0;overflow-y:auto;padding:10px}.chat-message{display:flex;margin:4px 0;width:100%}.message-content-group{display:flex;flex-direction:column;max-width:85%}.message-body{word-wrap:break-word;border-radius:18px;box-shadow:0 1px .5px #00000021;font-size:14px;line-height:1.4;max-width:100%;padding:8px 12px;word-break:break-word}.message-time{color:#888;font-size:10px;margin-bottom:2px;margin-top:2px;padding:0}.chat-message.me{justify-content:flex-end}.chat-message.me .message-body{background-color:#007bff;border-bottom-right-radius:4px}.chat-message.me .message-body,.chat-message.me .message-body .message-plain,.chat-message.me .message-body .message-plain *{color:#fff!important;font-weight:400!important}.chat-message.me .message-content-group{align-items:flex-end}.chat-message.them{justify-content:flex-start}.chat-message.them .message-body{background-color:#e4e6eb;border-bottom-left-radius:4px;color:#000}.chat-message.them .message-content-group{align-items:flex-start}.proposal-message{animation:chatFade .2s ease-out;background:#c7e8f8;border-left:4px solid #4f8cff;border-radius:12px;box-shadow:0 4px 14px #00000014;color:#0f172a;margin-bottom:10px;padding:10px 12px}.proposal-message.rejected{background:#f8f8f8;border-left:4px solid #cbd5e1;color:#4b5563;text-decoration:line-through}.proposal-message.accepted{background:#e9f8ee;border-left:4px solid #34d399;color:#1f3f2a}.proposal-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;width:100%}.proposal-action{border:none;border-radius:10px;cursor:pointer;flex-basis:calc(50% - 4px);flex-grow:1;flex-shrink:1;font-family:inherit;font-size:.93rem;font-weight:700;padding:8px 12px;transition:transform .12s ease,box-shadow .16s ease,background .16s ease,color .16s ease}.proposal-action.primary{background:linear-gradient(135deg,#1d4ed8,#2563eb);box-shadow:0 4px 12px #2563eb33;color:#fff!important}.proposal-action.secondary{background:#e2e8f0;box-shadow:none;color:#1e3a8a}.proposal-action.ghost{background:#e8f0ff;border:1px solid #1d4ed859;box-shadow:none;color:#1d4ed8}.proposal-action:hover{transform:translateY(-1px)}.proposal-action.primary:hover{box-shadow:0 10px 22px #1555d647}.proposal-action.secondary:hover{background:#e8ecf4}.proposal-action.ghost:hover{background:#ffffff1f}.message-plain{color:#0f172a;white-space:pre-wrap;word-break:break-word}.message-muted{color:#94a3b8;font-style:italic}.chat-input{align-items:center;display:flex;gap:6px;justify-content:center;margin-top:10px;padding-bottom:8px;padding-left:12px;padding-right:12px}.chat-update-info{background:#f4f6fa;border-radius:12px;box-shadow:none;color:#b0b8c9;font-size:.92em;font-style:italic;letter-spacing:.01em;margin:0 auto;opacity:.7;padding:4px 14px;text-align:center}.chat-date{color:#888;font-size:.95em;font-weight:500;margin:18px 0 8px;text-align:center}.chat-dot{background:linear-gradient(135deg,#ff4757,#ff3838);border-radius:50%;box-shadow:0 2px 8px #ff475766,0 0 0 2px #fffc;height:12px;position:absolute;right:4px;top:30%;transform:translateY(-50%);width:12px;z-index:10}.chat-sidebar .chat-dot{animation:pulseNotification 2s ease-in-out infinite;right:12px;top:45%}@keyframes pulseNotification{0%,to{opacity:1;transform:translateY(-50%) scale(1)}50%{opacity:.7;transform:translateY(-50%) scale(1.3)}}.proposal-details{color:inherit;font-size:.9em;margin-top:2px;min-height:18px}.proposal-message *{color:inherit!important}@keyframes chatSlideIn{0%{opacity:0;transform:translateX(24px)}to{opacity:1;transform:translateX(0)}}@keyframes chatFade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.chat-list-item{align-items:center;border-bottom:1px solid #eef2f7;cursor:pointer;display:flex;gap:10px;justify-content:space-between;padding:12px 14px;transition:background .16s ease,transform .12s ease}.chat-list-item:hover{background:#f7f9ff;transform:translateX(-2px)}.chat-list-name{color:#0f172a;font-size:1.05rem;font-weight:700}.chat-list-subtitle{color:#5b6475;font-size:.9rem;margin-top:2px}.payments-status-panel{margin-top:8px}.payments-status-title{text-align:left}.parent-dashboard{background:linear-gradient(135deg,#4f8cff,#a6c1ee);display:flex;flex-direction:column;font-family:Montserrat,Arial,sans-serif;gap:32px;min-height:100vh;padding:32px}.childrenSection,.dashboard-title{color:#fff;font-size:2rem;font-weight:700;text-align:center}.childrenInfo{color:#fff;text-align:center}.add-child-section{background:#ffffff1a;border:1px solid #ffffff4d;border-radius:12px;display:flex;flex-direction:column;gap:16px;margin:0 auto;max-width:400px;padding:24px;text-align:center;transition:all .3s ease}.add-child-section h3{color:#fff;font-size:1.5rem;font-weight:600}.add-child-section input[type=email]{border:none;border-radius:8px;box-sizing:border-box;font-size:1rem;outline:none;padding:12px 16px;transition:all .2s ease-in-out;width:100%}.add-child-section input[type=email]:focus{box-shadow:0 0 8px #ffffff80}.add-child-section button{background:gold;border:none;border-radius:8px;color:navy;cursor:pointer;font-size:1rem;font-weight:700;padding:12px 16px;transition:all .2s ease-in-out}.add-child-section button:disabled{background:#ffd70080;cursor:not-allowed}.add-child-section button:hover:not(:disabled){box-shadow:0 4px 12px #0003;transform:scale(1.05)}.add-child-section p{font-size:.9rem;margin:0}.add-child-section p[style*="color: red"]{color:#ff6b6b}.add-child-section p[style*="color: green"]{color:#7cfc00}.child-card-dot{box-shadow:0 0 0 2px #fffc;display:inline-block;height:12px;right:8px;top:8px;width:12px}.child-legend{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}.legend-title{color:#0f172a;font-weight:700}.legend-top{align-items:center;display:flex;gap:10px;justify-content:space-between}.legend-dots{display:flex;flex-wrap:wrap;gap:10px}.legend-item{align-items:center;background:#ffffffb3;border:1px solid #0000000a;border-radius:12px;display:inline-flex;gap:6px;padding:6px 8px}.child-dot{border-radius:50%;box-shadow:0 0 0 2px #fffc;display:inline-block;height:12px;width:12px}.child-name{color:#0f172a;font-size:.95rem;font-weight:600}.children-tab{padding:12px 0 24px}.children-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.children-title{color:#304b7a;font-size:1.32rem;font-weight:700;margin:0}.show-form-btn{background:#4f8cff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:700;padding:8px 12px}.children-actions{align-items:center;display:flex;gap:10px}.legend-toggle{background:#fff;border:1px solid #00000014;border-radius:10px;box-shadow:0 2px 8px #0f255e14;color:#0f172a;cursor:pointer;font-weight:600;padding:8px 12px}.legend-toggle:hover{background:#f3f6ff}.add-child-form input[type=email],.child-add-modal input[type=email]{border:1px solid #d1d5db;border-radius:10px;box-sizing:border-box;font-size:1rem;padding:10px 12px;width:100%}.add-child-form label.add-child-label{color:#374151;display:block;font-weight:600;margin-bottom:6px}.child-role{color:#6b7280;font-size:.85rem;margin-top:4px}.add-child-form .cancel-btn{background:#e5e7eb;border:none;border-radius:8px;color:#374151;cursor:pointer;padding:8px 10px}.children-grid-wrapper{align-items:center;display:flex;position:relative}.children-grid{display:flex;gap:12px;overflow-x:auto;padding:6px 4px;scroll-behavior:smooth}.children-grid::-webkit-scrollbar{height:10px}.children-grid::-webkit-scrollbar-thumb{background:#00000014;border-radius:8px}.children-grid{-webkit-overflow-scrolling:touch}.child-card{max-width:220px;min-width:140px}.children-scroll-btn{align-items:center;background:#ffffffb3;border:none;border-radius:50%;box-shadow:0 2px 8px #5078c81a;color:#3a5ea8;cursor:pointer;display:flex;font-size:1.2rem;height:28px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);width:28px;z-index:2}.children-scroll-btn.left{left:8px}.children-scroll-btn.right{right:8px}.children-scroll-btn:hover{background:#ffffffd9;transform:translateY(-50%)}.child-card{align-items:center;background:#fff;border-radius:10px;box-shadow:0 6px 18px #0206170f;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:8px;height:150px;padding:12px;position:relative;transition:transform .12s ease;width:160px}.child-card:hover{transform:translateY(-4px)}.child-avatar{object-fit:cover}.child-avatar,.child-initials{border-radius:50%;height:64px;width:64px}.child-initials{align-items:center;background:linear-gradient(135deg,#e6f0ff,#d9e9ff);color:#4f8cff;display:flex;font-size:24px;font-weight:700;justify-content:center}.child-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;line-clamp:2;color:#111;display:-webkit-box;font-weight:700;height:36px;max-width:100%;overflow:hidden;text-align:center;word-break:break-word}.child-card-dot{border:2px solid #fff;border-radius:50%;box-shadow:0 4px 10px #0000001f;height:14px;position:absolute;right:10px;top:10px;width:14px}.child-detail-overlay{align-items:center;background:#00000059;display:flex;inset:0;justify-content:center;position:fixed;z-index:200}.child-detail-card{background:#fff;border-radius:14px;box-shadow:0 10px 40px #0206172e;max-width:720px;padding:18px;position:relative;width:92%}.detail-close{background:#0000;border:none;color:#4f8cff;cursor:pointer;font-size:20px;position:absolute;right:12px;top:8px}.child-detail-body{align-items:flex-start;display:flex;gap:18px}.child-detail-avatar img{border-radius:10px;height:120px;object-fit:cover;width:120px}.child-initials-large{align-items:center;background:linear-gradient(135deg,#e6f0ff,#d9e9ff);border-radius:12px;color:#4f8cff;display:flex;font-size:48px;font-weight:800;height:120px;justify-content:center;width:120px}.child-detail-info h3{margin:0 0 6px}.send-error{color:#b91c1c}.send-success{color:#16a34a}.children-error{background:#fff0f0;border:1px solid #ffcdd2;color:#d32f2f}.children-error,.no-children{border-radius:8px;padding:12px}.no-children{background:#f8fafc}.color-row{align-items:center;display:flex;gap:10px;margin-top:6px}.color-label{color:#111;font-weight:700}.swatch-row{display:flex;flex-wrap:wrap;gap:8px}.color-swatch{border:1px solid #00000014;border-radius:8px;box-shadow:0 2px 8px #00000014;cursor:pointer;height:28px;padding:0;width:28px}.color-swatch.active{box-shadow:0 4px 12px #2563eb3d;outline:2px solid #2563eb;outline-offset:2px}.color-swatch.clear{background:#fff;border:1px solid #d1d5db;box-shadow:none;color:#111;font-weight:700;width:32px}.child-add-overlay{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#00000059;display:flex;inset:0;justify-content:center;position:fixed;z-index:300}.child-add-modal{background:#fff;border-radius:12px;box-shadow:0 12px 36px #0206172e;max-width:480px;padding:18px;position:relative;width:92%}.child-add-modal .modal-close{background:#0000;border:none;color:#4f8cff;cursor:pointer;font-size:20px;position:absolute;right:10px;top:8px}.administrator-dashboard-wrapper{align-items:flex-start;background:linear-gradient(135deg,#4f8cff,#a6c1ee);display:flex;justify-content:center;min-height:calc(100vh - 80px);padding-top:48px;width:100vw}.administrator-dashboard{background:#fff;border-radius:24px;box-shadow:0 4px 24px #4f8cff1a;display:flex;flex-direction:column;gap:24px;max-width:600px;padding:40px 32px 32px;width:100%}.administrator-dashboard-header{align-items:center;display:flex;justify-content:center}.administrator-dashboard-title{color:#4f8cff;font-size:2rem;font-weight:700;margin:0}.administrator-dashboard-content{color:#222;font-size:1.1rem;text-align:center}.admin-tools-grid{grid-gap:28px;align-items:center;display:grid;gap:28px;grid-template-columns:repeat(2,1fr);justify-items:center;margin:40px auto 0;max-width:600px;width:100%}.admin-tool-card{align-items:center;background:#fff;border-radius:18px;box-shadow:0 2px 16px #4f8cff22;cursor:pointer;display:flex;flex-direction:column;font-size:1.1rem;justify-content:center;max-width:220px;min-height:120px;min-width:140px;padding:36px 28px;text-align:center;transition:box-shadow .2s,transform .2s;width:100%}.admin-tool-card:hover{box-shadow:0 4px 32px #4f8cff44;transform:translateY(-4px) scale(1.03)}.modal-backdrop{align-items:center;background:#0008;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal{background:#fff;box-shadow:0 4px 32px #4f8cff44;min-width:320px;padding:32px 24px;text-align:center}@media (max-width:700px){.admin-tools-grid{gap:18px;grid-template-columns:1fr;max-width:340px}.admin-tool-card{max-width:100%;min-width:0}}:root{--offers-max-width:1120px;--offers-gutter:10px;--offer-card-height:220px;--offer-card-height-mobile:200px;--offer-card-min-width:280px}.offers-heading{font-size:2.3rem;letter-spacing:-.02em;margin:0}.product{align-items:stretch;background:linear-gradient(140deg,#fff,#f5f8ff);border:1px solid #02061714;border-radius:14px;box-sizing:border-box;display:flex;flex-direction:column;height:220px;height:var(--offer-card-height);height:100%;justify-content:space-between;max-width:none;min-height:220px;min-height:var(--offer-card-height);overflow:hidden;padding:12px;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease;width:100%}.product:hover{box-shadow:0 10px 20px #02061714;transform:translateY(-2px)}.product>.bottom.no-image{flex-direction:column;min-height:90px}.product>.bottom.no-image,.top-row{display:flex;justify-content:space-between}.top-row{align-items:center;gap:8px}.product-category{background:#0000;color:#1d4ed8;display:block;font-size:.9rem;font-weight:700;letter-spacing:.5px;margin-bottom:10px;text-transform:uppercase}.top-badge{background:#e74040;border-radius:10px;box-shadow:0 10px 26px #0000000f;color:#fff;font-size:.8rem;font-weight:700;padding:7px 10px}.badge-stacjonarnie{background:#16a34a}.badge-zdalnie{background:#7c3aed}.badge-hybrydowo{background:#f59e0b}.product .stars{align-items:center;display:flex;gap:4px}.product .star-shell{align-items:center;display:inline-flex;height:20px;justify-content:center;line-height:1;position:relative;vertical-align:middle;width:20px}.product .star{color:#cfcfcf;display:block;font-size:20px;height:20px;inset:0;position:absolute;width:20px}.product .star.base{color:#cfcfcf;z-index:1}.product .star-fill{-webkit-clip-path:inset(0 0 0 0);clip-path:inset(0 0 0 0);-webkit-clip-path:inset(0 var(--clip-right,0) 0 0);clip-path:inset(0 var(--clip-right,0) 0 0);height:100%;inset:0;overflow:hidden;position:absolute;width:100%;z-index:2}.product .star-fill .star.filled{color:#ffce31;font-size:20px;height:20px;inset:0;position:absolute;width:20px}.product .star.filled{color:#ffce31}.rating-tooltip{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 10px #0000000f;color:#0b1220;font-size:.95rem;font-weight:700;padding:4px 8px;pointer-events:none;position:absolute;transform:translate(-50%);z-index:10}.rating-row{align-items:center;display:flex;gap:8px;justify-content:space-between;margin-bottom:6px;position:relative}.duration{color:#6b7280;font-size:.9rem}.product-title{color:#0b172f;font-size:1.08rem;font-weight:800;letter-spacing:-.01em;margin:0 0 6px}.product-description{color:#334155;font-size:.95rem;line-height:1.45;margin:0}.product-description.desc{margin-bottom:6px;margin-top:0;position:relative}.product-description.desc.collapsed{max-height:56px;overflow:hidden}.product-description.desc .desc-toggle{background:#0000;border:none;color:#2563eb;cursor:pointer;display:inline-block;font-weight:600;margin-left:12px}.product-description.desc .desc-toggle:focus{border-radius:6px;outline:2px solid #2563eb2e}.products-grid .product-description{line-clamp:3;-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden;text-overflow:ellipsis}@media (max-width:599px){.products-grid .product-description{line-clamp:4;-webkit-line-clamp:4}}.info-row{gap:8px}.type{color:#0b1220;font-size:.95rem;font-weight:700}.location{background:#e6f2ff;border-radius:6px;color:#063064;display:inline-block;font-size:.85rem;font-weight:600;margin-top:6px;padding:4px 8px}.location.muted{color:#9ca3af}.location-simple{background:#e6f2ff;border-radius:6px;color:#063064;display:inline-block;font-size:.85rem;font-weight:600;margin-bottom:6px;margin-top:2px;padding:4px 8px}.product-actions{align-items:center;display:flex;gap:12px;justify-content:space-between}.learn-more.primary-cta{background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:11px;box-shadow:0 10px 22px #2563eb2e;box-sizing:border-box;color:#fff;cursor:pointer;flex-shrink:0;font-weight:750;min-width:150px;padding:9px 12px;white-space:nowrap}.learn-more.primary-cta.fullwidth{display:block;padding-left:16px;padding-right:16px;width:100%}.card-footer{margin-top:4px}.learn-more.primary-cta:hover{box-shadow:0 12px 24px #2563eb33;transform:translateY(-1px)}.products-grid{grid-gap:14px;box-sizing:border-box;gap:14px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-template-columns:repeat(auto-fit,minmax(var(--offer-card-min-width),1fr));justify-items:stretch}.load-more-row{align-items:center;display:flex;gap:10px;justify-content:center;padding:12px 0 4px}.load-more-btn{background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:14px;box-shadow:0 8px 20px #2563eb2e;color:#fff;cursor:pointer;font-weight:700;padding:10px 16px}.load-more-btn:hover{transform:translateY(-1px)}.load-more-meta{color:#0b1220;font-weight:600}.products-list-view{box-sizing:border-box;display:flex;flex-direction:column;gap:14px;margin:0 auto;max-width:1120px;max-width:var(--offers-max-width);padding:10px;padding:var(--offers-gutter);width:100%}.products-list-view .product{min-height:220px;min-height:var(--offer-card-height);width:100%}.offers-layout{align-items:flex-start;display:flex;flex-direction:column;gap:8px;width:100%}.products-area{order:2;width:100%}.filters-area{display:block;order:1;width:100%}.offers-title-row{box-sizing:border-box;margin:0 auto 8px;max-width:1120px;max-width:var(--offers-max-width);padding:0 10px;padding:0 var(--offers-gutter);width:100%}.offers-title{color:#fff;font-size:2.2rem;font-weight:700;letter-spacing:-.03em;margin:0}@media (min-width:1280px){:root{--offers-max-width:1380px}.products-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-template-columns:repeat(auto-fit,minmax(var(--offer-card-min-width),1fr))}.filters-highlight{max-width:1380px}}@media (min-width:1536px){:root{--offers-max-width:1560px}.filters-highlight{max-width:1560px}}@media (min-width:1700px){:root{--offers-max-width:1760px}.filters-highlight{max-width:1760px}}@media (max-width:599px){.products-grid{grid-template-columns:1fr;padding:10px;padding:var(--offers-gutter)}.products-area,.products-grid{box-sizing:border-box;margin:0;width:100%}:root{--offer-card-height:var(--offer-card-height-mobile)}.products-grid{gap:12px;grid-auto-rows:200px;grid-auto-rows:var(--offer-card-height-mobile);grid-template-columns:1fr;padding:8px}.product{border:none;box-sizing:border-box;display:flex;flex-direction:column;height:auto;margin:0 2px;max-width:none;min-height:200px;min-height:var(--offer-card-height-mobile);width:calc(100% - 4px)}.product>.bottom.no-image{display:flex;flex-direction:column;justify-content:space-between;min-height:100%}.product-actions{align-items:center}.price-block{flex-shrink:1;margin-left:8px}.price-block .price{white-space:nowrap}.learn-more.primary-cta{min-width:160px}}.filters{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:8px}.form-group{display:flex;flex-direction:column;gap:8px;min-width:160px}.form-group label{color:#fff;font-weight:700}.filters-card{grid-gap:10px 12px;align-items:start;background:linear-gradient(145deg,#8bb8ff,#a5c9ff)!important;border:1px solid #ffffff59;border-radius:24px;box-shadow:0 10px 26px #1b418d1f,inset 0 0 0 1px #ffffff40,inset 0 -1px 0 #0000001a;box-sizing:border-box;color:#0b1220;display:grid;gap:10px 12px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin:0;padding:12px;width:100%}.filters-card .form-group label{color:#0b1220;font-weight:700}.tutor-narrow{max-width:560px}.city-field{flex:0 1 360px;max-width:360px;width:100%}.filters-card .form-group{width:100%}.filters-card select{background:#fff;border:1px solid #e6e6e6;border-radius:16px;box-sizing:border-box;color:#08142a;font-family:inherit;font-size:.95rem;padding:10px 14px;width:100%}.filters-card select option[value=""]{color:#9ca3af}.filters-card select option,.filters-card select.option{color:#08142a}.filters-card select.placeholder{color:#9ca3af}.filters-highlight{background:#0000;border-radius:0;box-shadow:none;box-sizing:border-box;display:flex;justify-content:flex-start;margin:0 auto;max-width:1120px;max-width:var(--offers-max-width);padding:10px;padding:var(--offers-gutter);width:100%}.filters-highlight .filters-card{background:linear-gradient(145deg,#8bb8ff,#a5c9ff)!important;border:1px solid #ffffff59!important;border-radius:24px;box-shadow:0 14px 36px #1b418d2e,inset 0 0 0 1px #ffffff4d,inset 0 -2px 0 #0000001f;margin:0;max-width:none;padding:16px;width:100%}.filters-highlight .filters-card .form-group{width:100%}.filters-bar{grid-gap:14px;align-items:stretch;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));width:100%}.filters-bar>.filters-card,.filters-right{min-width:320px}.filters-right{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.sort-card,.stats-card{background:linear-gradient(145deg,#8bb8ff,#a5c9ff);border:1px solid #ffffff59;border-radius:18px;box-shadow:0 10px 24px #1b418d1f;display:flex;flex-direction:column;gap:10px;padding:12px 14px}.sort-card select:focus{border-color:#a5bff7;box-shadow:0 0 0 3px #2563eb2e;outline:2px solid #2563eb59}.sort-head{align-items:center;display:flex;gap:10px;justify-content:space-between}.sort-label{color:#0b1220;font-weight:700}.sort-card select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background:#fff;background-image:linear-gradient(45deg,#0000 50%,#6b7280 0),linear-gradient(135deg,#6b7280 50%,#0000 0);background-position:calc(100% - 22px) 50%,calc(100% - 16px) 50%;background-repeat:no-repeat;background-size:6px 6px,6px 6px;border:1px solid #d9e4ff;border-radius:16px;box-shadow:0 4px 12px #0f255e14;font-family:inherit;font-size:.95rem;padding:11px 14px;width:100%}.view-toggle{background:#ffffff59;border:1px solid #ffffff80;border-radius:999px;display:inline-flex;overflow:hidden}.view-toggle button{background:#0000;border:none;color:#0b1220;cursor:pointer;font-weight:600;padding:8px 12px}.view-toggle button.selected{background:#1d4ed8;color:#fff}.stats-card{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.stat{background:#fff9;border-radius:12px;box-shadow:inset 0 0 0 1px #ffffff59;padding:8px 10px}.stat-label{color:#0f172a;font-size:.85rem;opacity:.8}.stat-value{color:#0b1220;display:block;font-size:1.2rem}.filters-area.filters-highlight .filters-card,.filters-highlight .filters-card,aside.filters-highlight .filters-card{background:linear-gradient(145deg,#8bb8ff,#a5c9ff)!important;border:1px solid #ffffff59!important}@media (max-width:599px){.filters-highlight{background:#0000;box-sizing:border-box;margin:0;padding:10px;padding:var(--offers-gutter);width:100%}.filters-highlight .filters-card{border-radius:32px;box-shadow:0 12px 28px #1b418d24,inset 0 0 0 1px #ffffff40,inset 0 -1px 0 #00000014;box-sizing:border-box;margin:0;max-width:none;padding:16px;width:100%}.filters{gap:10px}.filters-area{box-sizing:border-box;margin:0;width:100%}.filters-bar{flex-direction:column}.filters-right{grid-template-columns:1fr;width:100%}}.filters-highlight .button-group button{background:#fff;border:1px solid #e6e6e6;color:#000}.filters-highlight .button-group button:hover{background:#f3f4f6}.filters-highlight .button-group button.selected{background:#1e40af;border-color:#1e40af2e;color:#fff}.filters-highlight select{color:#000}.filters-highlight .subjects-select__control{background:#fff!important;color:#000;min-height:44px;width:100%!important}.filters-highlight .subjects-select__single-value{color:#000}.filters-highlight .geo-btn{background:#fff;border:1px solid #e6e6e6;color:#000}.filters-highlight .city-autocomplete-group,.filters-highlight .city-autocomplete-row>div{width:100%}.filters-highlight .city-autocomplete-row .geo-btn{margin-left:8px}.button-group{display:flex;flex-wrap:wrap;gap:8px}.button-group button,.role-btn{background:#f1f5f9;border:1px solid #e6e9ef;border-radius:16px;color:#0b1220;cursor:pointer;font-size:1rem;padding:10px 16px}.button-group button.selected,.role-btn.selected{background:#1e40af;border-color:#1e40af2e;color:#fff}.register-roles .role-btn{background:#f1f5f9;border-radius:16px;color:#0b1220;font-size:1rem;padding:10px 16px}.register-roles .role-btn.selected{background:#1e40af;color:#fff}.edu-btn{background:#e6f2ff;border:1px solid #cfe6ff;border-radius:16px;color:#063064;cursor:pointer;font-size:1rem;padding:10px 16px}.edu-btn:hover{background:#d9ecff}.edu-btn.selected{background:#1e40af;border-color:#1747a6;color:#fff}.product .product-actions .learn-more.primary-cta{max-width:100%}.products-grid{grid-gap:22px;align-items:stretch;display:grid;gap:22px;grid-auto-rows:220px;grid-auto-rows:var(--offer-card-height);margin:0 auto;max-width:1120px;max-width:var(--offers-max-width);padding:10px;padding:var(--offers-gutter);width:100%}.price-block{align-items:flex-end;display:flex;flex-direction:column;line-height:1.1}.price-block .price{color:#1d4ed8;font-size:1.02rem;font-weight:700}.price-block .duration{color:#9ca3af;font-size:.85rem;margin-top:2px}.add-offer{align-items:center;background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:50px;box-shadow:0 6px 18px #2563eb4d;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;justify-content:center;letter-spacing:.4px;margin:20px auto;padding:12px 26px;text-align:center;transition:background .3s ease,transform .2s ease;width:220px}.add-offer:hover{background:linear-gradient(135deg,#3b82f6,#2563eb);transform:translateY(-2px)}.offer-form{background:#fff;border-radius:12px;box-shadow:0 8px 20px #0000000f;display:flex;flex-direction:column;font-family:inherit;gap:12px;margin:0 auto;max-width:480px;padding:16px;width:100%}.offer-form label{color:#1e293b;display:block;font-weight:600;margin-bottom:6px}.offer-form .form-group{display:flex;flex-direction:column;gap:8px}.offer-form input,.offer-form select,.offer-form textarea{border:1.2px solid #c7d2fe;border-radius:8px;font-family:inherit;font-size:1rem;padding:10px 14px;transition:border .18s ease,box-shadow .18s ease;width:100%}.offer-form input:focus,.offer-form select:focus,.offer-form textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb26;outline:none}.form-buttons{display:flex;gap:10px;justify-content:flex-end}.submit-btn{background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:10px;box-shadow:0 6px 14px #2563eb2e;color:#fff;cursor:pointer;font-weight:700;padding:10px 16px}.submit-btn:hover{transform:translateY(-1px)}.cancel-btn{background:#0000;border:1px solid #c7d2fe;border-radius:10px;color:#374151;cursor:pointer;padding:9px 14px}.cancel-btn:hover{background:#f8fafc}.modal-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#00000073;inset:0;z-index:2000}.modal{animation:modalFade .26s ease;background:linear-gradient(145deg,#fff,#f6f8ff);border:1px solid #2563eb14;border-radius:16px;box-shadow:0 18px 46px #02061724;max-height:82vh;max-width:520px;overflow-y:auto;padding:20px 20px 22px;position:relative;width:92%}@keyframes modalFade{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.modal-title{color:#2563eb;font-size:1.4rem;font-weight:700;margin-bottom:16px;text-align:center}.modal-close{background:#0000;border:none;border-radius:5px;color:#374151;cursor:pointer;font-size:1.1rem;line-height:1;padding:3px 5px;position:absolute;right:12px;top:10px;transition:background .15s ease,color .15s ease,transform .15s ease}.modal-close:hover{background:#0000000a;color:#111827;transform:translateY(-1px)}.modal .offer-form{box-sizing:border-box;margin:0 auto}.register-roles{gap:10px!important}.offer-form .placeholder,.offer-form ::placeholder{color:#9ca3af}.section-heading{color:#0f172a;font-size:.95rem;font-weight:700;margin:2px 0 8px}.section-heading.small{color:#334155;font-size:.86rem;margin-bottom:6px}.optional-note{color:#6b7280;font-size:.86rem;font-weight:400;margin-left:6px}.price-time-row{display:flex;gap:10px}.price-item{display:flex;flex:1 1;flex-direction:column;gap:6px}.price-item input{box-sizing:border-box}.common_styles_dashboard__5QVHc{background:linear-gradient(135deg,#4f8cff,#a6c1ee);display:flex;flex-direction:column;font-family:Montserrat,Arial,sans-serif;gap:32px;min-height:100vh;padding:32px;position:relative}.common_styles_dashboardTitle__f0V2W{color:#fff;font-size:2.1rem;font-weight:700;letter-spacing:-.02em;margin:0;text-align:left}.common_styles_navbar__R-wX4{background-color:#000080cc;border-radius:12px;box-shadow:0 4px 8px #0003;display:flex;justify-content:center;margin-top:20px;padding:12px 24px}.common_styles_navbar__R-wX4 ul{display:flex;gap:32px;list-style:none;margin:0;padding:0}.common_styles_navbar__R-wX4 a{color:#fff;font-size:1rem;font-weight:500;text-decoration:none;transition:all .2s ease-in-out}.common_styles_navbar__R-wX4 a:hover{color:gold;transform:scale(1.05)}.common_styles_logoutIcon__4dkbi{align-items:center;background:none;border:none;border-radius:8px;box-sizing:border-box;color:#fff;cursor:pointer;display:inline-flex;height:36px;justify-content:center;padding:4px;position:absolute;right:16px;top:16px;transition:color .2s,background .2s,transform .12s;width:36px;z-index:1000}.common_styles_logoutIcon__4dkbi:hover{background:#ffffff0f;color:#e0e7ff}@media (max-width:768px){.common_styles_navbar__R-wX4 ul{align-items:center;flex-direction:column;gap:16px}}.common_styles_dashboard-calendar__DrKsA{background:linear-gradient(135deg,#4f8cff1f,#a6c1ee14);display:flex;justify-content:center;padding:24px 0 48px;width:100%}.common_styles_toolsGrid__9F0pN{grid-gap:32px;align-items:center;display:grid;gap:32px;grid-template-columns:repeat(2,1fr);justify-items:center;margin:40px auto 0;max-width:600px}.common_styles_toolCard__QOe7a{align-items:center;background:#fff;border-radius:18px;box-shadow:0 2px 16px #4f8cff22;cursor:pointer;display:flex;flex-direction:column;font-size:1.1rem;justify-content:center;min-height:140px;min-width:180px;padding:36px 28px;text-align:center;transition:box-shadow .2s,transform .2s}.common_styles_toolCard__QOe7a:hover{box-shadow:0 4px 32px #4f8cff44;transform:translateY(-4px) scale(1.03)}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0006;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:1000}.modal-content{background:linear-gradient(145deg,#fff,#f6f8ff);border:1px solid #2563eb14;border-radius:18px;box-shadow:0 18px 46px #02061724;display:flex;flex-direction:column;max-height:78vh;max-width:500px;overflow:hidden;width:90%}.modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;padding:10px 16px;position:relative}.modal-body{display:flex;flex:1 1;flex-direction:column;gap:12px;overflow-y:auto;padding:16px 24px}.close-btn{background:none!important;border:none!important;border-radius:5px;color:#000!important;cursor:pointer;font-size:18px;line-height:1;padding:3px 5px;position:absolute;right:12px;top:8px;transition:transform .15s ease,background .15s ease}.close-btn:hover{background:#0000000d;transform:translateY(-1px)}.modal-header .modal-title{color:#1d4ed8;flex:1 1 auto;font-size:1.18rem;font-weight:800;letter-spacing:-.01em;margin:0;text-align:center}.modal-content button{background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:8px;box-shadow:0 10px 26px #2563eb33;color:#fff;cursor:pointer;font-weight:700;padding:10px 16px}.modal-content button:hover{background:linear-gradient(135deg,#3b82f6,#2563eb)}.modal-body .tutor-info{display:flex;flex-direction:column;margin-top:24px}.modal-body .tutor-info button{align-self:flex-start;margin-top:24px}.modal-body .tutor-info h3{margin-bottom:12px}.modal-body h3,.modal-body p{margin-bottom:8px;margin-top:8px}.modal-body p{white-space:pre-wrap;word-break:break-word}.modal-body .desc-text{-webkit-box-orient:vertical;line-clamp:6;-webkit-line-clamp:6;display:-webkit-box;line-height:1.4;max-height:8.4em;overflow:hidden;text-overflow:ellipsis;white-space:normal}@media (max-width:599px){.modal-body .desc-text{line-clamp:4;-webkit-line-clamp:4;max-height:5.6em}}.modal-body .tutor-info p{margin-bottom:8px;margin-top:8px}.modal-body .details-grid{display:flex;flex-direction:column;gap:10px}.modal-body .detail-row{align-items:center;background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;display:flex;gap:12px;justify-content:space-between;padding:10px 12px}.modal-body .detail-row--stacked{align-items:flex-start;flex-direction:column}.modal-body .detail-label{color:#6b7280;font-size:.93rem;font-weight:600}.modal-body .detail-value{color:#0f172a;font-size:.98rem;font-weight:800;text-align:right}.modal-body .detail-value.multiline{line-height:1.5;text-align:left;white-space:pre-wrap;width:100%;word-break:break-word}.modal-body .modal-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;margin-top:8px}.modal-body .modal-actions .ghost{background:#0000;border:1px solid #dbeafe;box-shadow:none;color:#1d4ed8}.modal-body .modal-actions .danger{background:#ef4444;box-shadow:0 8px 18px #ef444440}.modal-body .tutor-info{gap:10px}.confirm-modal{height:auto;max-height:50vh}.confirm-modal.modal-content .modal-body{flex:0 0 auto;gap:8px;overflow-y:visible;padding:10px 14px}.confirm-modal .modal-body p{font-size:1rem;line-height:1.35;margin:0;text-align:center}.confirm-modal .modal-body .modal-actions{align-items:stretch;flex-wrap:nowrap;width:100%}.confirm-modal .modal-body .modal-actions button{align-items:center;display:flex;flex:1 1;font-size:.95rem;justify-content:center;line-height:1.1!important;max-width:none;min-width:0;white-space:nowrap}.profile-page-wrapper{flex:1 1;justify-content:center;margin:0 auto;max-width:480px;padding-bottom:80px}.profile-form,.profile-page-wrapper{display:flex;flex-direction:column;width:100%}.profile-form{gap:22px}.profile-bottom-bg{min-height:40px;width:100%}@media (max-width:600px){.profile-page-wrapper{max-width:100vw;padding:0 0 12vw}.profile-card{border-radius:0;box-shadow:none;margin-top:12vw;max-width:100vw;padding:12vw 2vw 8vw}.profile-bottom-bg{min-height:60px}}.profile-fields-vertical{align-items:flex-start;display:flex;flex-direction:column;gap:.5rem;margin-bottom:18px;width:100%}.profile-label-small{color:#4f8cff;font-size:.98rem;font-weight:500;letter-spacing:.01em;margin-bottom:.1em;margin-top:.5em;opacity:.85}.profile-value-big{color:#222;font-size:1.25rem;font-weight:600;margin-bottom:.1em;margin-top:.1em}.profile-page-bg{align-items:flex-start;background-attachment:fixed;background:linear-gradient(135deg,#4f8cff,#a6c1ee);justify-content:center;min-height:100vh;padding-bottom:60px;padding-top:32px;width:100vw;z-index:0}.profile-card,.profile-page-bg{box-sizing:border-box;display:flex;position:relative}.profile-card{align-items:stretch;background:#fffffffa;border-radius:24px;box-shadow:0 4px 24px #4f8cff1a;flex-direction:column;gap:22px;margin-top:32px;max-width:480px;min-width:0;padding:48px 32px 40px;width:100%}.register-submit{background:#4f8cff;border:none;border-radius:12px;box-shadow:0 2px 8px #4f8cff40;box-sizing:border-box;color:#fff;cursor:pointer;display:block;font-weight:700;padding:12px 14px;transition:all .2s ease;width:100%}.register-submit:hover{background:#3f7be0}.register-cancel{background:#e5e7eb;border:none;border-radius:12px;box-shadow:0 2px 8px #9ca3af40;box-sizing:border-box;color:#374151;cursor:pointer;display:block;font-size:1rem;font-weight:700;padding:12px 14px;transition:all .2s ease;width:100%}.register-cancel:hover{background:#d1d5db}.register-form.editing{animation:pulse-blue 1.6s ease-in-out infinite;background:#f9fbff;border:2px solid #4f8cff;box-shadow:0 0 0 3px #4f8cff1a;position:relative;transition:all .25s ease-in-out}.edit-mode-badge{align-items:center;background:#4f8cff;border-radius:12px;box-shadow:0 2px 8px #4f8cff4d;color:#fff;display:flex;font-size:.9rem;font-weight:600;gap:8px;left:auto;padding:6px 12px;position:absolute;right:10px;top:12px}.exit-edit{background:#0000;border:none;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;line-height:1;padding:0 4px}.register-form.editing input:not(:disabled),.register-form.editing textarea:not(:disabled){animation:pulse-blue-input 1.6s ease-in-out infinite;background:#fff;border:1.5px solid #4f8cff;box-shadow:0 0 6px #4f8cff26;transition:all .2s ease-in-out}.role-select{background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#111;font-weight:400;padding:10px 12px;width:100%}.role-select.placeholder{color:#6b7280}@keyframes pulse-blue{0%,to{border-color:#4f8cff00;box-shadow:0 0 0 0 #4f8cff00}50%{border-color:#4f8cff;box-shadow:0 0 0 6px #4f8cff59}}.profile-card-left{align-items:flex-start}.profile-fields{display:flex;flex-direction:column;gap:10px;width:100%}.profile-row{border-radius:10px;flex-direction:row;gap:16px}.profile-label{min-width:120px;text-align:left}@media (max-width:600px){.profile-card{border-radius:0;box-shadow:none;font-size:1rem;gap:10px;margin-top:12vw;max-width:100vw;min-width:0;padding:12vw 2vw 8vw}.profile-fields{gap:6px}.profile-row{align-items:flex-start;background:#f6f8fe;border-radius:8px;flex-direction:row;font-size:1rem;gap:8px;margin-bottom:0;padding:10px 8px;text-align:left;width:100%}.profile-label{font-size:.97rem;min-width:90px}.profile-avatar{font-size:1.2rem;height:44px;margin-bottom:0;width:44px}.profile-title{font-size:1rem;margin-bottom:0;margin-top:0}.profile-edit-btn{border-radius:16px;font-size:.98rem;margin-top:8px;padding:10px 0}}.profile-title{color:#4f8cff;font-size:2rem;font-weight:700;margin-bottom:8px;text-align:center}.profile-avatar-wrapper{align-items:center;display:flex;flex-direction:column;gap:10px;margin-bottom:6px}.profile-avatar-img{border:3px solid #fff;border-radius:50%;box-shadow:0 4px 18px #4f8cff26;height:96px;object-fit:cover;width:96px}.profile-avatar-initials{align-items:center;background:linear-gradient(135deg,#e6f0ff,#d9e9ff);border-radius:50%;box-shadow:0 4px 18px #4f8cff14;color:#4f8cff;display:flex;font-size:36px;font-weight:700;height:96px;justify-content:center;width:96px}.avatar-actions{align-items:center;display:flex;gap:8px}.avatar-remove-btn,.avatar-upload-btn{border:none;border-radius:8px;cursor:pointer;font-family:inherit;font-weight:700;padding:8px 10px}.avatar-upload-btn{background:#4f8cff;color:#fff}.avatar-remove-btn{background:#e5e7eb;color:#374151}.profile-row{align-items:center;background:#f3f6fd;border-radius:12px;color:#222;display:flex;font-size:1.13rem;font-weight:500;gap:12px;padding:12px 18px;width:100%}.profile-label{color:#4f8cff;font-weight:600;min-width:110px}@media (max-width:600px){.profile-card{border-radius:0;box-shadow:none;max-width:100vw;min-width:100%;padding:18px 5vw}}.loading-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:linear-gradient(180deg,#4f8cff1f,#a6c1ee0f);inset:0;justify-content:center;position:fixed;z-index:9999}.loading-card,.loading-overlay{align-items:center;display:flex}.loading-card{background:#ffffff08;border:1px solid #ffffff0f;border-radius:16px;box-shadow:0 10px 30px #274c8c29;color:#fff;flex-direction:column;gap:18px;max-width:320px;padding:28px 36px;text-align:center}.loading-logo{height:auto;width:72px}.loading-spinner{align-items:center;display:flex;justify-content:center}.loading-spinner,.spinner-svg{height:56px;width:56px}.spinner-svg .path{stroke:#fff;stroke-linecap:round;stroke-dasharray:90;stroke-dashoffset:60;animation:dash 1.4s ease-in-out infinite,spin 2.2s linear infinite;transform-origin:50% 50%}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}to{stroke-dasharray:90,150;stroke-dashoffset:-120}}.loading-message{color:#f3f5ff;font-size:1rem}@media (prefers-reduced-motion:reduce){.spinner-svg .path{animation:none}}.lessons-page{background:linear-gradient(135deg,#4f8cff,#a6c1ee);font-family:Poppins,Segoe UI,sans-serif;min-height:100vh;padding:2rem 1rem 4rem}.lessons-page__inner{color:#0b1945;margin:0 auto;max-width:1100px}.lessons-page__header{color:#fff;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between;margin-bottom:2rem}.lessons-page__eyebrow{font-size:.75rem;letter-spacing:.08em;margin-bottom:.25rem;opacity:.85;text-transform:uppercase}.lessons-page__header h1{font-size:2.4rem;margin:0}.lessons-page__subtitle{font-size:1rem;margin-top:.5rem;max-width:520px}.lessons-highlight-card{background:#fff3;border-radius:18px;box-shadow:0 15px 35px #234aa440;min-width:230px;padding:1.25rem 1.5rem}.lessons-highlight-card__label{font-size:.8rem;letter-spacing:.05em;opacity:.8;text-transform:uppercase}.lessons-highlight-card__value{display:block;font-size:2.5rem;margin-top:.25rem}.lessons-highlight-card__meta{font-size:.85rem;margin:.5rem 0 0}.lessons-controls{background:#ffffff40;border-radius:16px;color:#102251;display:inline-flex;gap:1rem;margin-bottom:1.5rem;padding:1rem 1.5rem}.lessons-controls label{display:flex;flex-direction:column;font-size:.95rem;font-weight:600;gap:.35rem}.custom-select{min-width:220px;position:relative}.custom-select__button{align-items:center;background:#ffffffeb;border:none;border-radius:999px;box-shadow:0 12px 24px #0f255e1f;color:#102251;cursor:pointer;display:flex;font-size:.95rem;justify-content:space-between;padding:.55rem 1.2rem;width:100%}.custom-select__button:focus{outline:2px solid #3f67e873}.custom-select__caret{border-bottom:2px solid #425488;border-right:2px solid #425488;display:inline-block;height:6px;margin-left:8px;transform:translateY(-1px) rotate(45deg);width:6px}.custom-select__menu{background:#fff;border:1px solid #10225114;border-radius:12px;box-shadow:0 14px 30px #0f255e2e;left:0;list-style:none;margin:0;padding:.35rem 0;position:absolute;right:0;top:calc(100% + 6px);z-index:10}.custom-select__option{color:#102251;cursor:pointer;font-size:.95rem;padding:.6rem 1rem}.custom-select__option:hover{background:#3f67e814}.custom-select__option.selected{background:#3f67e81f;font-weight:700}.lessons-empty{background:#ffffffe6;border-radius:28px;box-shadow:0 30px 60px #1c316e40;padding:2.5rem;text-align:center}.lessons-empty h2{font-size:1.8rem;margin-top:0}.lessons-empty p{margin:.75rem auto 1.5rem;max-width:420px}.lessons-cta{background:#fff;border-radius:999px;box-shadow:0 15px 40px #13349640;color:#3964e8;display:inline-block;font-weight:600;padding:.75rem 1.5rem;text-decoration:none}.lessons-list{display:flex;flex-direction:column;gap:1.5rem}.lesson-card{background:#fff;border:3px solid #0000;border-radius:32px;box-shadow:0 20px 50px #0d255e2e;cursor:pointer;padding:1.75rem;transition:transform .2s ease,box-shadow .2s ease}.lesson-card:focus,.lesson-card:hover{border-color:#5c8ef359;box-shadow:0 24px 60px #0d255e47;transform:translateY(-4px)}.lesson-card__header{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.lesson-card__subject{font-size:1.4rem;font-weight:700;margin:0}.lesson-card__meta{color:#4f5e8c;margin:.3rem 0 0}.lesson-card__status{border-radius:999px;font-size:.9rem;font-weight:600;padding:.35rem .9rem;text-transform:capitalize}.status-completed{background:#ffd56940}.status-cancelled{background:#ff939b4d;color:#ac1d32}.status-no-show{background:#ff939b4d;color:#8a1e27}.status-draft{border:1px dashed #4f5e8c80}.status-no_upcoming{background:#ffffff80}.lesson-card__details{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin:0;padding:0}.lesson-card__details dt{color:#53608a;font-weight:600}.lesson-card__details dd{font-size:.95rem;margin:.25rem 0 0}.lesson-card__notes{grid-column:1/-1}.lesson-card__notes dd{color:#2f3961;font-style:italic}.lesson-card__footer{color:#4a5481;display:flex;flex-wrap:wrap;font-size:.9rem;gap:1rem;margin-top:1.25rem}.lessons-state-card{background:#ffffffeb;border-radius:24px;box-shadow:0 18px 40px #10225133;color:#2b3764;font-weight:600;margin:1rem 0 2rem;padding:1.75rem;text-align:center;width:100%}@media (max-width:768px){.lessons-page{padding:1rem}.lesson-card{padding:1.25rem}.lessons-controls{box-sizing:border-box;display:block;margin-bottom:1.25rem;padding:.9rem 1rem;width:100%}}.lesson-details-page{background:linear-gradient(135deg,#4f8cff,#a6c1ee);font-family:Poppins,Segoe UI,sans-serif;min-height:100vh;padding:2rem 1rem 4rem}.lesson-details__inner{color:#0b1945;margin:0 auto;max-width:1200px}.lesson-details__back{background:none;border:none;color:#ffffffe6;cursor:pointer;font-size:.95rem;font-weight:600;margin-bottom:1.25rem;padding:0}.lesson-details__state{background:#ffffffeb;border-radius:28px;box-shadow:0 25px 60px #0f265d40;padding:2.5rem;text-align:center}.lesson-details__hero{background:linear-gradient(135deg,#ffffff40,#ffffff1f);border-radius:28px;box-shadow:0 35px 70px #16388859;color:#fff;display:flex;flex-wrap:wrap;gap:2rem;justify-content:space-between;padding:2rem 2.5rem}.lesson-details__eyebrow{font-size:.75rem;letter-spacing:.08em;margin-bottom:.3rem;text-transform:uppercase}.lesson-details__hero h1{font-size:2.35rem;margin:0}.lesson-details__title{font-size:2.6rem;letter-spacing:-.02em}.lesson-details__subtitle{font-size:1rem;margin:.5rem 0 0;opacity:.85}.lesson-details__hero-meta{display:flex;flex-wrap:wrap;gap:1rem}.hero-meta__item,.lesson-details__hero-meta div{align-items:flex-start;background:#ffffff38;border-radius:18px;box-shadow:inset 0 0 0 1px #ffffff26;display:flex;flex:1 1 170px;flex-direction:column;justify-content:flex-start;min-width:170px;padding:1.3rem 1.4rem 1rem;position:relative}.hero-meta__item span,.lesson-details__hero-meta span{display:block;font-size:.8rem;margin:0 0 .5rem;opacity:.8;text-align:left;width:100%}.hero-meta__item .badge,.hero-meta__item strong{align-self:center}.lesson-details__hero-meta strong{font-size:1.1rem}.lesson-details__hero-meta .badge{align-items:center;align-self:center;display:inline-flex;justify-content:center;margin-top:.1rem}.lesson-details__grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));margin-bottom:1.5rem;margin-top:2rem}.lesson-details__card{background:#fff;border-radius:30px;box-shadow:0 25px 55px #0c215226;padding:1.9rem}.lesson-details__card-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.lesson-details__card h2{font-size:1.45rem;margin:0}.session-topic{color:#435072;font-size:1rem;font-weight:500;margin:.15rem 0 0}.cancel-form{background:#ff767c14;border:1px solid #ff767c33;border-radius:16px;gap:.8rem;margin-top:.75rem;padding:.9rem 1rem}.cancel-form,.cancel-form label{display:flex;flex-direction:column}.cancel-form label{color:#2f3a63;font-weight:600;gap:.35rem}.cancel-form textarea{border:1px solid #0c21521f;border-radius:12px;box-shadow:inset 0 1px 3px #0c21520d;box-sizing:border-box;font-family:inherit;min-height:90px;padding:.75rem;resize:vertical;width:100%}.cancel-form__actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.cancel-form__actions .lesson-action-btn{min-width:170px}.feedback-banner{border-radius:14px;box-shadow:0 8px 20px #0000000f;font-weight:600;margin:0 0 1rem;padding:.75rem 1rem}.feedback-info{background:#3f67e814;border:1px solid #3f67e840;color:#1f3b82}.feedback-success{background:#27ae601a;border:1px solid #27ae6040;color:#1d6b47}.feedback-error{background:#e74c3c1a;border:1px solid #e74c3c40;color:#a3221f}.reschedule-form{background:#3f67e80f;border:1px solid #3f67e833;border-radius:16px;display:flex;flex-direction:column;gap:.8rem;margin-top:.75rem;padding:.9rem 1rem}.reschedule-form label{color:#2f3a63;display:flex;flex-direction:column;font-weight:600;gap:.35rem}.reschedule-form input[type=date],.reschedule-form input[type=datetime-local],.reschedule-form input[type=time],.reschedule-form textarea{border:1px solid #0c21521f;border-radius:12px;box-sizing:border-box;font-family:inherit;padding:.75rem;width:100%}.reschedule-form textarea{min-height:90px;resize:vertical}.reschedule-form__actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.reschedule-form__actions .lesson-action-btn{min-width:170px}.card-eyebrow{color:#5f6da0;font-size:.75rem;letter-spacing:.08em;margin:0 0 .3rem;text-transform:uppercase}.lesson-details__card-pills{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));width:100%}.session-pill{align-items:center;background:#fff9;border-radius:14px;box-shadow:inset 0 0 0 1px #0c21520d;display:flex;flex-direction:column;gap:.15rem;padding:.6rem 1rem;text-align:center}.session-pill span{align-self:flex-start;color:#6173a8;font-size:.75rem}.session-pill strong{color:#142046;font-size:1rem}.lesson-details__session dl{grid-gap:1rem 1.5rem;display:grid;gap:1rem 1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:1.5rem 0 0}.lesson-details__session .session-info{display:flex;flex-direction:column;gap:.9rem;margin-top:1rem}.info-row{align-items:center;background:#fffc;border:1px solid #0c215214;border-radius:14px;box-shadow:inset 0 0 0 1px #ffffff4d;display:flex;justify-content:space-between;padding:.8rem 1rem}.info-label{color:#4f5e8c;font-weight:600}.info-value{color:#142046;font-weight:600}.lesson-details__actions{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));margin:1rem 0 1.25rem}.lesson-action-btn{align-items:center;border:1.5px solid #0000;border-radius:14px;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:.35rem;justify-content:center;padding:.75rem 1.25rem;transition:transform .15s ease,box-shadow .15s ease,background .15s ease,border-color .15s ease}.lesson-action-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.lesson-action-btn:not(:disabled):hover{box-shadow:0 12px 24px #1f54d840;transform:translateY(-1px)}.lesson-action-btn--primary{background:linear-gradient(135deg,#274de4,#3b7bfa);color:#fff}.lesson-action-btn--ghost{background:#fff6;border-color:#274de440;color:#274de4}.lesson-action-btn--danger{background:#ff767c26;border-color:#ff767c66;color:#a31632}.lesson-details__people-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-top:1rem}.participant-card{background:#f7faffe6;border:1px solid #0f265d12;border-radius:18px;box-shadow:inset 0 0 0 1px #fff6;cursor:pointer;display:flex;gap:.85rem;padding:.85rem 1rem;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.participant-card:hover{border-color:#274de426;box-shadow:0 12px 24px #1f54d82e;transform:translateY(-2px)}.participant-card__badge{align-items:center;background:linear-gradient(135deg,#e6f0ff,#d9e9ff);border-radius:50%;box-shadow:0 4px 18px #4f8cff14;color:#4f8cff;display:flex;font-size:1.05rem;font-weight:700;height:48px;justify-content:center;width:48px}.participant-card__avatar{border:2px solid #fff;border-radius:50%;box-shadow:0 4px 14px #1017401f;height:48px;object-fit:cover;width:48px}.participant-card__label{color:#445078;font-size:.9rem;font-weight:600}.participant-card__name{color:#101740;font-weight:600;margin:.2rem 0}.participant-card__note{color:#6c789f;font-size:.78rem}.lesson-details__stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:1.5rem}.stat-card{background:#fffc;border:1px solid #0c21520d;border-radius:16px;box-shadow:inset 0 0 0 1px #ffffff4d;display:flex;flex-direction:column;gap:.25rem;padding:1rem 1.1rem}.stat-card__label{color:#4f5e8c;font-size:.8rem;letter-spacing:.05em;text-transform:uppercase}.stat-card__value{color:#102251;font-size:1.7rem}.stat-card__desc{color:#6c789f;font-size:.78rem}.lesson-details__list,.lesson-details__materials ul{list-style:none;margin:1rem 0 0;padding:0}.lesson-details__timeline-card{margin-bottom:1.5rem;margin-top:1.5rem}.lesson-details__list li,.lesson-details__materials li{align-items:center;border-bottom:1px solid #0e225014;display:flex;gap:1rem;justify-content:space-between;padding:.95rem 0}.lesson-details__materials small{color:#6c789f;display:flex;flex-direction:column;gap:.2rem}.lesson-details__list li:last-child,.lesson-details__materials li:last-child{border-bottom:none}.material-download{background:#fffc;border:1px solid #1f54d84d;border-radius:999px;color:#1f54d8;cursor:pointer;font-weight:600;padding:.45rem 1.1rem;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.material-download:hover{background:#1f54d81a;box-shadow:0 6px 15px #1f54d826}.lesson-sessions-container{margin-left:auto;margin-right:auto;margin-top:.75rem;max-width:1100px}.lesson-sessions-grid{grid-gap:.8rem;display:grid;gap:.8rem;grid-template-columns:1fr;max-height:320px;overflow-y:auto;padding-right:4px}.lesson-session-card{background:#ffffffd9;border:1px solid #1d49b633;border-radius:16px;color:#1c2c4f;display:flex;flex-direction:column;font-weight:600;gap:.35rem;padding:.75rem .9rem;text-align:left;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}.lesson-session-card:hover{box-shadow:0 8px 22px #0f265d1f;transform:translateY(-1px)}.lesson-session-card.active{background:linear-gradient(135deg,#4f8cff,#6ea8fe);border-color:#0000;color:#fff}.lesson-session-card__row{align-items:center;display:flex;gap:.5rem;justify-content:space-between}.lesson-session-card__row--top{font-size:.93rem}.lesson-session-card__row--bottom{justify-content:flex-start}.lesson-session-card__date{font-size:.93rem;font-weight:700}.lesson-session-card__paid{align-items:center;background:#e8f7ee;border-radius:50%;color:#1f8051;display:inline-flex;font-size:.95rem;font-weight:800;height:22px;justify-content:center;width:22px}.lesson-sessions__actions{margin-top:.75rem;text-align:center}.payment-icon{align-items:center;border:1px solid #0000;border-radius:999px;display:inline-flex;font-size:.9rem;font-weight:700;gap:6px;padding:.25rem .55rem}.payment-icon__mark{font-size:.95rem;font-weight:800}.payment-icon--ok{background:#2ecc711f;border-color:#2ecc7159;color:#1f8051}.payment-icon--fail{background:#ff939b2e;border-color:#ff939b59;color:#a31632}@media (min-width:640px){.lesson-sessions-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1100px){.lesson-sessions-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.lesson-edit-modal-backdrop{align-items:center;background:#0a112373;display:flex;inset:0;justify-content:center;position:fixed;z-index:999}.lesson-edit-modal{background:#fff;border-radius:20px;box-shadow:0 25px 60px #0a112333;display:flex;flex-direction:column;gap:.75rem;padding:1.5rem;width:min(480px,90vw)}.participant-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0c163859;display:flex;inset:0;justify-content:center;position:fixed;z-index:999}.participant-modal{background:#fff;border-radius:14px;box-shadow:0 10px 40px #0206172e;max-width:720px;padding:18px 20px;position:relative;width:92%}.participant-modal__close{background:#0000;border:none;color:#5c6a98;cursor:pointer;font-size:1.4rem;position:absolute;right:12px;top:10px}.participant-modal__body{align-items:flex-start;display:flex;gap:18px}.participant-modal__avatar{border:none;border-radius:12px;box-shadow:0 10px 28px #4f8cff2e;height:120px;object-fit:cover;width:120px}.participant-modal__avatar--fallback{align-items:center;background:linear-gradient(135deg,#e6f0ff,#d9e9ff);border-radius:12px;box-shadow:0 10px 28px #4f8cff2e;color:#4f8cff;display:flex;font-size:2.6rem;font-weight:800;height:120px;justify-content:center;width:120px}.participant-modal__avatar--hidden{display:none}.participant-modal__info h3{color:#0b1533;font-size:1.35rem;margin:0 0 8px}.participant-modal__role{color:#3b6cf7;font-weight:700;margin:2px 0 12px}.participant-modal__field{color:#172449;font-size:1rem;margin:6px 0}.lesson-edit-modal form{display:flex;flex-direction:column;gap:.75rem}.lesson-edit-modal label{color:#1b2a52;display:flex;flex-direction:column;font-weight:600;gap:.35rem}.lesson-edit-modal input,.lesson-edit-modal textarea{border:1.5px solid #0c21521f;border-radius:12px;font-size:.95rem;padding:.6rem .8rem}.lesson-edit-modal textarea{min-height:100px;resize:vertical}.lesson-edit-modal__actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:.5rem}.lesson-edit-modal__actions button{border:none;border-radius:999px;cursor:pointer;font-weight:600;padding:.55rem 1.4rem}.lesson-edit-modal__actions button:last-child{background:#1f54d8;color:#fff}.reschedule-actions{display:flex;gap:.5rem;margin-top:.4rem}.reschedule-actions button{background:#1f54d8;border:none;border-radius:10px;color:#fff;cursor:pointer;font-weight:600;padding:.4rem 1rem}.reschedule-actions button.outline{background:#fff3;border:1px solid #274de44d;color:#274de4}.reschedule-waiting{color:#4f5e8c;font-size:.9rem;font-weight:600}.lesson-details__materials a{color:#1f54d8;font-weight:600}.lesson-details__upload{display:flex;flex-direction:column;gap:.8rem;margin-top:1.5rem}.lesson-details__upload input[type=text]{border:1.5px solid #0c21521f;border-radius:14px;padding:.65rem 1rem}.file-input{border:1.5px dashed #1f54d866;border-radius:14px;color:#1f54d8;cursor:pointer;padding:.8rem 1rem;text-align:center}.file-input__name{align-items:center;color:inherit;display:inline-flex;gap:8px;justify-content:space-between;text-align:left;width:100%}.file-input__clear{background:#0000;border:none;color:#111;cursor:pointer;font-size:1.1rem;font-weight:800;line-height:1;padding:0 4px;transition:transform .12s ease,color .12s ease}.file-input__clear:hover{color:#000;transform:translateY(-1px)}.file-input input{display:none}.lesson-details__upload button{align-self:flex-start;background:#1f54d8;border:none;border-radius:999px;box-shadow:0 15px 30px #1f54d84d;color:#fff;cursor:pointer;font-weight:600;padding:.65rem 1.6rem}.lesson-details__columns{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-top:1.5rem}.lesson-details__timeline{list-style:none;margin:1rem 0 0;padding:0}.lesson-details__timeline li{border-bottom:1px solid #0e225014;padding:.9rem 0}.lesson-details__muted{color:#6c789f}.lesson-details__error{color:#c0392b;font-weight:600}.lesson-details__error-card{background:#fff5f5;border:1px solid #f5c6cb;border-radius:12px;color:#a31632;font-weight:600;margin-bottom:.75rem;padding:.75rem 1rem}.upload-hint{color:#556184;font-size:.9rem;margin:4px 0 8px}.upload-error{background:#fff1f0;border:1px solid #ffa39e;border-radius:10px;color:#a8071a;font-weight:600;margin:6px 0;padding:.6rem .75rem}.badge{background:#fffc;border-radius:999px;font-size:.9rem;padding:.25rem 1rem;text-transform:capitalize}.status-scheduled{background:#52c58533;color:#1f8051}.status-completed{background:#ffd5694d;color:#b37508}.status-cancelled,.status-no_show{background:#ff939b4d;color:#ac1d32}.status-draft{background:#fff9;border:1px dashed #4f5e8c66;color:#4f5e8c}.status-no_upcoming{background:#fff6;color:#4f5e8c}.lesson-details__state .lessons-cta.small{display:inline-block;margin-top:1rem}.lesson-review-form{display:flex;flex-direction:column;gap:12px;margin-top:12px}.lesson-details__reviews{margin-top:24px}.rating-stars{display:flex;gap:6px}.rating-stars .star{background:none;border:none;color:#c3c8d4;cursor:pointer;font-size:22px;padding:4px}.rating-stars .star.active{color:#f5a524}.lesson-reviews-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-top:14px}.lesson-review-box{background:#fafbff;border:1px solid #e4e7ec;border-radius:12px;padding:12px}.lesson-review-form select,.lesson-review-form textarea{border:1px solid #d5d8e3;border-radius:10px;font:inherit;padding:10px 12px;resize:vertical;width:100%}.lesson-review-form button{align-self:flex-start;background:linear-gradient(120deg,#4f8cff,#3d6fd3);border:none;border-radius:10px;color:#fff;cursor:pointer;font-weight:600;padding:10px 16px;transition:transform .05s ease,box-shadow .1s ease}.lesson-review-form button:hover{box-shadow:0 6px 12px #3f6fd333;transform:translateY(-1px)}.lesson-review-form button:disabled{box-shadow:none;cursor:not-allowed;opacity:.65;transform:none}@media (max-width:768px){.lesson-details-page{padding:1.5rem 1rem 3rem}}.user-profile-card{align-items:flex-start;background:#fff;border-radius:14px;box-shadow:0 10px 40px #0206172e;box-sizing:border-box;display:flex;gap:18px;padding:18px 20px;width:100%}.user-profile-card__avatar{background:linear-gradient(135deg,#e6f0ff,#d9e9ff);border:none;border-radius:12px;box-shadow:0 10px 28px #4f8cff2e;height:120px;object-fit:cover;width:120px}.user-profile-card__avatar--fallback{align-items:center;color:#4f8cff;display:flex;font-size:2.6rem;font-weight:800;justify-content:center}.user-profile-card__body{display:flex;flex:1 1;flex-direction:column;gap:6px}.user-profile-card__name{color:#0b1533;font-size:1.35rem;margin:0}.user-profile-card__role{color:#3b6cf7;font-weight:700;margin:0 0 8px}.user-profile-card__field{color:#172449;font-size:1rem;margin:4px 0}.user-profile-card__field strong{color:#0b1533}.user-profile-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0c163859;display:flex;inset:0;justify-content:center;position:fixed;z-index:999}.user-profile-modal{max-width:720px;position:relative;width:92%}.user-profile-modal__close{background:#0000;border:none;color:#5c6a98;cursor:pointer;font-size:1.4rem;position:absolute;right:12px;top:10px}.user-profile-loader{color:#1f2c55}.user-profile-error,.user-profile-loader{font-weight:600;padding:30px;text-align:center}.user-profile-error{color:#b91c1c}
/*# sourceMappingURL=main.ab80405c.css.map*/