.auth-page{background:var(--light-bg);height:100vh;overflow:hidden}.auth-container{display:flex;height:100vh}.auth-brand{flex:1;position:relative;background:linear-gradient(135deg,var(--primary-red),var(--dark-red));display:flex;flex-direction:column;justify-content:center;padding:6%;overflow:hidden;color:var(--white)}.auth-brand .glass-bg-elements .bg-char{color:#ffffff0d}.auth-brand .orb{background:#ffffff1a}.auth-brand-content{position:relative;z-index:10}.auth-form-wrapper{flex:1;display:flex;align-items:center;justify-content:center;background:var(--light-bg);padding:6%}.auth-form-card{width:100%;max-width:480px}.auth-header{margin-bottom:40px}.auth-header h2{font-size:2.5rem;margin-bottom:10px}.auth-tabs{display:flex;gap:20px;margin-bottom:20px;border-bottom:1px solid rgba(0,0,0,.1);padding-bottom:10px}.auth-tab{background:transparent;border:none;font-family:Jost,sans-serif;font-size:1.1rem;color:var(--text-light);cursor:pointer;padding:5px 10px;position:relative;transition:var(--transition)}.auth-tab.active{color:var(--text-main);font-weight:500}.auth-tab.active:after{content:"";position:absolute;bottom:-11px;left:0;width:100%;height:2px;background:var(--primary-red)}.auth-tab:hover{color:var(--text-main)}.auth-header p{color:var(--text-light)}.auth-link{color:var(--primary-red);text-decoration:none;font-weight:500;transition:var(--transition)}.auth-link:hover{color:var(--primary-red-hover);text-decoration:underline}.input-group{position:relative;margin-bottom:30px}.input-group input{width:100%;padding:15px 0 10px;background:transparent;border:none;border-bottom:1px solid rgba(0,0,0,.1);font-family:Jost,sans-serif;font-size:1.1rem;color:var(--text-main);outline:none;transition:var(--transition)}.input-group label{position:absolute;top:15px;left:0;color:var(--text-light);font-size:1rem;transition:all .3s cubic-bezier(.2,.8,.2,1);pointer-events:none}.input-border{position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--primary-red);transition:width .4s cubic-bezier(.2,.8,.2,1)}.input-group input:focus~.input-border,.input-group input:not(:placeholder-shown)~.input-border{width:100%}.input-group input:focus~label,.input-group input:not(:placeholder-shown)~label{top:-10px;font-size:.8rem;color:var(--primary-red)}.auth-options{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px;font-size:.95rem}.mb-4{margin-bottom:1.5rem}.error-msg{color:var(--primary-red);font-size:.85rem;margin-top:10px;text-align:center}.w-100{width:100%}.auth-divider{text-align:center;position:relative;margin:40px 0}.auth-divider:before{content:"";position:absolute;left:0;top:50%;width:100%;height:1px;background:#0000001a}.auth-divider span{background:var(--light-bg);padding:0 15px;color:var(--text-light);font-size:.9rem;position:relative}.social-auth{display:flex;gap:15px}.social-btn{display:flex;align-items:center;justify-content:center;gap:10px;padding:12px;background:var(--white);border:1px solid rgba(0,0,0,.08);color:var(--text-main)}.social-btn:hover{background:#f9f9f9;color:var(--text-main);border-color:#00000026}.sidebar-upgrade{background:linear-gradient(135deg,#d34c400f,#d34c4005);border:1px solid rgba(211,76,64,.12);border-radius:12px;padding:20px;margin-bottom:20px;text-align:center}.upgrade-badge{display:inline-block;background:var(--primary-red);color:#fff;font-size:.7rem;font-weight:700;letter-spacing:1.5px;padding:3px 10px;border-radius:4px;margin-bottom:10px}.upgrade-text{font-size:.85rem;color:var(--text-light);margin-bottom:12px;line-height:1.4}.upgrade-widget{background:linear-gradient(135deg,#1a1a1a,#2d1f1f)!important;color:#fff!important;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}.upgrade-widget h3{color:#fff!important;font-family:Bodoni Moda,serif;font-size:1.4rem;margin-bottom:8px}.upgrade-widget-icon{font-size:2.5rem;margin-bottom:10px}.upgrade-pricing{display:flex;align-items:baseline;gap:2px;justify-content:center}.upgrade-price{font-family:Bodoni Moda,serif;font-size:2.5rem;font-weight:700;color:#fff}.upgrade-period{font-size:.9rem;color:#fff9}.app-body{background:var(--sub-bg);display:flex;height:100vh;overflow:hidden}.sidebar{width:280px;background:var(--white);border-right:1px solid rgba(0,0,0,.03);display:flex;flex-direction:column;padding:24px;z-index:100}.sidebar-header{margin-bottom:40px}.sidebar-nav{display:flex;flex-direction:column;gap:10px;flex:1}.nav-item{display:flex;align-items:center;gap:15px;padding:16px;text-decoration:none;color:var(--text-light);border-radius:8px;font-weight:500;transition:var(--transition)}.nav-item:hover{background:var(--sub-bg);color:var(--text-main)}.nav-item.active{background:#d34c400d;color:var(--primary-red)}.nav-icon{font-size:1.2rem}.sidebar-footer{padding-top:24px;border-top:1px solid rgba(0,0,0,.05)}.user-profile{display:flex;align-items:center;gap:15px;margin-bottom:20px}.user-avatar{width:44px;height:44px;border-radius:50%;background:var(--primary-red);color:var(--white);display:flex;align-items:center;justify-content:center;font-family:Bodoni Moda,serif;font-size:1.2rem}.user-avatar.small{width:36px;height:36px;font-size:1rem}.user-info{display:flex;flex-direction:column}.user-name{font-weight:600;color:var(--text-main)}.user-tier{font-size:.8rem;color:var(--text-light)}.logout-link{color:var(--text-light);text-decoration:none;font-size:.9rem;transition:var(--transition)}.logout-link:hover{color:var(--primary-red)}.main-content{flex:1;display:flex;flex-direction:column;overflow-y:auto}.topbar{display:flex;justify-content:space-between;align-items:center;padding:24px 6%;background:#f5f4f0cc;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);position:sticky;top:0;z-index:50}.topbar-search input{background:var(--white);border:1px solid rgba(0,0,0,.05);padding:12px 24px;border-radius:50px;width:300px;font-family:Jost,sans-serif;outline:none;transition:var(--transition)}.topbar-search input:focus{box-shadow:var(--glass-shadow);width:350px}.topbar-actions{display:flex;align-items:center;gap:20px}.icon-btn{background:transparent;border:none;font-size:1.5rem;cursor:pointer;position:relative}.badge{position:absolute;top:-5px;right:-5px;background:var(--primary-red);color:#fff;font-size:.6rem;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center}.streak-badge{background:var(--white);padding:8px 16px;border-radius:50px;font-size:.9rem;font-weight:500;box-shadow:0 4px 10px #00000005}.dashboard-content{padding:20px 6% 60px}.welcome-header{margin-bottom:40px}.welcome-header h1{font-size:2.5rem;margin-bottom:5px}.welcome-header p{color:var(--text-light)}.app-bento-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:minmax(150px,auto);gap:24px}.widget{background:var(--white);border-radius:16px;padding:30px;box-shadow:0 10px 30px #00000005;border:1px solid rgba(0,0,0,.03)}.hero-widget{grid-column:span 2;grid-row:span 2;position:relative;overflow:hidden;padding:40px;display:flex;align-items:flex-end}.widget-bg{position:absolute;inset:0;background-size:cover;background-position:center;transition:var(--transition)}.hero-widget:hover .widget-bg{transform:scale(1.05)}.hero-widget:before{content:"";position:absolute;inset:0;background:linear-gradient(to top,#000c,#0003)}.glass-content{position:relative;z-index:10;width:100%}.progress-mini .track{height:4px;background:#fff3;margin-bottom:8px}.progress-mini .fill{background:var(--primary-red);box-shadow:0 0 15px #d34c4080}.text-white{color:#ffffffe6}.small{font-size:.85rem}.stat-card h3{font-size:1rem;font-family:Jost,sans-serif;color:var(--text-light);margin-bottom:15px}.stat-number{font-size:3rem;font-family:Bodoni Moda,serif;line-height:1;margin-bottom:5px}.stat-growth{color:#10b981;font-size:.85rem;font-weight:500}.trend-chart{margin-top:15px;height:50px;background:linear-gradient(to top,rgba(16,185,129,.1),transparent);border-bottom:2px solid #10B981}.list-card h3{font-size:1.1rem;margin-bottom:20px}.milestone-list{list-style:none}.milestone-list li{display:flex;gap:15px;margin-bottom:20px}.dot{width:10px;height:10px;border-radius:50%;background:#eee;margin-top:5px}.dot.active{background:var(--primary-red);box-shadow:0 0 0 4px #d34c401a}.milestone-info h4{font-family:Jost,sans-serif;font-size:1rem}.milestone-info span{font-size:.85rem;color:var(--text-light)}.module-card{grid-column:span 3}.module-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.view-all{color:var(--primary-red);text-decoration:none;font-size:.9rem;font-weight:500}.module-list{display:flex;gap:24px}.module-item{display:flex;align-items:center;gap:20px;flex:1;padding:15px;border-radius:12px;transition:var(--transition);cursor:pointer}.module-item:hover{background:var(--sub-bg)}.module-thumb{width:80px;height:60px;border-radius:8px;background:#ddd;background-size:cover;background-position:center}.module-info{flex:1}.module-info h4{font-family:Jost,sans-serif;font-size:1.05rem;margin-bottom:4px}.module-info span{font-size:.85rem;color:var(--text-light)}.player-body{background:#000;color:#fff;height:100vh;display:flex;flex-direction:column;overflow:hidden}.player-header{display:flex;justify-content:space-between;align-items:center;padding:16px 4%;background:#000c;border-bottom:1px solid rgba(255,255,255,.05)}.back-link{color:#ffffffb3;text-decoration:none;font-size:.95rem;transition:var(--transition)}.back-link:hover{color:#fff}.course-meta{display:flex;align-items:center;gap:15px}.course-badge{background:#d34c4033;color:var(--primary-red);padding:4px 10px;border-radius:4px;font-size:.75rem;text-transform:uppercase;letter-spacing:1px}.course-title{font-weight:500}.theater-layout{display:flex;flex:1;overflow:hidden}.video-main{flex:3;display:flex;flex-direction:column;overflow-y:auto;background:#0a0a0a}.video-wrapper{width:100%;aspect-ratio:16 / 9;background:#000;position:relative;display:flex;align-items:center;justify-content:center;border-bottom:1px solid rgba(255,255,255,.1)}.video-placeholder{width:100%;height:100%;background-image:url(https://images.unsplash.com/photo-1552664730-d307ca884978?ixlib=rb-4.0.3&auto=format&fit=crop&w=1600&q=80);background-size:cover;background-position:center;position:relative}.video-placeholder:before{content:"";position:absolute;inset:0;background:#0006}.play-button-large{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:80px;height:80px;background:#d34c40e6;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;color:#fff;cursor:pointer;transition:var(--transition);box-shadow:0 0 30px #d34c4066;padding-left:5px}.play-button-large:hover{transform:translate(-50%,-50%) scale(1.1)}.video-controls{position:absolute;bottom:0;left:0;width:100%;padding:20px;display:flex;justify-content:space-between;background:linear-gradient(to top,rgba(0,0,0,.8),transparent)}.control-left,.control-right{display:flex;align-items:center;gap:20px}.ctrl-icon{font-size:1.2rem;cursor:pointer;opacity:.8;transition:var(--transition)}.ctrl-icon:hover{opacity:1}.time{font-size:.9rem;font-family:monospace}.video-progress{position:absolute;bottom:0;left:0;width:100%;height:4px;background:#fff3;cursor:pointer}.vp-loaded{position:absolute;left:0;top:0;height:100%;width:60%;background:#fff6}.vp-played{position:absolute;left:0;top:0;height:100%;width:22%;background:var(--primary-red)}.vp-handle{position:absolute;left:22%;top:50%;transform:translate(-50%,-50%);width:12px;height:12px;background:var(--primary-red);border-radius:50%;opacity:0;transition:opacity .2s}.video-progress:hover .vp-handle{opacity:1}.video-info{padding:40px 6%}.video-info h1{color:#fff;margin-bottom:5px}.instructor{color:#fff9;font-size:.95rem;margin-bottom:30px}.player-tabs{display:flex;gap:30px;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:30px}.tab-btn{background:transparent;border:none;color:#ffffff80;font-family:Jost,sans-serif;font-size:1.05rem;padding-bottom:15px;cursor:pointer;position:relative;transition:var(--transition)}.tab-btn.active{color:#fff}.tab-btn.active:after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:2px;background:var(--primary-red)}.tab-content p{color:#fffc;line-height:1.8;margin-bottom:20px}.tag-list{display:flex;gap:10px}.tag{background:#ffffff1a;padding:5px 12px;border-radius:4px;font-size:.8rem;color:#ccc}.glass-textarea{width:100%;height:150px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);padding:20px;color:#fff;font-family:Jost,sans-serif;border-radius:8px;resize:vertical;outline:none;transition:var(--transition)}.glass-textarea:focus{border-color:#ffffff4d;background:#ffffff14}.playlist-sidebar{width:400px;background:#141414;border-left:1px solid rgba(255,255,255,.05);display:flex;flex-direction:column}.playlist-header{padding:24px;display:flex;justify-content:space-between;align-items:center}.playlist-header h3{font-family:Jost,sans-serif;font-weight:500;color:#fff}.progress-text{font-size:.85rem;color:#ffffff80}.playlist-progress{padding:0 24px 24px}.playlist-progress .track{background:#ffffff1a;height:2px}.playlist-progress .fill{background:var(--primary-red);height:100%}.accordion{flex:1;overflow-y:auto}.accordion-item{border-top:1px solid rgba(255,255,255,.05)}.accordion-header{width:100%;background:transparent;border:none;padding:20px 24px;text-align:left;color:#fff;font-family:Jost,sans-serif;font-size:1rem;cursor:pointer;transition:var(--transition)}.accordion-item.active .accordion-header{background:#ffffff05}.accordion-body{display:none;background:#0a0a0a;flex-direction:column}.accordion-body.open{display:flex}.lesson-link{display:flex;align-items:center;gap:15px;padding:15px 24px;text-decoration:none;transition:var(--transition)}.lesson-link:hover{background:#ffffff0d}.lesson-link.active{background:#d34c401a;border-left:2px solid var(--primary-red);padding-left:22px}.status-icon{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;color:#000}.completed .status-icon{background:#10b981}.active .status-icon{background:var(--primary-red);color:#fff;padding-left:2px}.locked .status-icon{background:#ffffff1a;color:#ffffff80}.lesson-meta{display:flex;flex-direction:column}.lesson-name{color:#ccc;font-size:.95rem}.active .lesson-name{color:#fff;font-weight:500}.locked .lesson-name{color:#fff6}.lesson-time{font-size:.8rem;color:#fff6;margin-top:2px}
