:root{--primary-orange: #FF6B35;--primary-blue: #4A90E2;--primary-yellow: #FFC107;--primary-purple: #9C27B0;--accent-green: #4CAF50;--dark: #1a1a2e;--light: #ffffff;--gray-50: #fafafa;--gray-100: #f5f5f5;--gray-200: #e5e5e5;--text-dark: #2d3748;--text-light: #718096}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow-x:hidden;color:var(--text-dark);background:var(--gray-50)}.landing-container{position:relative;width:100%;min-height:100vh}.webgl-canvas{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none;background:linear-gradient(135deg,#667eea,#764ba2,#f093fb)}.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;background:#fffffffa;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 4px 30px #00000014;border-bottom:1px solid rgba(255,255,255,.5)}.nav-content{max-width:1400px;margin:0 auto;padding:1.2rem 2rem;display:flex;justify-content:space-between;align-items:center}.logo-container{display:flex;align-items:center;gap:.7rem}.logo-icon{font-size:2rem;animation:float 3s ease-in-out infinite}.logo{font-size:1.7rem;font-weight:900;background:linear-gradient(135deg,var(--primary-orange),var(--primary-purple));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.5px}.nav-links{display:flex;gap:2.5rem;align-items:center}.nav-links button{background:none;border:none;color:var(--text-dark);font-size:1rem;font-weight:600;cursor:pointer;position:relative;padding:.5rem 0;transition:all .3s ease}.nav-links button:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:3px;background:linear-gradient(90deg,var(--primary-orange),var(--primary-purple));transition:width .3s ease;border-radius:2px}.nav-links button:hover,.nav-links button.active{color:var(--primary-orange)}.nav-links button.active:after{width:100%}.scroll-container{position:relative;z-index:1}.scroll-section{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8rem 2rem 4rem;position:relative;opacity:0;transform:translateY(30px);transition:all .8s ease}.scroll-section.section-visible{opacity:1;transform:translateY(0)}.hero-section{background:linear-gradient(135deg,#fffffff2,#ffffffe6);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.hero-content{text-align:center;max-width:1200px;margin:0 auto}.hero-badge{display:inline-flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,#fff5f0,#f0f0ff);border:2px solid rgba(255,107,53,.3);padding:.7rem 1.5rem;border-radius:50px;margin-bottom:2rem;font-weight:600;color:var(--primary-orange);animation:slideDown .6s ease-out}.badge-icon{font-size:1.2rem;animation:sparkle 2s ease-in-out infinite}.hero-title{font-size:4.5rem;font-weight:900;line-height:1.15;margin-bottom:1.5rem;color:var(--text-dark);animation:fadeInUp .8s ease-out .2s backwards}.brand-highlight{background:linear-gradient(135deg,var(--primary-orange),var(--primary-purple));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;position:relative;display:inline-block}.hero-subtitle-inline{font-size:3rem;font-weight:700;background:linear-gradient(135deg,var(--primary-blue),var(--accent-green));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:block;margin-top:.5rem}.hero-description{font-size:1.3rem;color:var(--text-light);margin-bottom:3rem;line-height:1.7;animation:fadeInUp .8s ease-out .4s backwards}.hero-cta-group{display:flex;gap:1.5rem;justify-content:center;margin-bottom:4rem;flex-wrap:wrap;animation:fadeInUp .8s ease-out .6s backwards}.hero-cta-button{display:flex;align-items:center;gap:.8rem;padding:1.2rem 2.5rem;border-radius:50px;font-size:1.1rem;font-weight:700;border:none;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.hero-cta-button.primary{background:linear-gradient(135deg,var(--primary-orange),var(--primary-purple));color:#fff;box-shadow:0 10px 40px #ff6b3566}.hero-cta-button.primary:hover{transform:translateY(-3px);box-shadow:0 15px 50px #ff6b3599}.hero-cta-button.secondary{background:#fff;color:var(--primary-orange);border:2px solid var(--primary-orange);box-shadow:0 5px 20px #0000001a}.hero-cta-button.secondary:hover{background:var(--primary-orange);color:#fff;transform:translateY(-3px)}.cta-icon{font-size:1.3rem;transition:transform .3s ease}.hero-cta-button:hover .cta-icon{transform:translate(5px)}.play-icon{font-size:.8rem}.hero-visual-cards{display:flex;gap:2rem;justify-content:center;margin-bottom:4rem;flex-wrap:wrap;animation:fadeInUp .8s ease-out .8s backwards}.visual-card{background:#fff;border-radius:24px;padding:2rem;box-shadow:0 20px 60px #0000001a;width:300px;transition:all .4s ease;border:2px solid transparent}.visual-card:hover{transform:translateY(-10px) scale(1.02);box-shadow:0 30px 80px #00000026}.student-card{border-color:#4a90e24d;background:linear-gradient(135deg,#fff,#f0f8ff)}.student-card:hover{border-color:var(--primary-blue)}.tutor-card{border-color:#ff6b354d;background:linear-gradient(135deg,#fff,#fff5f0)}.tutor-card:hover{border-color:var(--primary-orange)}.card-icon{font-size:3rem;margin-bottom:1rem}.card-title{font-size:1.5rem;font-weight:700;margin-bottom:1.5rem;color:var(--text-dark)}.card-stats{display:flex;flex-direction:column;gap:1rem}.stat-item{text-align:left}.stat-value{font-size:2rem;font-weight:900;color:var(--primary-orange);line-height:1}.stat-label{font-size:.9rem;color:var(--text-light);margin-top:.3rem}.rating-display{display:flex;align-items:center;gap:.5rem;background:#ffc1071a;padding:.8rem;border-radius:12px}.stars{font-size:1rem}.rating-text{font-weight:700;color:var(--text-dark)}.growth-badge{display:flex;align-items:center;gap:.5rem;background:#4caf501a;padding:.8rem;border-radius:12px;color:var(--accent-green);font-weight:700}.trust-badges{display:flex;gap:2rem;justify-content:center;align-items:center;padding:2rem;background:#fffc;border-radius:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 10px 30px #0000000d;flex-wrap:wrap;animation:fadeInUp .8s ease-out 1s backwards}.trust-item{text-align:center}.trust-number{font-size:2rem;font-weight:900;background:linear-gradient(135deg,var(--primary-orange),var(--primary-purple));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;margin-bottom:.5rem}.trust-text{font-size:.9rem;color:var(--text-light);font-weight:600}.trust-divider{width:2px;height:40px;background:linear-gradient(180deg,transparent,var(--gray-200),transparent)}.features-section{background:var(--light)}.section-header{text-align:center;margin-bottom:4rem;max-width:800px;margin-left:auto;margin-right:auto}.section-title{font-size:3rem;font-weight:900;margin-bottom:1rem;color:var(--text-dark);display:flex;align-items:center;justify-content:center;gap:1rem}.title-icon{font-size:3rem;animation:bounce 2s ease-in-out infinite}.section-description{font-size:1.2rem;color:var(--text-light);line-height:1.7}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.feature-card{background:#fff;padding:2.5rem;border-radius:24px;box-shadow:0 10px 40px #00000014;transition:all .4s cubic-bezier(.175,.885,.32,1.275);border:2px solid transparent;position:relative;overflow:hidden}.feature-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--primary-orange),var(--primary-purple));transform:scaleX(0);transition:transform .4s ease}.feature-card:hover:before{transform:scaleX(1)}.feature-card:hover{transform:translateY(-10px);box-shadow:0 20px 60px #00000026;border-color:#ff6b3533}.feature-card.highlight{background:linear-gradient(135deg,#fff5f0,#f0f0ff);border-color:var(--primary-orange)}.feature-icon-wrapper{width:80px;height:80px;background:linear-gradient(135deg,var(--primary-orange),var(--primary-purple));border-radius:20px;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem;box-shadow:0 10px 30px #ff6b354d;transition:transform .3s ease}.feature-card:hover .feature-icon-wrapper{transform:rotate(5deg) scale(1.1)}.feature-icon{font-size:2.5rem}.feature-card h3{font-size:1.5rem;font-weight:700;margin-bottom:1rem;color:var(--text-dark)}.feature-card p{color:var(--text-light);line-height:1.7;font-size:1rem}.feature-badge{position:absolute;top:1rem;right:1rem;background:var(--primary-orange);color:#fff;padding:.4rem 1rem;border-radius:50px;font-size:.75rem;font-weight:700;text-transform:uppercase}.how-it-works-section{background:linear-gradient(135deg,#fffffffa,#f0f8fffa);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.steps-timeline{max-width:1000px;margin:0 auto;position:relative}.step-card{display:flex;gap:2rem;align-items:center;margin-bottom:3rem;background:#fff;padding:2rem;border-radius:24px;box-shadow:0 10px 40px #00000014;transition:all .4s ease;border-left:4px solid transparent}.step-card:hover{transform:translate(10px);box-shadow:0 20px 60px #0000001f;border-left-color:var(--primary-orange)}.step-number-wrapper{position:relative;flex-shrink:0}.step-number{width:70px;height:70px;background:linear-gradient(135deg,var(--primary-orange),var(--primary-purple));color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:900;box-shadow:0 10px 30px #ff6b3566;position:relative;z-index:2}.step-pulse{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:70px;height:70px;border-radius:50%;background:var(--primary-orange);opacity:.3;animation:pulse 2s ease-out infinite}.step-content{flex:1;position:relative}.step-content h3{font-size:1.7rem;font-weight:700;margin-bottom:.8rem;color:var(--text-dark)}.step-content p{color:var(--text-light);line-height:1.7;font-size:1.05rem}.step-icon{position:absolute;right:1rem;top:50%;transform:translateY(-50%);font-size:3rem;opacity:.1}.timeline-connector{width:4px;height:60px;background:linear-gradient(180deg,var(--primary-orange),var(--primary-purple));margin:-1rem auto;border-radius:4px;position:relative;left:35px}.cta-section{background:linear-gradient(135deg,#667eea,#764ba2,#f093fb);color:#fff;position:relative;overflow:hidden}.cta-section:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);animation:rotate 20s linear infinite}.cta-content{text-align:center;max-width:900px;margin:0 auto;position:relative;z-index:2}.cta-icon-large{font-size:5rem;margin-bottom:1.5rem;animation:bounce 2s ease-in-out infinite}.cta-title{font-size:3.5rem;font-weight:900;margin-bottom:1.5rem;text-shadow:0 4px 20px rgba(0,0,0,.2)}.cta-text{font-size:1.3rem;margin-bottom:3rem;opacity:.95;line-height:1.7}.cta-buttons{display:flex;gap:1.5rem;justify-content:center;margin-bottom:3rem;flex-wrap:wrap}.btn-primary,.btn-secondary{display:flex;align-items:center;gap:.8rem;padding:1.3rem 3rem;border-radius:50px;font-size:1.1rem;font-weight:700;border:none;cursor:pointer;transition:all .3s ease}.btn-primary{background:#fff!important;color:var(--primary-purple)!important;box-shadow:0 10px 40px #0000004d;position:relative;overflow:hidden;z-index:10}.btn-primary:hover{transform:translateY(-5px);box-shadow:0 20px 60px #0006;background:var(--gray-50)!important}.btn-secondary{background:#fff3;color:#fff;border:2px solid white;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-secondary:hover{background:#fff;color:var(--primary-purple)}.btn-arrow{font-size:1.3rem;transition:transform .3s ease}.btn-primary:hover .btn-arrow{transform:translate(5px)}.cta-guarantees{display:flex;gap:2rem;justify-content:center;flex-wrap:wrap}.guarantee-item{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:600}.guarantee-icon{width:24px;height:24px;background:#ffffff4d;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:900}.scroll-indicator{position:fixed;right:2rem;top:50%;transform:translateY(-50%);z-index:100;display:flex;flex-direction:column;gap:1rem}.scroll-dot{width:14px;height:14px;border-radius:50%;background:#ffffff80;border:2px solid white;cursor:pointer;transition:all .3s ease;padding:0;box-shadow:0 2px 10px #0003}.scroll-dot:hover{background:#fffc;transform:scale(1.3)}.scroll-dot.active{background:var(--primary-orange);border-color:var(--primary-orange);box-shadow:0 0 20px #ff6b3599;transform:scale(1.2)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}@keyframes pulse{0%{transform:translate(-50%,-50%) scale(1);opacity:.3}to{transform:translate(-50%,-50%) scale(1.5);opacity:0}}@keyframes sparkle{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.state-message{min-height:60vh;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1rem;color:var(--text-light);text-align:center;padding:2rem}.state-message.error{color:#d0342c}.spinner{width:48px;height:48px;border:4px solid rgba(0,0,0,.1);border-top-color:var(--primary-orange);border-radius:50%;animation:spin .8s linear infinite}.mobile-bottom-nav{display:none;position:fixed;bottom:0;left:0;right:0;background:#fff;padding:.8rem 1rem;justify-content:space-around;align-items:center;box-shadow:0 -5px 20px #0000001a;z-index:2000;border-top:1px solid var(--gray-200);padding-bottom:max(.8rem,env(safe-area-inset-bottom))}.nav-item{display:flex;flex-direction:column;align-items:center;gap:.3rem;background:none;border:none;color:var(--text-light);font-size:.7rem;font-weight:600;cursor:pointer;transition:all .3s ease;padding:.5rem .2rem;border-radius:12px;flex:1;min-width:64px;z-index:2002;position:relative}.nav-item .nav-label{display:block;font-size:.65rem;font-weight:600;color:var(--text-dark);margin-top:2px;line-height:1.1;text-align:center}.nav-icon{display:flex;align-items:center;justify-content:center;font-size:1.4rem;transition:transform .3s ease}.nav-item.active{color:var(--primary-orange);background:#ff6b351a}.nav-item.active .nav-label{color:var(--primary-orange)}.nav-item.active .nav-icon{transform:translateY(-2px)}.nav-item.special{background:linear-gradient(135deg,var(--primary-orange),var(--primary-purple));color:#fff;border-radius:30px;width:auto;min-width:auto;height:48px;margin-top:0;border:none;box-shadow:0 4px 15px #ff6b354d;display:flex!important;flex-direction:row;align-items:center;justify-content:center;flex:1.2;padding:0 .8rem;gap:.3rem}.nav-item.special .nav-label{display:block!important;color:#fff;font-size:.75rem;font-weight:700;white-space:nowrap;margin-top:0}.nav-item.special .nav-icon{font-size:1.1rem}@media(max-width:1024px){.hero-title{font-size:3.5rem}.hero-subtitle-inline{font-size:2.5rem}}@media(max-width:768px){.hero-title{font-size:2rem;overflow-wrap:break-word;margin-bottom:1rem;line-height:1.2}.hero-badge{padding:.5rem 1rem;font-size:.8rem}.hero-subtitle-inline{font-size:1.4rem;margin-top:.5rem}.hero-description{font-size:1rem;padding:0 1rem}.hero-cta-button{padding:1rem 1.5rem;width:100%;justify-content:center;font-size:1rem}.nav-links{display:none}.mobile-bottom-nav{display:flex}.nav-content{justify-content:center;padding:1rem;height:60px}.navbar{z-index:1000}.logo-container{justify-content:center}.landing-container{padding-bottom:120px}.hero-section{padding-top:100px;height:auto;min-height:100vh}.scroll-section{padding:4rem 1rem 8rem;min-height:auto}.hero-visual-cards{flex-direction:column;align-items:center}.visual-card{width:100%;max-width:320px}.features-grid{grid-template-columns:1fr;padding:0 1rem}.step-card{flex-direction:column;text-align:center;padding:1.5rem}.step-icon{position:static;margin-top:1rem;opacity:.3}.timeline-connector{display:none}.step-card{display:flex;flex-direction:column;text-align:center;padding:2rem;margin-bottom:2rem;border-left:none;border-top:4px solid transparent;width:100%}.step-card:hover{transform:translateY(-5px);border-left:none;border-top-color:var(--primary-orange)}.step-number-wrapper{margin:0 auto 1.5rem}.step-content{width:100%}.cta-title{font-size:2rem;line-height:1.2}.cta-icon-large{font-size:3.5rem}.cta-buttons{flex-direction:column;width:100%;padding:0 1rem}.scroll-indicator{display:none}.trust-badges{flex-direction:column;gap:1.5rem;padding:1.5rem;width:100%}.trust-divider{width:40px;height:2px}.hero-cta-group{flex-direction:column;width:100%;align-items:stretch;padding:0 1rem}.hero-cta-button{justify-content:center}}:root{--primary-orange: #FF6B35;--primary-blue: #4A90E2;--primary-purple: #9C27B0;--accent-yellow: #FFC107;--accent-green: #4CAF50;--dark: #1a1a2e;--light: #ffffff;--gray-50: #fafafa;--gray-100: #f5f5f5;--gray-200: #e5e5e5;--gray-300: #d4d4d4;--text-dark: #2d3748;--text-light: #718096}.auth-container{position:relative;min-height:100vh;width:100%;overflow:hidden;background:linear-gradient(135deg,#667eea,#764ba2,#f093fb)}.auth-canvas{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0}.auth-content{position:relative;z-index:1;display:flex;min-height:100vh;max-width:1400px;margin:0 auto;padding:2rem;gap:3rem}.auth-branding{flex:1;display:flex;flex-direction:column;justify-content:center;gap:3rem;padding:2rem;color:#fff}.brand-logo{display:flex;align-items:center;gap:1rem;animation:fadeInLeft .8s ease-out}.logo-icon-large{font-size:4rem;animation:bounce 2s ease-in-out infinite}.brand-name{font-size:3rem;font-weight:900;background:linear-gradient(135deg,#fff,#fffc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.brand-tagline{animation:fadeInLeft .8s ease-out .2s backwards}.brand-tagline h2{font-size:2rem;font-weight:700;margin-bottom:1rem;line-height:1.3}.brand-tagline p{font-size:1.2rem;opacity:.9;line-height:1.6}.auth-stats{display:flex;gap:2rem;flex-wrap:wrap;animation:fadeInLeft .8s ease-out .4s backwards}.stat-box{background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);padding:1.5rem 2rem;border-radius:16px;transition:all .3s ease}.stat-box:hover{transform:translateY(-5px);background:#fff3}.stat-number{font-size:2.5rem;font-weight:900;line-height:1;margin-bottom:.5rem}.stat-label{font-size:.9rem;opacity:.9}.auth-features{display:flex;flex-direction:column;gap:1rem;animation:fadeInLeft .8s ease-out .6s backwards}.feature-item{display:flex;align-items:center;gap:1rem;font-size:1.1rem;padding:.5rem 0}.feature-icon{width:28px;height:28px;background:#fff3;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:900;flex-shrink:0}.auth-form-container{flex:1;display:flex;flex-direction:column;justify-content:center;gap:2rem;animation:fadeInRight .8s ease-out}.auth-form-card{background:#fff;border-radius:24px;padding:3rem;box-shadow:0 20px 60px #0003;max-width:550px;width:100%;margin:0 auto}.form-header{text-align:center;margin-bottom:2rem}.form-header h2{font-size:2rem;font-weight:900;color:var(--text-dark);margin-bottom:.5rem}.form-header p{font-size:1rem;color:var(--text-light)}.user-type-selector{display:flex;gap:1rem;margin-bottom:2rem}.type-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.5rem 1rem;border:2px solid var(--gray-200);border-radius:16px;background:#fff;cursor:pointer;transition:all .3s ease;font-size:1rem;font-weight:600;color:var(--text-dark)}.type-btn:hover{border-color:var(--primary-orange);transform:translateY(-2px)}.type-btn.active{border-color:var(--primary-orange);background:linear-gradient(135deg,#ff6b351a,#9c27b01a);box-shadow:0 5px 20px #ff6b3533}.type-icon{font-size:2rem}.auth-form{display:flex;flex-direction:column;gap:1.5rem}.form-error{background:#ffe6e6;color:#b42318;border:1px solid #f5a1a1;border-radius:12px;padding:.75rem 1rem;font-size:.95rem}.form-group label{font-size:.9rem;font-weight:600;color:var(--text-dark)}.form-group input{padding:1rem;border:2px solid var(--gray-200);border-radius:12px;font-size:1rem;transition:all .3s ease;background:var(--gray-50)}.form-group input:focus{outline:none;border-color:var(--primary-orange);background:#fff;box-shadow:0 0 0 4px #ff6b351a}.form-extras{display:flex;justify-content:space-between;align-items:center;margin-top:-.5rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--text-dark);cursor:pointer}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--primary-orange)}.checkbox-label.terms{margin-top:-.5rem}.forgot-password,.link-btn{background:none;border:none;color:var(--primary-orange);font-size:.9rem;font-weight:600;cursor:pointer;padding:0;text-decoration:none}.forgot-password:hover,.link-btn:hover{text-decoration:underline}.submit-btn{padding:1.2rem;background:linear-gradient(135deg,var(--primary-orange),var(--primary-purple));color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 5px 20px #ff6b354d;margin-top:.5rem}.submit-btn:hover{transform:translateY(-2px);box-shadow:0 8px 30px #ff6b3566}.submit-btn:active{transform:translateY(0)}.submit-btn:disabled{opacity:.7;cursor:not-allowed;box-shadow:none;transform:none}.auth-footer{text-align:center;margin-top:2rem;padding-top:2rem;border-top:1px solid var(--gray-200)}.auth-footer p{color:var(--text-light);font-size:.95rem}.toggle-btn{background:none;border:none;color:var(--primary-orange);font-weight:700;cursor:pointer;margin-left:.5rem;font-size:.95rem;padding:0}.toggle-btn:hover{text-decoration:underline}.back-home{text-align:center}.back-home button{background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);color:#fff;padding:.8rem 1.5rem;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.back-home button:hover{background:#ffffff4d;transform:translate(-5px)}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@media(max-width:1024px){.auth-content{flex-direction:column;padding:1.5rem}.auth-branding{padding:1rem;gap:2rem}.brand-logo{justify-content:center}.logo-icon-large{font-size:3rem}.brand-name{font-size:2.5rem}.brand-tagline h2{font-size:1.5rem;text-align:center}.brand-tagline p{font-size:1rem;text-align:center}.auth-stats{justify-content:center}.stat-box{flex:1;min-width:120px}.auth-features{align-items:center}}@media(max-width:640px){.auth-form-card{padding:2rem 1.5rem}.form-header h2{font-size:1.6rem}.user-type-selector{flex-direction:column}.type-btn{flex-direction:row;justify-content:center}.auth-stats{flex-direction:column}.stat-box{width:100%}.form-extras{flex-direction:column;gap:1rem;align-items:flex-start}}.student-dashboard{display:flex;min-height:100vh;background:var(--gray-50)}.nav-item{width:100%;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:1rem;padding:.8rem 1rem;border:none;background:transparent;color:#fffc;font-size:.95rem;font-weight:600;border-radius:12px;cursor:pointer;transition:all .3s ease;margin-bottom:.4rem;position:relative}.profile-btn,.logout-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.8rem;padding:.9rem;background:#ff6b3533;border:1px solid rgba(255,107,53,.3);color:#fff;font-weight:600;border-radius:12px;cursor:pointer;transition:all .3s ease;margin-top:.5rem}.profile-btn{background:#9c27b033;border:1px solid rgba(156,39,176,.3)}.profile-btn:hover,.logout-btn:hover{background:#ff6b354d}.profile-btn:hover{background:#9c27b04d}.stat-icon{width:60px;height:60px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:2rem;box-shadow:0 5px 15px #0000001a}.stat-card.orange .stat-icon{background:linear-gradient(135deg,#ff6b35,#f44336);box-shadow:0 5px 15px #ff6b354d}.stat-card.blue .stat-icon{background:linear-gradient(135deg,#4a90e2,#00bcd4);box-shadow:0 5px 15px #4a90e24d}.stat-card.purple .stat-icon{background:linear-gradient(135deg,#9c27b0,#e040fb);box-shadow:0 5px 15px #9c27b04d}.stat-card.green .stat-icon{background:linear-gradient(135deg,#4caf50,#8bc34a);box-shadow:0 5px 15px #4caf504d}.activity-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0;background:var(--primary-blue)}.search-filter-bar{background:#fff;padding:.8rem;border-radius:12px;box-shadow:0 2px 10px #00000008;margin-bottom:1.2rem;display:flex;flex-direction:column;gap:.8rem}.search-box{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;background:var(--gray-50);border-radius:8px;margin-bottom:0}.search-icon{font-size:1rem;color:var(--text-light)}.search-box input{flex:1;border:none;background:transparent;font-size:.9rem;outline:none}.filter-chips{display:flex;gap:.4rem;flex-wrap:wrap}.filter-chip{padding:.3rem .9rem;background:#fff;border:1px solid var(--gray-200);border-radius:12px;color:var(--text-light);font-weight:500;cursor:pointer;transition:all .2s ease;font-size:.8rem}.tutors-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.tutor-card-compact{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;border:1px solid var(--gray-100);transition:all .2s ease;display:flex;flex-direction:column;padding:1rem;gap:.8rem}.tutor-card-compact:hover{transform:translateY(-4px);box-shadow:0 8px 16px #0000001a;border-color:var(--primary-purple)}.tutor-header-compact{display:flex;gap:.8rem;align-items:center}.tutor-avatar-compact{width:48px;height:48px;border-radius:50%;overflow:hidden;flex-shrink:0;border:1px solid var(--gray-200)}.tutor-avatar-compact img{width:100%;height:100%;object-fit:cover}.avatar-placeholder{width:100%;height:100%;background:var(--gray-100);display:flex;align-items:center;justify-content:center;color:var(--gray-400)}.tutor-info-compact{flex:1;min-width:0}.tutor-name-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:.2rem}.tutor-name-row h3{font-size:1rem;font-weight:700;color:var(--text-dark);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tutor-rating-pill{display:flex;align-items:center;gap:.3rem;background:var(--gray-50);padding:.2rem .5rem;border-radius:12px;font-size:.75rem;font-weight:600;color:var(--text-dark)}.tutor-subject-text{font-size:.85rem;color:var(--primary-orange);font-weight:600}.tutor-stats-compact{display:flex;gap:1rem;font-size:.8rem;color:var(--text-light);padding-bottom:.5rem;border-bottom:1px solid var(--gray-50)}.stat-item{display:flex;align-items:center;gap:.3rem}.tutor-stat-icon{color:var(--gray-400)}.tutor-tags-compact{display:flex;flex-wrap:wrap;gap:.4rem;min-height:1.6rem}.compact-tag{font-size:.7rem;padding:.2rem .5rem;background:var(--gray-100);border-radius:6px;color:var(--text-dark);font-weight:500}.compact-tag.more{background:none;color:var(--text-light)}.tutor-footer-compact{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:.5rem}.price-compact .amount{font-size:1.1rem;font-weight:800;color:var(--text-dark)}.price-compact .unit{font-size:.8rem;color:var(--text-light)}.book-btn-compact{padding:.5rem 1.2rem;background:var(--primary-purple);color:#fff;border:none;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 4px 10px #9c27b033}.book-btn-compact:hover{background:var(--primary-purple-dark);transform:translateY(-1px);box-shadow:0 6px 15px #9c27b04d}.sessions-tabs{display:flex;gap:1rem;margin-bottom:2rem}.sessions-tab-btn{padding:.6rem 1.5rem;background:#fff;border:1px solid var(--gray-200);border-radius:20px;font-weight:600;color:var(--text-light);cursor:pointer;transition:all .2s ease}.sessions-tab-btn:hover{border-color:var(--primary-orange);color:var(--primary-orange);background:var(--gray-50)}.sessions-tab-btn.active{background:var(--primary-orange);color:#fff;border-color:var(--primary-orange);box-shadow:0 4px 10px #ff6b3533}.sessions-list-detailed{display:flex;flex-direction:column;gap:.8rem}.session-card-simple{background:#fff;border-radius:16px;padding:1.25rem;box-shadow:0 4px 12px #0000000d;display:flex;align-items:center;gap:1.25rem;transition:all .2s ease;border:1px solid var(--gray-100);margin-bottom:0}.session-card-simple:hover{background:#fff;box-shadow:0 8px 20px #00000014;transform:translateY(-3px);border-color:var(--primary-purple)}.simple-date-box{width:60px;height:60px;background:var(--gray-50);border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--primary-purple);line-height:1;border:1px solid var(--gray-200)}.simple-date-box .day{font-size:1.4rem;font-weight:800}.simple-date-box .month{font-size:.8rem;font-weight:700;text-transform:uppercase;margin-top:2px}.simple-card-middle{flex:1;display:flex;flex-direction:column;gap:.4rem;min-width:0}.simple-header{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.simple-subject{font-size:1.2rem;font-weight:700;color:var(--text-dark);margin:0;white-space:nowrap}.simple-status{font-size:.75rem;font-weight:700;text-transform:uppercase;padding:.25rem .6rem;border-radius:6px}.simple-status.confirmed{background:#e8f5e9;color:#2e7d32}.simple-status.pending{background:#fff3e0;color:#ef6c00}.simple-status.cancelled{background:#ffebee;color:#c62828}.simple-meta-row{display:flex;align-items:center;gap:.8rem;font-size:.95rem;color:var(--text-light);flex-wrap:wrap}.tutor-avatar-micro{width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;background:#eee;margin-right:6px}.simple-meta{display:flex;align-items:center}.simple-dot{color:var(--gray-300);font-size:.6rem}.simple-feedback-row{display:flex;align-items:center;gap:.8rem;margin-top:.2rem;background:#fff9e6;padding:.4rem .8rem;border-radius:6px;width:fit-content;border:1px solid #ffeeba}.simple-stars{font-size:.9rem;line-height:1}.simple-comment{font-size:.85rem;color:#bfa01d;font-style:italic;max-width:300px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.simple-actions{display:flex;align-items:center;gap:.6rem;flex-shrink:0;position:relative;z-index:5}.btn-simple{border:none;cursor:pointer!important;border-radius:8px;transition:all .2s;display:flex;align-items:center;justify-content:center;font-weight:600;position:relative;z-index:6;pointer-events:auto}.btn-simple:active{transform:scale(.95)}.btn-simple.secondary{background:transparent;color:var(--text-light);font-size:1.3rem;padding:.6rem;width:42px;height:42px;border-radius:50%}.btn-simple.secondary:hover{background:var(--gray-100);color:var(--primary-purple);transform:scale(1.05)}.btn-simple.primary{background:var(--primary-purple);color:#fff;padding:.6rem 1.4rem;font-size:.95rem;border-radius:24px}.btn-simple.primary:hover{background:#7b1fa2;box-shadow:0 4px 12px #7b1fa266;transform:translateY(-1px)}.btn-simple.danger{background:transparent;color:#ef4444;font-size:1.3rem;padding:.6rem;width:42px;height:42px;border-radius:50%}.btn-simple.danger:hover{background:#fee2e2;transform:scale(1.05)}.progress-overview{display:flex;flex-direction:column;gap:2rem;margin-bottom:3rem}@media(min-width:992px){.progress-overview{flex-direction:row;align-items:stretch}}.overall-progress-card{background:#fff;border-radius:20px;padding:2rem;box-shadow:0 4px 20px #00000008;text-align:center;position:relative;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid rgba(0,0,0,.03);gap:2rem}.overall-progress-card h3{font-size:1.2rem;font-weight:700;color:var(--text-dark);margin-bottom:0;width:100%}.circular-progress{position:relative;display:flex;justify-content:center;width:170px;height:170px}.circular-progress svg{width:100%;height:100%}.progress-percentage{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:3rem;font-weight:900;background:linear-gradient(135deg,var(--primary-orange),var(--primary-purple));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-1px}.progress-stats-mini{display:flex;justify-content:center;gap:2rem;width:100%}.mini-stat{display:flex;align-items:center;gap:1rem;background:var(--gray-50);padding:.8rem 1.2rem;border-radius:14px;flex:1;max-width:160px;transition:transform .2s}.mini-stat:hover{transform:translateY(-2px);background:#fff;box-shadow:0 4px 12px #0000000d}.mini-stat-icon{width:36px;height:36px;background:#fff;border-radius:10px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #0000000a}.mini-stat-info{display:flex;flex-direction:column;align-items:flex-start}.mini-stat-value{font-size:1.2rem;font-weight:800;color:var(--text-dark);line-height:1;margin-bottom:2px}.mini-stat-label{font-size:.7rem;color:var(--text-light);font-weight:700;text-transform:uppercase;letter-spacing:.5px}.achievements-card{background:#fff;border-radius:20px;padding:2rem;box-shadow:0 4px 20px #00000008;flex:1.2;display:flex;flex-direction:column}.achievements-card h3{font-size:1.2rem;font-weight:700;color:var(--text-dark);margin-bottom:1.5rem}.achievements-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.2rem;flex:1;align-content:center}.achievement-badge{background:#fff;padding:1.2rem 1rem;border-radius:16px;text-align:center;transition:all .3s ease;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--gray-200);height:100%}.achievement-badge:hover{border-color:var(--primary-orange);transform:translateY(-3px);box-shadow:0 8px 20px #0000000d}.achievement-badge.locked{opacity:.6;background:var(--gray-50);border-color:transparent}.badge-icon{display:flex;align-items:center;justify-content:center;margin-bottom:.5rem;transition:transform .3s ease;filter:drop-shadow(0 2px 4px rgba(0,0,0,.05))}.achievement-badge:hover .badge-icon{transform:scale(1.1)}.badge-name{font-weight:600;font-size:.85rem;color:var(--text-dark)}.subject-progress-list{background:#fff;border-radius:24px;padding:2.5rem;box-shadow:0 10px 30px #0000000d}.subject-progress-list h3{font-size:1.4rem;font-weight:800;color:var(--text-dark);margin-bottom:2rem}.subject-progress-item{margin-bottom:1.5rem;padding:1rem;border-radius:12px;background:var(--gray-50);transition:transform .2s}.subject-progress-item:hover{transform:scale(1.01);background:#fff;box-shadow:0 4px 15px #00000008}.subject-progress-item:last-child{margin-bottom:0}.subject-progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.8rem}.subject-name{font-size:1.1rem;font-weight:700;color:var(--text-dark)}.subject-stats{display:flex;gap:1rem;color:var(--text-light);font-size:.9rem}.progress-percent{font-weight:700;color:var(--primary-orange)}.progress-bar{height:8px;background:var(--gray-200);border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(135deg,var(--primary-orange),var(--primary-purple));border-radius:4px;transition:width .3s ease}.settings-sections{display:flex;flex-direction:column;gap:24px}.settings-section{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000001a}.settings-section h3{margin:0 0 8px;color:var(--text-dark);font-size:20px}.settings-section p{margin:0 0 16px;color:var(--text-light);font-size:14px}.settings-section .btn-primary,.settings-section .btn-secondary{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.settings-section .btn-primary{background:var(--primary-purple);color:#fff}.settings-section .btn-primary:hover:not(:disabled){background:#7b1fa2}.settings-section .btn-secondary{background:var(--gray-200);color:var(--text-dark)}.settings-section .btn-secondary:disabled{opacity:.6;cursor:not-allowed}.modal-tutor-avatar{width:60px;height:60px;background:linear-gradient(135deg,var(--primary-orange),var(--primary-purple));border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;flex-shrink:0}.booking-form{display:flex;flex-direction:column;gap:1.5rem}.form-input option{padding:1rem}.student-mobile-nav{display:none;position:fixed;bottom:0;left:0;right:0;background:#fff;box-shadow:0 -4px 20px #0000001a;padding:.8rem;justify-content:space-around;align-items:center;z-index:1000;padding-bottom:max(.8rem,env(safe-area-inset-bottom))}.mobile-nav-item{display:flex;flex-direction:column;align-items:center;gap:4px;background:none;border:none;color:var(--text-light);font-size:.75rem;cursor:pointer;flex:1}.mobile-nav-item.active{color:var(--primary-orange)}.mobile-nav-icon{font-size:1.4rem}.mobile-nav-label{font-weight:600}@media(max-width:768px){.student-dashboard{flex-direction:column}.sidebar{display:none!important}.student-mobile-nav{display:flex;padding:.5rem;gap:.2rem}.mobile-nav-item{padding:.3rem;font-size:.7rem}.mobile-nav-icon{font-size:1.2rem}.main-content{margin-left:0!important;padding:.5rem;padding-bottom:70px;width:100%}.dashboard-card,.tutor-card,.session-card-detailed,.achievements-card,.subject-progress-list,.search-filter-bar{padding:.8rem!important;border-radius:12px}.page-header{margin-bottom:1rem}.page-header h1{font-size:1.4rem;margin-bottom:.2rem}.stats-grid{grid-template-columns:repeat(2,1fr);gap:.5rem;margin-bottom:1.5rem}.stat-card{padding:.8rem;flex-direction:column;text-align:center;gap:.3rem;align-items:center;min-height:auto}.stat-icon{width:36px;height:36px;font-size:1rem;margin-bottom:.2rem}.stat-value{font-size:1.2rem;margin-bottom:0}.stat-label{font-size:.75rem}.stat-icon{width:45px;height:45px;font-size:1.5rem}.stat-value{font-size:1.5rem}.dashboard-grid{grid-template-columns:1fr;gap:1.5rem}.tutors-grid{grid-template-columns:1fr}.session-card-detailed{flex-direction:column;padding:1rem;gap:1rem}.session-card-left{display:flex;align-items:center;gap:1rem}.session-meta{flex-direction:column;gap:.5rem}.session-card-right{flex-direction:row;align-items:center;justify-content:space-between;width:100%;margin-top:.5rem;padding-top:1rem;border-top:1px solid var(--gray-100);flex-wrap:wrap;gap:.5rem}.session-actions{flex-direction:row;flex-wrap:wrap;width:100%}.action-btn{flex:1;text-align:center}.search-box{flex-direction:row}.tutor-card-footer{flex-direction:column;gap:1rem}.tutor-price{width:100%;justify-content:center}.book-btn{width:100%}.sessions-tabs{flex-wrap:wrap}.sessions-tab-btn{flex:1;text-align:center;padding:.6rem;font-size:.9rem}.progress-overview{grid-template-columns:1fr}.achievements-grid{grid-template-columns:repeat(2,1fr)}.coming-soon-icon{font-size:3rem}.page-header h1{font-size:1.8rem}}@media(min-width:9999px){.sidebar.open{transform:translate(0)}.main-content{margin-left:0}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.dashboard-grid,.tutors-grid{grid-template-columns:1fr}.session-card-detailed{flex-direction:column;align-items:stretch}.session-card-right{align-items:stretch;flex-direction:row;justify-content:flex-end}.session-actions{flex-direction:row;gap:.5rem}.progress-overview{grid-template-columns:1fr}.progress-stats-mini{gap:2rem}.achievements-grid{grid-template-columns:repeat(2,1fr)}.modal-content{width:95%;margin:1rem}.modal-header{flex-direction:column;text-align:center;padding:1.5rem}.modal-footer,.sessions-tabs{flex-direction:column}}@media(max-width:480px){.main-content{padding:1rem}.page-header h1{font-size:1.5rem}.stat-card{flex-direction:column;text-align:center;padding:1rem}.stat-icon{width:50px;height:50px;font-size:1.5rem}.session-actions{flex-direction:column}.achievements-grid{grid-template-columns:1fr}.filter-chips{justify-content:center}}@media(max-width:768px){.student-dashboard{flex-direction:column}.sidebar{width:100%!important;height:auto!important;position:fixed;bottom:0;top:auto;left:0;flex-direction:row;padding:0;z-index:9999;background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 -4px 20px #0000001a;justify-content:space-between}.sidebar-header,.sidebar-footer .user-profile,.sidebar-footer .profile-btn,.sidebar-footer .logout-btn{display:none!important}.sidebar-footer{display:none}.sidebar-nav{display:flex;flex-direction:row;justify-content:space-around;padding:.5rem;gap:0;width:100%;overflow-x:hidden}.nav-item{flex-direction:column;padding:.5rem;gap:.2rem;border-radius:8px;margin:0;width:auto;font-size:.7rem;justify-content:center;text-align:center;flex:1}.nav-icon{font-size:1.4rem;margin:0}.main-content{margin-left:0!important;padding:1rem;padding-bottom:90px;width:100%}.stats-grid{grid-template-columns:1fr;gap:1rem}.stat-card{padding:1rem}.dashboard-grid{grid-template-columns:1fr;gap:1.5rem}.session-card-detailed{display:grid;grid-template-columns:60px 1fr;grid-template-rows:auto auto;padding:.8rem!important;gap:.5rem;align-items:start;position:relative}.session-card-left{grid-column:1;grid-row:1;width:50px;margin:0}.session-date-box{width:50px;height:50px}.date-day{font-size:1.2rem}.date-month{font-size:.7rem}.session-card-middle{grid-column:2;grid-row:1;width:100%;min-width:0;padding-right:60px}.session-main-info h3{font-size:1rem;margin-bottom:.1rem}.session-tutor-info{font-size:.8rem;margin-bottom:.3rem}.session-rating{display:none!important}.session-card-right{grid-column:1 / span 2;grid-row:2;margin-top:.4rem;padding-top:.4rem;border-top:1px solid var(--gray-100);width:100%;position:static;display:block;border:none;min-height:auto}.status-badge{position:absolute;top:.8rem;right:.8rem;margin:0;padding:.2rem .5rem;font-size:.7rem;z-index:2}.session-actions{display:flex;flex-direction:row;width:100%;gap:.5rem;position:static}.action-btn{flex:1;padding:.5rem;font-size:.8rem}.session-meta{flex-direction:row;flex-wrap:wrap;gap:.8rem;margin-top:.4rem}.meta-item{font-size:.75rem}.tutors-grid{grid-template-columns:1fr;gap:1rem}.tutor-card{display:grid;grid-template-columns:80px 1fr;grid-template-rows:auto auto;padding:0!important;gap:0}.tutor-card-header{grid-column:1;grid-row:1 / span 2;background:linear-gradient(135deg,var(--primary-orange),var(--primary-purple));padding:1rem .5rem;min-height:auto;display:flex;flex-direction:column;align-items:center;justify-content:center}.tutor-avatar-large{width:50px!important;height:50px!important;font-size:1.5rem!important;margin:0 0 .5rem!important;border-width:2px}.tutor-rating{font-size:.7rem;flex-direction:column;gap:0}.rating-count{display:none}.tutor-card-body{grid-column:2;grid-row:1;padding:.8rem!important;display:flex;flex-direction:column;justify-content:center}.tutor-name{font-size:1rem!important;margin-bottom:.2rem}.tutor-subject{font-size:.8rem;margin-bottom:.2rem}.tutor-expertise{display:none}.tutor-experience,.tutor-availability{font-size:.75rem;margin-bottom:.2rem}.tutor-card-footer{grid-column:2;grid-row:2;padding:0 .8rem .8rem!important;border-top:none;flex-direction:row;justify-content:space-between;align-items:center;gap:.5rem}.tutor-price{width:auto;justify-content:flex-start}.price-amount{font-size:1.1rem}.book-btn{width:auto;padding:.4rem 1rem;font-size:.8rem}.sessions-tabs,.schedule-tabs{flex-wrap:wrap}.sessions-tab-btn,.schedule-tab-btn{flex:1;text-align:center;padding:.5rem;font-size:.85rem}.page-header h1{font-size:1.5rem;margin-bottom:.3rem}.tutor-card-header{min-height:auto;padding:1rem}.tutor-avatar-large{width:60px;height:60px;font-size:2rem;border-width:2px}.tutor-card-body{padding:1rem}.tutor-name{font-size:1.1rem}.session-card-detailed{padding:.8rem;gap:.8rem}.session-date-box{width:60px;height:60px}.date-day{font-size:1.4rem}.date-month{font-size:.75rem}.dashboard-card{padding:1rem}.session-item{padding:.8rem;gap:.8rem}.session-avatar{width:40px;height:40px;font-size:1.4rem}.search-box{padding:.8rem}.filter-chip{padding:.3rem .8rem;font-size:.8rem}}.payment-gateway{display:flex;flex-direction:column;gap:1.5rem;animation:fadeIn .3s ease-out}.payment-summary{background:#fff8f5;border:1px solid #ffd8c7;padding:1rem;border-radius:12px}.summary-row{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.9rem;color:var(--text-light)}.summary-total{display:flex;justify-content:space-between;margin-top:.8rem;padding-top:.8rem;border-top:1px dashed #ffd8c7;font-weight:800;font-size:1.1rem;color:var(--primary-orange)}.card-input-mock{border:1px solid #e2e8f0;border-radius:12px;padding:1.2rem;background:#f8fafc}.card-input-mock label{display:block;font-size:.75rem;color:#64748b;margin-bottom:.4rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.card-field{display:flex;align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:.6rem;margin-bottom:1rem}.card-icon{margin-right:.5rem;font-size:1.2rem}.card-brand{font-weight:700;color:#1a365d;font-size:.9rem}.card-field input{flex:1;border:none;outline:none;font-family:monospace;font-size:1rem;color:#334155;background:transparent}.card-row{display:flex;gap:1rem}.card-col{flex:1}.card-col input{width:100%;padding:.6rem;border:1px solid #cbd5e1;border-radius:8px;font-family:monospace;font-size:1rem;color:#334155;background:#fff}.secure-badge{text-align:center;font-size:.8rem;color:#4caf50;margin-top:.5rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:.4rem}.pay-btn{background:#10b981}.pay-btn:hover{background:#059669}.payment-processing,.payment-success{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;text-align:center;animation:fadeIn .3s ease-out}.payment-processing .spinner.large{width:50px;height:50px;border-width:4px;border-color:#4a90e233;border-top-color:var(--primary-blue);margin-bottom:1.5rem}.payment-success .success-icon{font-size:4rem;margin-bottom:1rem;animation:bounce .6s cubic-bezier(.175,.885,.32,1.275)}.payment-success h3{color:var(--text-dark);font-size:1.5rem;margin-bottom:.5rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-20px)}60%{transform:translateY(-10px)}}.reschedule-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000}.reschedule-dialog{background:#fff;border-radius:16px;padding:32px;max-width:500px;width:90%;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}.reschedule-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.reschedule-header h2{margin:0;color:#333;font-size:24px}.close-btn{background:none;border:none;font-size:32px;color:#666;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s}.close-btn:hover{background:#f0f0f0}.reschedule-form{display:flex;flex-direction:column;gap:20px}.form-group input{padding:12px;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;font-family:inherit;transition:border-color .2s}.form-group input:focus{outline:none;border-color:#9c27b0}.error-message{color:#d32f2f;font-size:14px;padding:8px;background:#ffebee;border-radius:4px}.reschedule-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:8px}.btn-secondary:hover{background:#e0e0e0}.btn-primary:hover{background:#7b1fa2}.profile-edit{background:#fff;border-radius:12px;padding:32px;box-shadow:0 2px 8px #0000001a}.profile-edit h2{margin:0 0 24px;color:#333;font-size:24px}.profile-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:600;color:#333;font-size:14px}.form-group input,.form-group textarea{padding:12px;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;font-family:inherit;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#9c27b0}.error-message{color:#d32f2f;font-size:14px;padding:12px;background:#ffebee;border-radius:8px}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:8px}.avatar-upload-section{display:flex;gap:16px;align-items:flex-start}.avatar-preview{width:100px;height:100px;border-radius:50%;overflow:hidden;border:2px solid #e0e0e0;display:flex;align-items:center;justify-content:center;background:#f5f5f5;flex-shrink:0}.avatar-preview-img{width:100%;height:100%;object-fit:cover}.avatar-placeholder{font-size:48px;color:#999}.avatar-upload-controls{flex:1;display:flex;flex-direction:column;gap:8px}.upload-btn{padding:10px 20px;background:#9c27b0;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;text-align:center;transition:background .2s}.upload-btn:hover:not(:disabled){background:#7b1fa2}.upload-btn:disabled{opacity:.6;cursor:not-allowed}.avatar-url-input{padding:10px;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;font-family:inherit;transition:border-color .2s}.avatar-url-input:focus{outline:none;border-color:#9c27b0}.messaging-container{display:flex;height:100vh;background:#fff;overflow:hidden;font-family:Inter,sans-serif;width:100%}.conversations-list{width:320px;border-right:1px solid #eee;display:flex;flex-direction:column;background:#fdfdfd}.conversations-list h3{padding:16px 20px;margin:0;border-bottom:1px solid #eee;background:#fff;font-size:16px;font-weight:600;color:#1a1a1a}.conversations-scroll{flex:1;overflow-y:auto}.empty-state{padding:40px 20px;text-align:center;color:#666}.conversation-item{display:flex;align-items:center;gap:12px;padding:14px 20px;cursor:pointer;border-bottom:1px solid #f5f5f5;transition:all .2s}.conversation-item:hover{background:#f7f9fc}.conversation-item.active{background:#ebf5ff;border-left:3px solid #007bff}.conversation-avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-size:20px;color:#fff;overflow:hidden;flex-shrink:0}.conversation-avatar img{width:100%;height:100%;object-fit:cover}.conversation-info{flex:1;min-width:0}.conversation-name{font-weight:600;color:#333;margin-bottom:4px;font-size:15px}.conversation-preview{font-size:13px;color:#666;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.unread-badge{background:#007bff;color:#fff;border-radius:12px;padding:2px 6px;font-size:11px;font-weight:700;min-width:20px;text-align:center}.chat-area{flex:1;display:flex;flex-direction:column;background:#fff}.chat-header{height:64px;display:flex;align-items:center;padding:0 20px;border-bottom:1px solid #eee;background:#fff;gap:12px}.back-button{display:none;background:none;border:none;color:#333;cursor:pointer;padding:8px;margin-left:-8px}.chat-header-avatar{width:36px;height:36px;border-radius:50%;background:#ddd;overflow:hidden;display:flex;align-items:center;justify-content:center;color:#666}.chat-header-avatar img{width:100%;height:100%;object-fit:cover}.chat-header-info{flex:1}.chat-header-name{font-weight:600;font-size:16px;color:#111}.chat-header-status{font-size:12px;color:#888}.chat-header-status.online{color:#4caf50}.chat-header-actions .icon-btn{background:none;border:none;color:#666;padding:8px;cursor:pointer;border-radius:8px;transition:background .2s}.chat-header-actions .icon-btn:hover{background:#f5f5f5;color:#333}.chat-header-actions .icon-btn.danger:hover{background:#fff0f0;color:#d32f2f}.messages-list{flex:1;overflow-y:auto;padding:20px;background:#f8f9fa;display:flex;flex-direction:column;gap:8px}.message{display:flex;margin-bottom:12px}.message.own{justify-content:flex-end}.message.other{justify-content:flex-start}.message.system{opacity:.8}.message-content-wrapper{display:flex;align-items:center;gap:8px;max-width:70%}.message.own .message-content-wrapper{flex-direction:row-reverse}.message-content{padding:10px 14px;border-radius:12px;background:#fff;box-shadow:0 1px 2px #0000000d;position:relative;min-width:80px}.message.own .message-content{background:#667eea;color:#fff;border-bottom-right-radius:2px}.message.other .message-content{background:#fff;border:1px solid #eee;border-bottom-left-radius:2px}.message.system .message-content{background:#f1f1f1;box-shadow:none;font-style:italic;font-size:13px;color:#666;border:1px solid #e0e0e0;padding:8px 12px}.message-text{font-size:14px;line-height:1.5;word-wrap:break-word}.edited-tag{font-size:10px;opacity:.7;margin-left:6px}.message-time{font-size:10px;margin-top:4px;text-align:right;opacity:.7}.message-actions{opacity:0;transition:opacity .2s;position:relative}.message-content-wrapper:hover .message-actions{opacity:1}.menu-trigger{background:none;border:none;cursor:pointer;color:#999;padding:4px;border-radius:50%}.menu-trigger:hover{background:#0000000d;color:#333}.actions-popup{position:absolute;top:100%;left:50%;transform:translate(-50%);background:#fff;border-radius:12px;box-shadow:0 8px 30px #0000001f;border:1px solid rgba(0,0,0,.04);padding:6px;z-index:100;min-width:180px;display:flex;flex-direction:column;gap:2px;animation:scaleIn .15s ease-out;transform-origin:top center}@keyframes scaleIn{0%{opacity:0;transform:translate(-50%) scale(.9)}to{opacity:1;transform:translate(-50%) scale(1)}}.actions-popup.popup-up{top:auto;bottom:100%;transform-origin:bottom center;margin-bottom:4px}.actions-popup button{background:none;border:none;text-align:left;padding:10px 12px;font-size:13px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:10px;color:#444;width:100%;border-radius:8px;transition:all .2s;white-space:nowrap}.actions-popup button:hover{background:#f3f4f6;color:#111}.actions-popup button.delete-action{color:#d32f2f}.actions-popup button.delete-action:hover{background:#fff0f0;color:#b71c1c}.edit-form{display:flex;align-items:center;gap:8px;width:100%}.edit-form input{flex:1;border:none;border-bottom:1px solid rgba(255,255,255,.3);background:transparent;color:inherit;font-size:14px;outline:none;padding-bottom:2px}.message.other .edit-form input{border-bottom:1px solid #ddd}.edit-actions{display:flex;gap:4px}.edit-actions button{background:#fff3;border:none;color:inherit;border-radius:4px;cursor:pointer;padding:2px}.message.other .edit-actions button{background:#eee;color:#333}.message-input-form{padding:16px 20px;border-top:1px solid #eee;display:flex;gap:12px;background:#fff;z-index:10;position:relative}.message-input{flex:1;border:1px solid #eee;background:#f9f9f9;border-radius:20px;padding:10px 16px;font-size:14px;outline:none;transition:all .2s}.message-input:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.send-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:20px;padding:0 24px;font-weight:600;font-size:14px;cursor:pointer;transition:opacity .2s}.send-button:disabled{opacity:.5;cursor:not-allowed}.confirm-modal-content{background:#fff;padding:24px;border-radius:12px;width:90%;max-width:400px;box-shadow:0 4px 20px #0003;display:flex;flex-direction:column;gap:16px;animation:modalFadeIn .2s ease-out}.confirm-modal-content h3{margin:0;font-size:1.25rem;color:#1a1a1a}.confirm-modal-content p{margin:0;color:#666;line-height:1.5}.confirm-modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:8px}.modal-btn{padding:10px 20px;border-radius:8px;font-weight:500;cursor:pointer;border:none;transition:all .2s}.modal-btn.secondary{background:#f5f5f5;color:#666}.modal-btn.secondary:hover{background:#eee}.modal-btn.danger{background:#ffebee;color:#d32f2f}.modal-btn.danger:hover{background:#ffcdd2}.modal-btn.primary{background:#e3f2fd;color:#1976d2}.modal-btn.primary:hover{background:#bbdefb}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.no-conversation-selected{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#999}.no-conversation-selected .no-conversation-icon{font-size:48px;margin-bottom:12px;opacity:.3}@media(max-width:768px){.messages-list{padding-bottom:20px}.messaging-container{height:100dvh;border-radius:0;margin:0}.conversations-list.mobile-hidden,.chat-area.mobile-hidden{display:none}.conversations-list{width:100%;border-right:none}.chat-area{width:100%;padding-bottom:80px}.back-button{display:block}.message-content{max-width:100%}}.conversation-preview .no-messages{color:#aaa;font-style:italic;font-size:13px}@media(max-width:768px){.actions-popup{position:fixed;inset:auto 0 0;width:100%;min-width:0;transform:none;border-radius:20px 20px 0 0;box-shadow:0 -4px 30px #00000026;padding:20px;padding-bottom:max(20px,env(safe-area-inset-bottom));animation:slideUp .25s cubic-bezier(.16,1,.3,1);z-index:1000}.actions-popup button{padding:16px;font-size:16px;border-bottom:1px solid #f0f0f0}.actions-popup button:last-child{border-bottom:none}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}}*{margin:0;padding:0;box-sizing:border-box}:root{--primary-orange: #FF6B35;--primary-blue: #4A90E2;--primary-purple: #9C27B0;--accent-yellow: #FFC107;--accent-green: #4CAF50;--dark: #1a1a2e;--light: #ffffff;--gray-50: #fafafa;--gray-100: #f5f5f5;--gray-200: #e5e5e5;--gray-300: #d4d4d4;--gray-400: #a3a3a3;--gray-500: #737373;--text-dark: #2d3748;--text-light: #718096;--sidebar-width: 280px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#9c27b04d;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#9c27b080}.sidebar-nav::-webkit-scrollbar{width:4px}.sidebar-nav::-webkit-scrollbar-thumb{background:#fff3}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#fff6}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--gray-50);color:var(--text-dark)}.tutor-dashboard{display:flex;min-height:100vh;background:var(--gray-50)}.sidebar{width:var(--sidebar-width);background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;flex-direction:column;position:fixed;height:100vh;left:0;top:0;box-shadow:2px 0 20px #0000001a;z-index:100}.sidebar-header{padding:2rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.logo-container{display:flex;align-items:center;gap:.8rem}.logo-icon{font-size:2rem}.logo-text{font-size:1.5rem;font-weight:900}.sidebar-nav{flex:1;padding:1.5rem 1rem;overflow-y:auto}.sessions-list{display:flex;flex-direction:column;gap:1.5rem}.session-card-simple{display:flex;align-items:center;background:#fff;border-radius:16px;padding:1.5rem;gap:1.5rem;box-shadow:0 4px 20px #00000008;border:1px solid rgba(0,0,0,.04);transition:all .3s cubic-bezier(.16,1,.3,1)}.session-card-simple:hover{transform:translateY(-4px);box-shadow:0 12px 30px #00000014;border-color:#00000014}.simple-card-left{flex-shrink:0}.simple-date-box{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:14px;width:70px;height:70px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#2d3748;border:1px solid #dee2e6}.simple-date-box .day{font-size:1.6rem;font-weight:800;line-height:1;color:#667eea}.simple-date-box .month{font-size:.75rem;font-weight:700;margin-top:4px;color:#718096}.simple-card-middle{flex:1;display:flex;flex-direction:column;gap:.5rem}.simple-header{display:flex;align-items:center;gap:1rem}.simple-subject{font-size:1.2rem;font-weight:700;color:#1a202c;margin:0}.simple-status{font-size:.75rem;font-weight:700;padding:4px 10px;border-radius:20px;text-transform:uppercase;letter-spacing:.5px}.simple-status.confirmed{background:#e6fffa;color:#2c7a7b}.simple-status.pending{background:#fffaf0;color:#dd6b20}.simple-status.cancelled{background:#fff5f5;color:#c53030}.simple-meta-row{display:flex;align-items:center;flex-wrap:wrap;gap:1rem;font-size:.95rem;color:#4a5568}.simple-meta{display:flex;align-items:center;gap:.5rem}.tutor-avatar-micro{width:24px;height:24px;border-radius:50%;overflow:hidden;background:#cbd5e0;display:flex;align-items:center;justify-content:center}.tutor-avatar-micro img{width:100%;height:100%;object-fit:cover}.simple-dot{color:#cbd5e0;font-size:.5rem}.session-feedback{margin-top:.6rem;padding:.25rem .75rem;background:#fff9c4;border-radius:20px;display:inline-flex;flex-direction:row;align-items:center;gap:.8rem;width:fit-content;max-width:100%}.feedback-rating{display:flex!important;flex-direction:row!important;align-items:center;gap:0;flex-shrink:0}.feedback-rating svg{display:inline-block;min-width:12px;min-height:12px}.rating-val{display:none}.feedback-comment{font-size:.8rem;color:#8d6e63;line-height:normal;font-weight:500;font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;padding-left:0}.feedback-comment:before{display:none}.simple-actions{display:flex;align-items:center;gap:12px}.btn-simple{height:42px;border-radius:12px;border:none;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;padding:0 1rem}.btn-simple.secondary{width:42px;padding:0;background:#f7fafc;color:#4a5568;border:1px solid #edf2f7}.btn-simple.secondary:hover{background:#edf2f7;color:#2d3748;border-color:#cbd5e0}.btn-simple.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:0 1.5rem;box-shadow:0 4px 12px #764ba24d}.btn-simple.primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #764ba266}.btn-simple.success{width:42px;padding:0;background:#c6f6d5!important;color:#2f855a!important}.btn-simple.success:hover{transform:translateY(-2px);background:#9ae6b4!important;box-shadow:0 4px 12px #48bb784d}.btn-simple.danger{width:42px;padding:0;background:#fff5f5;color:#e53e3e}.btn-simple.danger:hover{background:#fed7d7;color:#c53030}@media(max-width:768px){.session-card-simple{flex-direction:column;align-items:flex-start}.simple-actions{width:100%;justify-content:flex-end;margin-top:1rem;border-top:1px solid #eee;padding-top:1rem}}.nav-item:hover{background:#ffffff1a;color:#fff}.nav-item.active{background:#fff3;color:#fff;box-shadow:0 4px 15px #0000001a}.nav-icon{font-size:1.3rem}.badge{margin-left:auto;background:var(--primary-orange);color:#fff;padding:.2rem .6rem;border-radius:10px;font-size:.75rem;font-weight:700}.sidebar-footer{padding:1rem;border-top:1px solid rgba(255,255,255,.1)}.user-profile{display:flex;align-items:center;gap:1rem;padding:1rem;background:#ffffff1a;border-radius:12px;margin-bottom:1rem}.user-avatar{width:50px;height:50px;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.8rem}.user-info{flex:1;overflow:hidden}.user-name{font-weight:700;font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-email{font-size:.8rem;opacity:.8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logout-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.8rem;padding:.9rem;background:#ff6b3533;border:1px solid rgba(255,107,53,.3);color:#fff;font-weight:600;border-radius:12px;cursor:pointer;transition:all .3s ease}.logout-btn:hover{background:#ff6b354d}.main-content{flex:1;margin-left:var(--sidebar-width);padding:2rem;overflow-y:auto}.main-content.no-padding{padding:0;overflow-y:hidden;display:flex;flex-direction:column}.page-header{margin-bottom:2rem}.page-header h1{font-size:2rem;font-weight:900;color:var(--text-dark);margin-bottom:.5rem}.page-header p{font-size:1rem;color:var(--text-light)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fff;padding:1.5rem;border-radius:16px;display:flex;align-items:center;gap:1.5rem;box-shadow:0 4px 15px #0000000d;transition:all .3s ease;border-left:4px solid}.stat-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #0000001a}.stat-card.orange{border-left-color:var(--primary-orange)}.stat-card.blue{border-left-color:var(--primary-blue)}.stat-card.purple{border-left-color:var(--primary-purple)}.stat-card.green{border-left-color:var(--accent-green)}.stat-icon{width:60px;height:60px;background:linear-gradient(135deg,var(--primary-orange),var(--primary-purple));border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:2rem;box-shadow:0 5px 15px #ff6b354d}.stat-info{flex:1}.stat-value{font-size:2rem;font-weight:900;color:var(--text-dark);line-height:1;margin-bottom:.3rem}.stat-label{font-size:.9rem;color:var(--text-light);font-weight:600}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem}.dashboard-card{background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 4px 15px #0000000d}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.card-header h3{font-size:1.3rem;font-weight:700;color:var(--text-dark)}.view-all-btn{background:none;border:none;color:var(--primary-orange);font-weight:600;cursor:pointer;font-size:.9rem}.view-all-btn:hover{text-decoration:underline}.sessions-list{display:flex;flex-direction:column;gap:1rem}.session-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--gray-50);border-radius:12px;transition:all .3s ease}.session-item:hover{background:var(--gray-100);transform:translate(5px)}.session-avatar{width:50px;height:50px;background:linear-gradient(135deg,var(--primary-orange),var(--primary-purple));border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.8rem;flex-shrink:0}.session-details{flex:1}.session-tutor{font-weight:700;color:var(--text-dark);margin-bottom:.2rem}.session-subject{font-size:.85rem;color:var(--text-light)}.session-time{text-align:right}.session-date{font-size:.85rem;font-weight:600;color:var(--text-dark)}.session-hour{font-size:.8rem;color:var(--text-light)}.session-status{padding:.4rem .8rem;border-radius:20px;font-size:.75rem;font-weight:700;text-transform:uppercase}.session-status.confirmed{background:#4caf501a;color:var(--accent-green)}.session-status.pending{background:#ffc1071a;color:var(--accent-yellow)}.activity-list{display:flex;flex-direction:column;gap:1rem}.activity-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--gray-50);border-radius:12px}.activity-icon{width:40px;height:40px;background:linear-gradient(135deg,var(--primary-orange),var(--primary-purple));border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.3rem;flex-shrink:0}.activity-icon.completed{background:linear-gradient(135deg,#4caf50,#8bc34a);box-shadow:0 4px 10px #4caf504d}.activity-icon.confirmed,.activity-icon.upcoming{background:linear-gradient(135deg,#4a90e2,#00bcd4);box-shadow:0 4px 10px #4a90e24d}.activity-icon.pending{background:linear-gradient(135deg,#ffc107,#ff9800);box-shadow:0 4px 10px #ffc1074d}.activity-icon.cancelled{background:linear-gradient(135deg,#f44336,#e91e63);box-shadow:0 4px 10px #f443364d}.activity-details{flex:1}.activity-message{font-weight:600;color:var(--text-dark);margin-bottom:.2rem}.activity-time{font-size:.8rem;color:var(--text-light)}.search-filter-bar{background:#fff;padding:1.5rem;border-radius:16px;box-shadow:0 4px 15px #0000000d;margin-bottom:2rem}.search-box{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--gray-50);border-radius:12px;margin-bottom:1rem}.search-icon{font-size:1.3rem}.search-box input{flex:1;border:none;background:transparent;font-size:1rem;outline:none}.filter-chip{padding:.5rem 1.2rem;background:#fff;border:1px solid var(--gray-200);border-radius:20px;color:var(--text-light);font-weight:500;cursor:pointer;transition:all .2s ease;font-size:.9rem}.filter-chip:hover{background:var(--gray-50);border-color:var(--primary-purple);color:var(--primary-purple)}.filter-chip.active{background:var(--primary-purple);color:#fff;border-color:var(--primary-purple);box-shadow:0 4px 10px #9c27b033}.students-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.student-card{background:#fff;border-radius:16px;box-shadow:0 4px 15px #0000000d;transition:all .3s ease;overflow:hidden}.student-card:hover{transform:translateY(-8px);box-shadow:0 12px 30px #0000001f}.student-card-header{background:linear-gradient(135deg,var(--primary-orange),var(--primary-purple));padding:1.5rem 1rem 1rem;text-align:center;position:relative;min-height:120px}.student-avatar-large{width:70px;height:70px;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2.5rem;margin:0 auto .5rem;box-shadow:0 5px 20px #0003;border:3px solid rgba(255,255,255,.3)}.student-rating{display:flex;align-items:center;justify-content:center;gap:.3rem;color:#fff;font-weight:700}.star,.rating-value{font-size:1.1rem}.student-card-body{padding:1.5rem}.student-name{font-size:1.3rem;font-weight:700;color:var(--text-dark);margin-bottom:.3rem}.student-card-header .student-name{color:#fff;margin-bottom:.5rem}.student-card-header .student-subject{color:#ffffffe6;font-weight:600;margin-bottom:0}.student-sessions,.student-progress,.student-last-session{display:flex;align-items:center;gap:.5rem;color:var(--text-light);font-size:.9rem;margin-bottom:.5rem}.student-card-footer{display:flex;justify-content:center;padding:1rem 1.5rem;border-top:1px solid var(--gray-100)}.session-btn{padding:.8rem 1.5rem;background:linear-gradient(135deg,var(--primary-orange),var(--primary-purple));color:#fff;border:none;border-radius:25px;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #ff6b354d}.session-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ff6b3566}.schedule-tabs{display:flex;gap:1rem;margin-bottom:2rem}.schedule-tab-btn{padding:.6rem 1.5rem;background:#fff;border:1px solid var(--gray-200);border-radius:20px;font-weight:600;color:var(--text-light);cursor:pointer;transition:all .2s ease}.schedule-tab-btn:hover{border-color:var(--primary-orange);color:var(--primary-orange);background:var(--gray-50)}.schedule-tab-btn.active{background:var(--primary-orange);color:#fff;border-color:var(--primary-orange);box-shadow:0 4px 10px #ff6b3533}.sessions-list-detailed{display:flex;flex-direction:column;gap:1.5rem}.session-card-detailed{background:#fff;border-radius:16px;padding:1.5rem;display:flex;gap:1.5rem;box-shadow:0 4px 15px #0000000d;transition:all .3s ease}.session-card-detailed:hover{box-shadow:0 8px 25px #0000001a}.session-card-left{flex-shrink:0}.session-date-box{width:80px;height:80px;background:linear-gradient(135deg,var(--primary-orange),var(--primary-purple));border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff}.date-day{font-size:2rem;font-weight:900;line-height:1}.date-month{font-size:.9rem;font-weight:600}.session-card-middle{flex:1}.session-main-info h3{font-size:1.3rem;font-weight:700;color:var(--text-dark);margin-bottom:.5rem}.session-tutor-info{display:flex;align-items:center;gap:.5rem;color:var(--text-light);margin-bottom:1rem}.tutor-avatar-small{width:40px;height:40px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1.5rem;background:var(--gray-200)}.session-meta{display:flex;gap:1.5rem}.meta-item{display:flex;align-items:center;gap:.5rem;color:var(--text-light);font-size:.9rem}.meta-icon{font-size:1.1rem}.session-card-right{display:flex;flex-direction:column;align-items:flex-end;gap:1rem}.status-badge{padding:.5rem 1rem;border-radius:20px;font-size:.8rem;font-weight:700;text-transform:uppercase}.status-badge.confirmed{background:#4caf501a;color:var(--accent-green)}.status-badge.pending{background:#ffc1071a;color:var(--accent-yellow)}.session-center-info{display:flex;align-items:center;gap:1.5rem;margin-right:1.5rem}.session-time-block{text-align:right}.session-actions{display:flex;align-items:center;gap:.5rem}.action-btn{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:none;cursor:pointer;background:var(--gray-100);color:var(--text-dark);transition:all .2s;padding:0}.action-btn:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.action-btn.primary{background:var(--primary-purple);color:#fff}.action-btn.secondary{background:var(--gray-100);color:var(--text-dark)}.action-btn.danger{background:#fff0f0;color:#f44336}.earnings-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-bottom:2rem}.total-earnings-card,.earnings-history-card{background:#fff;border-radius:16px;padding:2rem;box-shadow:0 4px 15px #0000000d}.total-earnings-card h3,.earnings-history-card h3{font-size:1.3rem;font-weight:700;color:var(--text-dark);margin-bottom:1.5rem}.earnings-amount{font-size:3rem;font-weight:900;color:var(--primary-orange);text-align:center;margin-bottom:1.5rem}.earnings-stats{display:flex;justify-content:space-around}.earnings-stat{text-align:center}.earnings-stat .stat-label{font-size:.9rem;color:var(--text-light);margin-bottom:.3rem}.earnings-stat .stat-value{font-size:1.5rem;font-weight:700;color:var(--text-dark)}.earnings-table{overflow-x:auto}.earnings-table table{width:100%;border-collapse:collapse}.earnings-table th,.earnings-table td{padding:1rem;text-align:left;border-bottom:1px solid var(--gray-200)}.earnings-table th{font-weight:600;color:var(--text-dark)}.earnings-table .status-paid{color:var(--accent-green);font-weight:600}.coming-soon{display:flex;flex-direction:column;align-items:center;justify-content:center;height:400px;background:#fff;border-radius:16px;box-shadow:0 4px 15px #0000000d;text-align:center;padding:2rem}.coming-soon-icon{font-size:4rem;margin-bottom:1.5rem}.coming-soon h2{font-size:1.8rem;font-weight:700;color:var(--text-dark);margin-bottom:1rem}.coming-soon p{font-size:1rem;color:var(--text-light);max-width:300px}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:#fff;border-radius:16px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;position:relative;animation:modalSlideIn .3s ease}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-50px)}to{opacity:1;transform:translateY(0)}}.modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:2rem;cursor:pointer;color:var(--gray-400);width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease}.modal-close:hover{background:var(--gray-100);color:var(--text-dark)}.modal-header{display:flex;align-items:center;gap:1rem;padding:2rem 2rem 1.5rem;border-bottom:1px solid var(--gray-100)}.modal-student-avatar{width:60px;height:60px;background:linear-gradient(135deg,var(--primary-orange),var(--primary-purple));border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;flex-shrink:0}.modal-header h2{font-size:1.5rem;font-weight:700;color:var(--text-dark);margin-bottom:.2rem}.modal-subject{color:var(--primary-orange);font-weight:600;font-size:1rem}.modal-body{padding:0 2rem 1.5rem}.session-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:600;color:var(--text-dark);font-size:.95rem}.form-input{padding:1rem;border:2px solid var(--gray-200);border-radius:12px;font-size:1rem;transition:all .3s ease;background:#fff}.form-input:focus{outline:none;border-color:var(--primary-orange);box-shadow:0 0 0 3px #ff6b351a}.modal-footer{display:flex;gap:1rem;padding:1.5rem 2rem;border-top:1px solid var(--gray-100);justify-content:flex-end}.modal-btn{padding:.8rem 1.5rem;border:none;border-radius:25px;font-weight:700;cursor:pointer;transition:all .3s ease;font-size:.95rem}.modal-btn.secondary{background:var(--gray-100);color:var(--text-dark)}.modal-btn.primary{background:linear-gradient(135deg,var(--primary-orange),var(--primary-purple));color:#fff;box-shadow:0 4px 15px #ff6b354d}.modal-btn:hover{transform:translateY(-2px)}.modal-btn.primary:hover{box-shadow:0 6px 20px #ff6b3566}@media(max-width:768px){.sidebar{transform:translate(-100%);transition:transform .3s ease}.sidebar.open{transform:translate(0)}.main-content{margin-left:0}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.dashboard-grid,.students-grid{grid-template-columns:1fr}.session-card-detailed{flex-direction:column;align-items:stretch}.session-card-right{align-items:stretch;flex-direction:row;justify-content:flex-end}.session-actions{flex-direction:row;gap:.5rem}.earnings-overview{grid-template-columns:1fr}.earnings-stats{flex-direction:column;gap:1rem}.modal-content{width:95%;margin:1rem}.modal-header{flex-direction:column;text-align:center;padding:1.5rem}.modal-footer,.schedule-tabs{flex-direction:column}}@media(max-width:480px){.main-content{padding:1rem}.page-header h1{font-size:1.5rem}.stat-card{flex-direction:column;text-align:center;padding:1rem}.stat-icon{width:50px;height:50px;font-size:1.5rem}.session-actions{flex-direction:column}.filter-chips{justify-content:center}.earnings-table{font-size:.9rem}.earnings-table th,.earnings-table td{padding:.5rem}}.student-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin-bottom:1.5rem;background:var(--gray-50);padding:1rem;border-radius:12px}.student-stat-item{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.student-stat-item.profit .stat-value{color:var(--accent-green);font-size:1.2rem}.stat-value.highlight{font-weight:800}.student-card-footer.two-buttons{display:flex;gap:1rem;padding:1rem 1.5rem}.student-card-footer.two-buttons button{flex:1}.student-profile-info{display:flex;flex-direction:column;align-items:center}.tutor-mobile-nav{display:none;position:fixed;bottom:0;left:0;right:0;background:#fff;box-shadow:0 -4px 20px #0000001a;padding:.8rem;justify-content:space-around;align-items:center;z-index:1000;padding-bottom:max(.8rem,env(safe-area-inset-bottom))}.tutor-mobile-nav{overflow-x:auto;gap:.5rem}@media(max-width:768px){.tutor-dashboard{flex-direction:column}.sidebar{display:none!important}.tutor-mobile-nav{display:flex;padding:.5rem;gap:.2rem}.mobile-nav-item{padding:.3rem;font-size:.7rem}.mobile-nav-icon{font-size:1.2rem}.main-content{margin-left:0!important;padding:1rem;padding-bottom:80px;width:100%}.stats-grid,.student-stats-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem}.dashboard-grid,.students-grid,.earnings-overview{grid-template-columns:1fr;gap:1.5rem}.student-stats-grid{grid-template-columns:repeat(3,1fr);gap:.2rem}.earnings-table{display:block;overflow-x:auto;white-space:nowrap}.student-card-footer.two-buttons{flex-direction:column;gap:.5rem}.search-box{flex-direction:row}.modal-content{width:95%;margin:1rem}.modal-header{flex-direction:column;text-align:center}.modal-footer{flex-direction:column}.schedule-tabs{flex-wrap:wrap}.schedule-tab-btn{flex:1;text-align:center}}.header-actions{display:flex;justify-content:space-between;align-items:flex-end}.header-actions .btn-primary{padding:.6rem 1.2rem;background:var(--accent-green);border:none;border-radius:8px;color:#fff;font-weight:600;cursor:pointer;transition:all .2s}.header-actions .btn-primary:disabled{background:var(--gray-300);cursor:not-allowed}.header-actions .btn-primary:not(:disabled):hover{background:#43a047;transform:translateY(-2px)}.withdrawal-modal{width:90%;max-width:450px}.withdrawal-step{display:flex;flex-direction:column;gap:1.5rem}.balance-info{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#f0fdf4;border:1px solid #c6f6d5;border-radius:10px}.balance-info span{font-weight:600;color:#2f855a}.balance-info .amount{font-size:1.2rem;font-weight:800}.amount-input-wrapper{position:relative;display:flex;align-items:center}.currency-prefix{position:absolute;left:1rem;font-size:1.2rem;color:var(--text-light)}.amount-input-wrapper .form-input{padding-left:2rem;font-size:1.5rem;font-weight:700}.gateway-note{text-align:center;font-size:.8rem;color:var(--text-light);margin-top:.5rem}.withdrawal-processing,.withdrawal-success{display:flex;flex-direction:column;align-items:center;text-align:center;padding:2rem 0;gap:1rem}.sub-text{font-size:.85rem;color:var(--text-light)}.success-icon{font-size:3rem;background:#e6fffa;width:80px;height:80px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:#38b2ac}.spinner.large{width:50px;height:50px;border-width:4px}.full-width{width:100%}.session-item-modern{display:flex;align-items:center;background:#fff;border-radius:12px;padding:1.3rem;box-shadow:0 2px 8px #0000000d;margin-bottom:1rem;gap:1.5rem;border:1px solid var(--gray-100);transition:all .2s ease}.session-item-modern:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.session-date-box-compact{display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--gray-50);border-radius:12px;padding:.6rem .9rem;min-width:65px;border:1px solid var(--gray-200)}.date-day{font-size:1.35rem;font-weight:800;color:var(--primary-purple);line-height:1}.date-month{font-size:.75rem;font-weight:700;color:var(--text-light);margin-top:.2rem}.session-info-modern{flex:1;display:flex;flex-direction:column;justify-content:center;gap:.5rem}.session-header-modern{display:flex;align-items:center;gap:1rem}.session-header-modern h3{font-size:1.15rem;font-weight:700;color:var(--text-dark);margin:0}.status-pill{font-size:.7rem;font-weight:700;padding:.2rem .6rem;border-radius:5px}.status-pill.pending{background:#fff8e1;color:#ffa000}.status-pill.confirmed{background:#e8f5e9;color:#2e7d32}.status-pill.completed{background:#e3f2fd;color:#1565c0}.status-pill.cancelled{background:#ffebee;color:#c62828}.session-meta-modern{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.meta-avatar-small{width:24px;height:24px;border-radius:50%;overflow:hidden;background:var(--gray-200);display:flex;align-items:center;justify-content:center}.meta-avatar-small img{width:100%;height:100%;object-fit:cover}.meta-text{font-size:.95rem;color:var(--text-light);font-weight:500}.meta-icon-text{display:flex;align-items:center;gap:.2rem;font-size:.85rem;color:var(--text-light)}.meta-dot{font-size:.8rem;color:var(--gray-300)}.session-actions-modern{display:flex;align-items:center;gap:.6rem}.icon-action-btn{width:32px;height:32px;border-radius:50%;border:1px solid transparent;background:transparent;color:var(--text-light);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.icon-action-btn:hover{background:var(--gray-100);color:var(--primary-purple)}.icon-action-btn.danger:hover{background:#ffebee;color:#c62828}.icon-action-btn.success:hover{background:#e8f5e9;color:#2e7d32}.join-btn-pill{display:flex;align-items:center;gap:.4rem;background:var(--primary-purple);color:#fff;border:none;border-radius:20px;padding:.4rem 1rem;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s}.join-btn-pill:hover{background:var(--primary-purple-dark);transform:translateY(-1px);box-shadow:0 4px 10px #9c27b04d}.join-btn-pill.success{background:#4caf50}.join-btn-pill.success:hover{background:#388e3c;box-shadow:0 4px 10px #4caf504d}.search-filter-bar{background:#fff;border-radius:16px;padding:1rem;margin-bottom:2rem;box-shadow:0 4px 15px #0000000d}.search-box{display:flex;align-items:center;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:12px;padding:.8rem 1rem;margin-bottom:1rem}.search-icon{margin-right:.8rem;font-size:1.2rem}.search-box input{border:none;background:transparent;width:100%;font-size:1rem;outline:none;color:var(--text-dark)}.filter-chips{display:flex;gap:.8rem;flex-wrap:wrap}.filter-chip{padding:.5rem 1.2rem;border-radius:20px;border:1px solid var(--gray-200);background:#fff;color:var(--text-light);cursor:pointer;font-weight:500;transition:all .2s}.filter-chip:hover{background:var(--gray-50);color:var(--primary-purple);border-color:var(--primary-purple)}.filter-chip.active{background:var(--primary-purple);color:#fff;border-color:var(--primary-purple)}.student-card-compact{background:#fff;border-radius:16px;padding:1.5rem;display:flex;flex-direction:column;gap:1rem;box-shadow:0 2px 8px #0000000d;border:1px solid var(--gray-100);transition:all .3s ease}.student-card-compact:hover{transform:translateY(-5px);box-shadow:0 10px 20px #0000001a}.student-header-compact{display:flex;align-items:flex-start;gap:1rem}.student-avatar-compact-wrapper{width:50px;height:50px;border-radius:50%;background:var(--gray-200);overflow:hidden;flex-shrink:0}.student-avatar-compact-wrapper img{width:100%;height:100%;object-fit:cover}.student-info-compact{flex:1}.student-name-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.2rem}.student-name-row h3{font-size:1.1rem;font-weight:700;color:var(--text-dark);margin:0}.student-rating-pill{display:flex;align-items:center;gap:.3rem;background:#fff8e1;padding:.2rem .5rem;border-radius:6px;font-size:.8rem;font-weight:700;color:#ffa000}.student-subject-text{color:var(--primary-orange);font-weight:600;font-size:.9rem;margin-bottom:.5rem}.student-stats-row{display:flex;gap:1rem;font-size:.85rem;color:var(--text-light);align-items:center}.student-stats-row span{display:flex;align-items:center;gap:.3rem}.student-tags{display:flex;gap:.5rem;flex-wrap:wrap}.student-tag{background:var(--gray-100);padding:.3rem .8rem;border-radius:8px;font-size:.8rem;color:var(--text-light)}.student-card-footer-compact{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid var(--gray-50);margin-top:.5rem}.student-earnings{font-weight:800;font-size:1.2rem;color:var(--text-dark)}.student-earnings span{font-size:.8rem;font-weight:500;color:var(--text-light)}.feedback-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000}.feedback-modal{background:#fff;border-radius:16px;padding:32px;max-width:500px;width:90%;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.feedback-header{text-align:center;margin-bottom:24px}.feedback-header h2{margin:0 0 8px;color:#333;font-size:24px}.feedback-header p{margin:0;color:#666;font-size:14px}.feedback-form{display:flex;flex-direction:column;gap:24px}.feedback-rating{display:flex;flex-direction:column;align-items:center;gap:12px}.feedback-rating label{font-weight:600;color:#333;font-size:16px}.rating-stars{display:flex;gap:8px}.star-btn{background:none;border:none;font-size:36px;cursor:pointer;padding:0;transition:transform .2s;filter:grayscale(100%);opacity:.5}.star-btn:hover{transform:scale(1.2)}.star-btn.active{filter:grayscale(0%);opacity:1}.rating-value{font-size:18px;font-weight:600;color:#666}.feedback-comment{display:flex;flex-direction:column;gap:8px}.feedback-comment label{font-weight:600;color:#333;font-size:14px}.feedback-comment textarea{width:100%;padding:12px;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;font-family:inherit;resize:vertical;transition:border-color .2s}.feedback-comment textarea:focus{outline:none;border-color:#9c27b0}.feedback-actions{display:flex;gap:12px;justify-content:flex-end}.btn-secondary,.btn-primary{padding:12px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-secondary{background:#f0f0f0;color:#333}.btn-secondary:hover:not(:disabled){background:#e0e0e0}.btn-primary{background:#9c27b0;color:#fff}.btn-primary:hover:not(:disabled){background:#7b1fa2}.btn-secondary:disabled,.btn-primary:disabled{opacity:.6;cursor:not-allowed}.video-call-page{position:fixed;inset:0;background:#000;z-index:10000;display:flex;align-items:center;justify-content:center}.video-call-container{width:100%;height:100%;display:flex;flex-direction:column;background:#000}.video-call-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;z-index:10}.call-info{display:flex;align-items:center;gap:1.5rem}.call-info h3{margin:0;font-size:1.2rem;font-weight:600}.connection-status{display:flex;align-items:center;gap:.5rem;font-size:.9rem}.status-dot{width:10px;height:10px;border-radius:50%;background:#666;animation:pulse 2s infinite}.status-dot.connected,.status-dot.peer-connected{background:#4caf50}.status-dot.failed{background:#f44336;animation:none}.status-dot.peer-disconnected{background:#ff9800}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.status-text{font-weight:500}.close-btn{background:#fff3;border:none;color:#fff;width:36px;height:36px;border-radius:50%;font-size:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .3s;line-height:1}.close-btn:hover{background:#ffffff4d}.video-call-content{flex:1;position:relative;display:flex;align-items:center;justify-content:center;padding:2rem;overflow:hidden}.remote-video-container{width:100%;height:100%;position:relative;display:flex;align-items:center;justify-content:center;background:#1a1a1a;border-radius:12px;overflow:hidden}.remote-video{width:100%;height:100%;object-fit:contain}.waiting-for-peer{display:flex;flex-direction:column;align-items:center;gap:1rem;color:#fff}.waiting-for-peer .spinner{width:50px;height:50px;border:4px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.local-video-container{position:absolute;bottom:2rem;right:2rem;width:300px;height:200px;border-radius:12px;overflow:hidden;border:3px solid white;box-shadow:0 4px 20px #00000080;background:#000;z-index:20}.local-video{width:100%;height:100%;object-fit:cover}.video-label{position:absolute;bottom:0;left:0;right:0;background:#000000b3;color:#fff;padding:.5rem;font-size:.85rem;text-align:center}.video-call-controls{display:flex;justify-content:center;gap:1rem;padding:2rem;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.control-btn{width:60px;height:60px;border-radius:50%;border:none;background:#fff3;color:#fff;font-size:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s}.control-btn:hover{background:#ffffff4d;transform:scale(1.1)}.control-btn.muted,.control-btn.video-off{background:#f44336cc}.control-btn.end-call{width:auto;padding:0 2rem;border-radius:30px;background:#f44336;font-size:1rem;font-weight:600}.control-btn.end-call:hover{background:#d32f2f}.video-call-error{position:fixed;inset:0;background:#000;display:flex;align-items:center;justify-content:center;z-index:10000}.error-content{text-align:center;color:#fff;padding:2rem}.error-content h2{margin-bottom:1rem}.error-content p{margin-bottom:2rem;color:#ccc}.btn-primary{padding:.75rem 2rem;background:#4caf50;color:#fff;border:none;border-radius:8px;font-size:1rem;cursor:pointer;transition:background .3s}.btn-primary:hover{background:#45a049}@media(max-width:768px){.local-video-container{width:200px;height:150px;bottom:1rem;right:1rem}.video-call-controls{padding:1rem;gap:.5rem}.control-btn{width:50px;height:50px;font-size:1.2rem}.call-info h3{font-size:1rem}}
