html{--mat-sys-background: #faf9fd;--mat-sys-error: #ba1a1a;--mat-sys-error-container: #ffdad6;--mat-sys-inverse-on-surface: #f2f0f4;--mat-sys-inverse-primary: #abc7ff;--mat-sys-inverse-surface: #2f3033;--mat-sys-on-background: #1a1b1f;--mat-sys-on-error: #ffffff;--mat-sys-on-error-container: #93000a;--mat-sys-on-primary: #ffffff;--mat-sys-on-primary-container: #00458f;--mat-sys-on-primary-fixed: #001b3f;--mat-sys-on-primary-fixed-variant: #00458f;--mat-sys-on-secondary: #ffffff;--mat-sys-on-secondary-container: #3e4759;--mat-sys-on-secondary-fixed: #131c2b;--mat-sys-on-secondary-fixed-variant: #3e4759;--mat-sys-on-surface: #1a1b1f;--mat-sys-on-surface-variant: #44474e;--mat-sys-on-tertiary: #ffffff;--mat-sys-on-tertiary-container: #0000ef;--mat-sys-on-tertiary-fixed: #00006e;--mat-sys-on-tertiary-fixed-variant: #0000ef;--mat-sys-outline: #74777f;--mat-sys-outline-variant: #c4c6d0;--mat-sys-primary: #005cbb;--mat-sys-primary-container: #d7e3ff;--mat-sys-primary-fixed: #d7e3ff;--mat-sys-primary-fixed-dim: #abc7ff;--mat-sys-scrim: #000000;--mat-sys-secondary: #565e71;--mat-sys-secondary-container: #dae2f9;--mat-sys-secondary-fixed: #dae2f9;--mat-sys-secondary-fixed-dim: #bec6dc;--mat-sys-shadow: #000000;--mat-sys-surface: #faf9fd;--mat-sys-surface-bright: #faf9fd;--mat-sys-surface-container: #efedf0;--mat-sys-surface-container-high: #e9e7eb;--mat-sys-surface-container-highest: #e3e2e6;--mat-sys-surface-container-low: #f4f3f6;--mat-sys-surface-container-lowest: #ffffff;--mat-sys-surface-dim: #dbd9dd;--mat-sys-surface-tint: #005cbb;--mat-sys-surface-variant: #e0e2ec;--mat-sys-tertiary: #343dff;--mat-sys-tertiary-container: #e0e0ff;--mat-sys-tertiary-fixed: #e0e0ff;--mat-sys-tertiary-fixed-dim: #bec2ff;--mat-sys-neutral-variant20: #2d3038;--mat-sys-neutral10: #1a1b1f;--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large: 400 1rem / 1.5rem Roboto;--mat-sys-body-large-font: Roboto;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem Roboto;--mat-sys-body-medium-font: Roboto;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem Roboto;--mat-sys-body-small-font: Roboto;--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem Roboto;--mat-sys-display-large-font: Roboto;--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem Roboto;--mat-sys-display-medium-font: Roboto;--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem Roboto;--mat-sys-display-small-font: Roboto;--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem Roboto;--mat-sys-headline-large-font: Roboto;--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem Roboto;--mat-sys-headline-medium-font: Roboto;--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem Roboto;--mat-sys-headline-small-font: Roboto;--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .875rem / 1.25rem Roboto;--mat-sys-label-large-font: Roboto;--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem Roboto;--mat-sys-label-medium-font: Roboto;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem Roboto;--mat-sys-label-small-font: Roboto;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem Roboto;--mat-sys-title-large-font: Roboto;--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem Roboto;--mat-sys-title-medium-font: Roboto;--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem Roboto;--mat-sys-title-small-font: Roboto;--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500;--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px;--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12}.notification-snackbar{position:fixed!important;top:20px!important;right:20px!important;z-index:9999!important;max-width:400px!important;min-width:300px!important}.notification-info{background-color:#2196f3!important;color:#fff!important}.notification-success{background-color:#4caf50!important;color:#fff!important}.notification-warning{background-color:#ff9800!important;color:#fff!important}.notification-error{background-color:#f44336!important;color:#fff!important}.chat-notification{border-left:4px solid #2196f3;padding-left:16px}.chat-notification .notification-title{font-weight:600;margin-bottom:4px}.chat-notification .notification-message{font-size:14px;opacity:.9}.typing-indicator{display:flex;align-items:center;gap:8px;color:#666;font-style:italic;padding:8px 16px;font-size:14px}.typing-indicator mat-icon{font-size:16px;width:16px;height:16px;animation:pulse 1.5s infinite}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.online-status{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:#666}.online-status.online{color:#4caf50}.online-status.online:before{content:"\25cf";color:#4caf50;font-size:8px}.online-status.offline:before{content:"\25cf";color:#ccc;font-size:8px}.message{animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.unread-badge{position:absolute;top:-8px;right:-8px;background:#f44336;color:#fff;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;min-width:20px}.course-item{transition:all .2s ease}.course-item:hover{transform:translate(4px);box-shadow:0 2px 8px #0000001a}.course-item.active{transform:translate(8px);box-shadow:0 4px 12px #2196f333}.chat-modal-overlay{animation:fadeIn .3s ease-out}.chat-modal{animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(50px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 768px){.notification-snackbar{top:10px!important;right:10px!important;left:10px!important;max-width:none!important;min-width:auto!important}.chat-modal{width:95vw;height:90vh}.course-sidebar{width:100%}.chat-container{flex-direction:column}}:root{--base-font-size: 16px;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem}*{margin:0;padding:0;box-sizing:border-box}html{font-size:var(--base-font-size)}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:var(--font-size-base);line-height:var(--line-height-normal);color:#333;overflow-x:hidden}.container{max-width:1200px;margin:0 auto;padding:0 20px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 24px;border:none;border-radius:8px;font-size:16px;font-weight:600;text-decoration:none;cursor:pointer;transition:all .3s ease;gap:8px}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea4d}.btn-secondary{background:transparent;color:#667eea;border:2px solid #667eea}.btn-secondary:hover{background:#667eea;color:#fff}.card{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;transition:all .3s ease;overflow:hidden}.card:hover{transform:translateY(-5px);box-shadow:0 8px 30px #00000026}.form-group{margin-bottom:20px}.form-label{display:block;margin-bottom:8px;font-weight:600;color:#374151}.form-input{width:100%;padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:16px;transition:all .3s ease}.form-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.modal-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.modal-container{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.loading-spinner{display:inline-block;width:20px;height:20px;border:3px solid #f3f3f3;border-top:3px solid #667eea;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 1400px){.container{max-width:1200px;padding:0 30px}}@media (max-width: 1200px){.container{max-width:1000px;padding:0 25px}}@media (max-width: 1024px){.container{max-width:900px;padding:0 20px}.btn{padding:10px 20px;font-size:15px}}@media (min-width: 834px) and (max-width: 1024px){:root{--base-font-size: 14px}html{font-size:var(--base-font-size);overflow-x:hidden;width:100%;max-width:100vw}body{font-size:var(--font-size-base);overflow-x:hidden;width:100%;max-width:100vw;margin:0;padding:0}main{width:100%!important;max-width:100vw!important;padding:.75rem!important;overflow-x:hidden}.main-content{width:100%!important;max-width:100vw!important;overflow-x:hidden}h1,.h1{font-size:1.75rem!important}h2,.h2{font-size:1.5rem!important}h3,.h3{font-size:1.25rem!important}h4,.h4{font-size:1.125rem!important}h5,.h5{font-size:1rem!important}h6,.h6{font-size:.875rem!important}p,span,div,a,li,td,th{font-size:inherit}.btn{font-size:.875rem!important;padding:.625rem 1.25rem!important}.form-input,input[type=text],input[type=email],input[type=password],input[type=number],textarea,select{font-size:.875rem!important;padding:.625rem .875rem!important}.form-label,label{font-size:.8125rem!important}.card{font-size:.875rem!important}.nav-link{font-size:.75rem!important}.nav-text{font-size:.6875rem!important}table{font-size:.875rem!important}table th,table td{font-size:.875rem!important;padding:.5rem .75rem!important}.modal-container{font-size:.875rem!important;max-width:90vw!important}.modal-header h3{font-size:1.125rem!important}.container{max-width:100%!important;width:100%!important;padding:0 15px!important;margin:0 auto;box-sizing:border-box}*{box-sizing:border-box}.wrapper,[class*=wrapper],[class*=container]:not(.container){max-width:100%!important;width:100%!important;padding-left:15px!important;padding-right:15px!important}.grid,[class*=grid],.gap-4{gap:.75rem!important}.gap-5{gap:1rem!important}.gap-6{gap:1.25rem!important}.p-4{padding:.75rem!important}.p-5{padding:1rem!important}.p-6{padding:1.25rem!important}.m-4{margin:.75rem!important}.m-5{margin:1rem!important}.m-6{margin:1.25rem!important}img,video,iframe{max-width:100%!important;height:auto!important}.profile-avatar,.mentor-avatar img,.language-mentor-avatar img,.avatar-placeholder,[class*=avatar] img{border-radius:50%!important;object-fit:cover!important;display:block!important}.avatar-section,.mentor-avatar,.language-mentor-avatar,[class*=avatar]:not(img){border-radius:50%!important;overflow:hidden!important}section,article,aside{max-width:100%!important;width:100%;padding-left:15px!important;padding-right:15px!important;box-sizing:border-box}}@media (max-width: 900px){.container{max-width:800px;padding:0 15px}.btn{padding:9px 18px;font-size:14px}.form-input{padding:10px 14px;font-size:15px}}@media (max-width: 768px){.container{padding:0 15px}.btn{padding:8px 16px;font-size:14px}.form-input{padding:9px 12px;font-size:14px}.modal-overlay{padding:10px}.modal-container{max-width:100%;margin:0}}@media (max-width: 600px){.container{padding:0 12px}.btn{padding:7px 14px;font-size:13px}.form-input{padding:8px 10px;font-size:13px}}@media (max-width: 480px){.container{padding:0 10px}.btn{padding:6px 12px;font-size:12px}.form-input{padding:7px 8px;font-size:12px}}@media (max-width: 360px){.container{padding:0 8px}.btn{padding:5px 10px;font-size:11px}.form-input{padding:6px;font-size:11px}}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.d-flex{display:flex}.d-block{display:block}.d-none{display:none}.d-grid{display:grid}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.align-center{align-items:center}.align-start{align-items:flex-start}.align-end{align-items:flex-end}.flex-column{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.w-full{width:100%}.h-full{height:100%}.m-0{margin:0}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.rounded{border-radius:.25rem}.rounded-md{border-radius:.375rem}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-full{border-radius:9999px}.shadow{box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.shadow-md{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.shadow-lg{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}@media (max-width: 768px){.md\:d-none{display:none}.md\:d-block{display:block}.md\:d-flex{display:flex}.md\:text-center{text-align:center}.md\:text-left{text-align:left}.md\:text-right{text-align:right}.md\:flex-column{flex-direction:column}.md\:flex-row{flex-direction:row}.md\:w-full{width:100%}.md\:h-full{height:100%}}@media (max-width: 480px){.sm\:d-none{display:none}.sm\:d-block{display:block}.sm\:d-flex{display:flex}.sm\:text-center{text-align:center}.sm\:text-left{text-align:left}.sm\:text-right{text-align:right}.sm\:flex-column{flex-direction:column}.sm\:flex-row{flex-direction:row}.sm\:w-full{width:100%}.sm\:h-full{height:100%}}.fade-in{animation:fadeIn .5s ease-in}.slide-up{animation:slideUp .5s ease-out}.slide-down{animation:slideDown .5s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}*:focus{outline:2px solid #667eea;outline-offset:2px}::selection{background:#667eea4d;color:inherit}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a8a8a8}@media print{.no-print{display:none!important}body{background:#fff!important;color:#000!important}.card{box-shadow:none!important;border:1px solid #ccc!important}}@media (prefers-contrast: high){.btn,.form-input,.card{border:2px solid currentColor}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-color-scheme: dark){body{background:#1a202c;color:#e2e8f0}.card{background:#2d3748;border-color:#4a5568}.form-input{background:#2d3748;border-color:#4a5568;color:#e2e8f0}.form-input:focus{border-color:#667eea}.btn-secondary{border-color:#667eea;color:#667eea}.btn-secondary:hover{background:#667eea;color:#e2e8f0}}
