.landing-container{min-height:100vh;background:#181a20;display:flex;flex-direction:column}.navbar{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 3rem;background:#23263a;color:#f0f0f0;box-shadow:0 2px 8px #181a2080}.logo{font-size:2rem;font-weight:700;letter-spacing:2px}.nav-buttons{display:flex;gap:1rem}.nav-btn{background:#23263a;color:#4caf50;border:1px solid #4CAF50;padding:.75rem 1.5rem;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s,color .2s}.nav-btn:hover{background:#4caf50;color:#181a20}.main-content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 1rem}.main-content h2{font-size:2.5rem;color:#f0f0f0;margin-bottom:1rem}.main-content p{font-size:1.25rem;color:#b0b0b0}.signup-link-container{display:flex;flex-direction:column;align-items:center;margin-top:2rem;gap:1rem}.signup-link{background:none;border:none;color:#fff;text-decoration:underline;font-size:1rem;cursor:pointer;padding:0}.signup-link:hover{color:#1976d2}.signin-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80vh}.signin-options{display:flex;gap:2rem;margin-top:2rem;margin-bottom:2rem}.signin-btn{padding:1.25rem 2.5rem;font-size:1.1rem;border-radius:8px;border:none;background-color:#4caf50;color:#f0f0f0;cursor:pointer;transition:background .2s;margin:0 .5rem}.signin-btn:hover{background-color:#388e3c}.signin-btn.selected{background-color:#43a047;color:#fff;border:2px solid #388e3c}.signin-form{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem;width:100%;max-width:350px}.signin-input{padding:.75rem 1rem;font-size:1rem;border-radius:6px;border:1px solid #ccc;outline:none;width:100%;max-width:350px}.signin-input:focus{border-color:#1976d2}.registration-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80vh}.registration-form{display:flex;flex-direction:column;gap:1rem;margin-top:2rem;width:100%;max-width:350px}.registration-input{padding:.75rem 1rem;font-size:1rem;border-radius:6px;border:1px solid #444;background:#23263a;color:#f0f0f0;outline:none}.registration-input:focus{border-color:#4caf50}.registration-btn{padding:1rem 2rem;font-size:1.1rem;border-radius:8px;border:none;background-color:#4caf50;color:#f0f0f0;cursor:pointer;transition:background .2s;margin-top:1.5rem}.registration-btn:hover{background-color:#388e3c}.signin-link{background:none;border:none;color:#fff;cursor:pointer;font-size:1rem;text-decoration:underline;padding:.5rem}.signin-link-container{display:flex;justify-content:center;margin-top:1rem}.signin-link{background:none;border:none;color:#1976d2;cursor:pointer;font-size:1rem;text-decoration:underline;padding:.5rem}.signin-link:hover{color:#1565c0}.instructor-dashboard{max-width:1200px;margin:0 auto;padding:2rem}.instructor-dashboard h2{text-align:center;margin-bottom:2rem;color:#f0f0f0;font-size:2.5rem}.dashboard-sections{display:grid;gap:2rem}.section{background:#282832b3;border-radius:15px;padding:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(60,60,80,.3)}.section h3{color:#f0f0f0;margin-bottom:1.5rem;font-size:1.5rem}.loading,.no-data{text-align:center;padding:2rem;color:#b0b0b0;font-style:italic}.error-message{background:#f4433626;border:1px solid rgba(244,67,54,.4);color:#ffcdd2;padding:.75rem;border-radius:8px;margin-bottom:1rem;text-align:center}.instructor-form,.project-form{display:grid;gap:1rem}.form-group{display:flex;flex-direction:column}.form-group label{color:#f0f0f0;font-weight:500;margin-bottom:.5rem}.form-group input,.form-group textarea,.form-group select{padding:.75rem;border:1px solid #444;border-radius:8px;background:#23263a;color:#f0f0f0;font-size:1rem;transition:all .3s ease}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#4caf50;background:#23263a;box-shadow:0 0 0 2px #4caf5033}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.toggle-button{background:#4caf50;color:#f0f0f0;border:none;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;transition:all .3s ease;margin-bottom:1rem}.toggle-button:hover{background:#388e3c;transform:translateY(-2px)}.submit-button{background:#23263a;color:#4caf50;border:none;padding:1rem 2rem;border-radius:8px;font-size:1.1rem;font-weight:500;cursor:pointer;transition:all .3s ease;margin-top:1rem}.submit-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #4caf5033}.projects-list{display:grid;gap:2.5rem}.project-card{margin-bottom:1.5rem;background:#282832b3;border-radius:10px;padding:1.5rem;border:1px solid rgba(60,60,80,.3)}.project-card:hover{box-shadow:0 8px 25px #0003}.project-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.project-header h4{color:#f0f0f0;margin:0;font-size:1.3rem}.project-status{background:#4caf5026;color:#4caf50;padding:.25rem .75rem;border-radius:12px;font-size:.9rem;text-transform:capitalize}.project-status.cancelled{background:#f4433626;color:#ff5252}.project-status.completed{background:#2196f326;color:#42a5f5}.project-description{color:#b0b0b0;margin-bottom:1rem;line-height:1.6}.project-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;margin-bottom:1rem}.detail-item{color:#f0f0f0;font-size:.9rem}.teams-preview{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1)}.teams-preview h5{color:#f0f0f0;margin:0 0 .75rem;font-size:1.1rem}.teams-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem}.team-preview{background:#282832b3;border-radius:6px;padding:.75rem;text-align:center;border:1px solid rgba(60,60,80,.3)}.team-name{color:#f0f0f0;font-weight:500;margin-bottom:.25rem}.team-members{color:#b0b0b0;font-size:.8rem}button.student-name{background:transparent;border:none;text-align:left;padding:0;cursor:pointer;color:#f0f0f0;width:fit-content;font-size:1rem}button.student-name:hover{text-decoration:underline}@media (max-width: 768px){.instructor-dashboard,.section{padding:1rem}.form-row,.project-details{grid-template-columns:1fr}.teams-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}}.availability-heatmap{display:flex;flex-direction:column;overflow-x:auto;background:#282832b3;padding:1rem;border-radius:8px;color:#f0f0f0}.heatmap-grid{display:grid;grid-template-columns:auto repeat(7,1fr);gap:2px}.heatmap-header-cell{padding:.5rem;text-align:center;font-weight:700;font-size:.8rem;background:#23263a}.heatmap-time-label{padding:.25rem .5rem;text-align:right;font-size:.7rem;background:#23263a;display:flex;align-items:center;justify-content:flex-end}.heatmap-cell{height:30px;border:1px solid #444;position:relative;transition:background-color .2s}.heatmap-cell:hover:after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:#181a20;color:#f0f0f0;padding:4px 8px;border-radius:4px;font-size:.7rem;white-space:nowrap;z-index:10;pointer-events:none}.heatmap-legend{display:flex;align-items:center;justify-content:flex-end;gap:1rem;margin-top:1rem;font-size:.8rem}.legend-gradient{width:100px;height:10px;background:linear-gradient(to right,#4caf5000,#4caf50);border:1px solid #4CAF50}.project-form{display:grid;gap:1.5rem}.form-group{margin-bottom:1.2rem}.form-row{display:flex;gap:1.2rem;margin-bottom:1.2rem}.section{margin-bottom:2rem}.student-profile-form{max-width:800px;margin:0 auto;padding:2rem;background:#ffffff1a;border-radius:15px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.student-profile-form h2{text-align:center;margin-bottom:2rem;color:#f0f0f0;font-size:2rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;color:#f0f0f0;font-weight:500}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;border:1px solid rgba(255,255,255,.3);border-radius:8px;background:#ffffff1a;color:#f0f0f0;font-size:1rem;transition:all .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#4caf50;background:#fff3;box-shadow:0 0 0 2px #4caf5033}.availability-grid{background:#ffffff0d;border-radius:10px;padding:1rem;overflow-x:auto}.days-header{display:grid;grid-template-columns:100px repeat(7,1fr);gap:2px;margin-bottom:.5rem}.day-header{font-size:.9rem;color:#f0f0f0;text-align:center;height:40px;display:flex;align-items:center;justify-content:center;writing-mode:horizontal-tb}.time-header{font-weight:700;color:#f0f0f0;display:flex;align-items:center}.time-row{display:grid;grid-template-columns:100px repeat(7,1fr);gap:2px;margin-bottom:2px}.time-label{font-weight:500;color:#f0f0f0;display:flex;align-items:center;padding:.5rem}.time-slot{width:100%;height:30px;border:1px solid rgba(255,255,255,.3);background:#ffffff1a;border-radius:4px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;font-size:.8rem;color:transparent}.time-slot:hover{background:#fff3;border-color:#ffffff80}.time-slot.selected{background:#4caf50;border-color:#45a049;color:#fff}.time-slot.selected:hover{background:#45a049}.student-profile-form.typeform-mode{max-width:600px;min-height:500px;display:flex;flex-direction:column;justify-content:space-between}.step-indicator{text-align:center;color:#f0f0f0b3;margin-bottom:2rem;font-size:.9rem;text-transform:uppercase;letter-spacing:1px}.step-content{flex-grow:1;animation:fadeIn .5s ease}.form-actions{display:flex;justify-content:space-between;margin-top:2rem;gap:1rem}.back-button{background:transparent;border:1px solid rgba(255,255,255,.3);color:#f0f0f0;padding:1rem 2rem;border-radius:8px;font-size:1rem;cursor:pointer;transition:all .3s ease}.back-button:hover{background:#ffffff1a}.progress-container{margin-top:2rem;background:#ffffff1a;height:6px;border-radius:3px;position:relative}.progress-bar{background:#4caf50;height:100%;border-radius:3px;transition:width .5s ease}.progress-text{position:absolute;right:0;top:12px;font-size:.8rem;color:#f0f0f099}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.student-profile-form{padding:1rem;margin:1rem}.days-header,.time-row{grid-template-columns:80px repeat(7,1fr)}.time-slot{width:100%;height:25px;font-size:.7rem}.day-header{font-size:.8rem;height:35px}}.students-list{max-width:1200px;margin:0 auto;padding:2rem}.students-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.students-header h2{color:#f0f0f0;margin:0}.loading,.error,.no-students{text-align:center;padding:2rem;color:#f0f0f0;background:#282832b3;border-radius:10px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(60,60,80,.3)}.students-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.student-card{background:#ffffff1a;border-radius:15px;padding:1.5rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);transition:transform .3s ease,box-shadow .3s ease}.student-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px #0003}.student-header{margin-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.2);padding-bottom:.5rem}.student-header h3{color:#f0f0f0;margin:0 0 .5rem;font-size:1.3rem}.student-email{color:#f0f0f0b3;font-size:.9rem}.student-details{color:#f0f0f0}.detail-item{margin-bottom:.75rem}.detail-item strong{color:#4caf50;margin-right:.5rem}.skills-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.skill-tag{background:#4caf5033;color:#4caf50;padding:.25rem .5rem;border-radius:15px;font-size:.8rem;border:1px solid rgba(76,175,80,.3)}@media (max-width: 768px){.students-list{padding:1rem}.students-header{flex-direction:column;gap:1rem;align-items:stretch}.students-grid{grid-template-columns:1fr}.student-card{padding:1rem}}.create-team-form{max-width:1000px;margin:0 auto;padding:2rem;background:#282832b3;border-radius:15px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(60,60,80,.3)}.create-team-form h2{text-align:center;margin-bottom:2rem;color:#f0f0f0;font-size:2rem}.form-group{margin-bottom:2rem}.form-group label{display:block;margin-bottom:.5rem;color:#f0f0f0;font-weight:500;font-size:1.1rem}.form-group input,.form-group textarea{width:100%;padding:.75rem;border:1px solid #444;border-radius:8px;background:#23263a;color:#f0f0f0;font-size:1rem;transition:all .3s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#4caf50;background:#23263a;box-shadow:0 0 0 2px #4caf5033}.form-group input::placeholder,.form-group textarea::placeholder{color:#b0b0b0}.students-selection{background:#ffffff0d;border-radius:10px;padding:1rem;max-height:400px;overflow-y:auto}.no-students{text-align:center;color:#f0f0f0b3;padding:2rem;font-style:italic}.students-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.student-option{margin-bottom:.5rem}.student-checkbox{display:flex;align-items:flex-start;cursor:pointer;padding:1rem;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:#ffffff0d;transition:all .3s ease}.student-checkbox:hover{background:#ffffff1a;border-color:#fff6}.student-checkbox input[type=checkbox]{margin-right:1rem;margin-top:.25rem;width:18px;height:18px;accent-color:#4CAF50}.student-checkbox:has(input:checked){background:#4caf501a;border-color:#4caf50}.student-info{flex:1}.student-name{font-weight:600;color:#f0f0f0;font-size:1.1rem;margin-bottom:.25rem}.student-email{color:#f0f0f0b3;font-size:.9rem;margin-bottom:.5rem}.student-major{color:#4caf50;font-size:.9rem;margin-bottom:.5rem}.student-skills{display:flex;flex-wrap:wrap;gap:.25rem}.skill-tag{background:#4caf5033;color:#4caf50;padding:.2rem .5rem;border-radius:12px;font-size:.8rem;border:1px solid rgba(76,175,80,.3)}.loading{text-align:center;padding:2rem;color:#f0f0f0;background:#ffffff1a;border-radius:10px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.submit-button{width:100%;background:#4caf50;color:#fff;border:none;padding:1rem 2rem;border-radius:8px;font-size:1.1rem;font-weight:500;cursor:pointer;transition:all .3s ease;margin-top:1rem}.submit-button:hover:not(:disabled){background:#45a049;transform:translateY(-2px);box-shadow:0 4px 12px #4caf504d}.submit-button:disabled{background:#ffffff4d;cursor:not-allowed;transform:none;box-shadow:none}@media (max-width: 768px){.create-team-form{padding:1rem;margin:1rem}.students-grid{grid-template-columns:1fr}.student-checkbox{padding:.75rem}}.leave-btn,button.leave-btn{background:#f44336!important;color:#fff!important;border:2px solid #f44336!important;border-radius:6px!important;padding:.5rem 1rem!important;font-weight:500!important;cursor:pointer!important;transition:background .2s,box-shadow .2s!important;box-shadow:none!important}.leave-btn:hover,button.leave-btn:hover{background:#b71c1c!important;border-color:#b71c1c!important;box-shadow:0 4px 16px #f443362e!important}.edit-team-btn{background:none!important;box-shadow:none!important;outline:none!important;border:2px solid transparent!important;border-radius:6px!important;width:1.8rem!important;height:1.8rem!important;padding:0!important}.edit-team-btn:hover:not(:disabled){background:transparent!important;box-shadow:0 4px 16px #1565c040!important;outline:none!important;border:2px solid #fff!important;border-radius:6px!important}.student-name-chip:hover,.student-name-chip.hover{background:none!important;color:#fff!important;box-shadow:0 4px 16px #1565c040!important;cursor:pointer!important}.join-btn,button.join-btn{background:#1976d2!important;color:#fff!important;border:2px solid #1976d2!important;border-radius:6px!important;padding:.5rem 1rem!important;font-weight:500!important;cursor:pointer!important;transition:background .2s,box-shadow .2s!important;box-shadow:none!important}.join-btn:hover,button.join-btn:hover{background:#1565c0!important;border-color:#1565c0!important;box-shadow:0 4px 16px #1565c02e!important}.teams-list{max-width:1200px;margin:0 auto;padding:2rem}.teams-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.teams-header h2{color:#f0f0f0;margin:0}.refresh-button{background:#4caf50;color:#f0f0f0;border:none;padding:.5rem 1rem;border-radius:5px;cursor:pointer;transition:background-color .3s}.refresh-button:hover{background:#388e3c}.loading,.error,.no-teams{text-align:center;padding:2rem;color:#f0f0f0;background:#282832b3;border-radius:10px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(60,60,80,.3)}.error{color:#ffcdd2;background:#f4433626;border-color:#f4433666}.retry-button{background:#4caf50;color:#f0f0f0;border:none;padding:.5rem 1rem;border-radius:5px;cursor:pointer;margin-top:1rem;transition:background-color .3s}.retry-button:hover{background:#388e3c}.teams-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:1.5rem}.team-card{background:#282832b3;border-radius:15px;padding:1.5rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(60,60,80,.3);transition:transform .3s ease,box-shadow .3s ease}.team-card:hover{transform:none!important;box-shadow:none!important}.team-header{margin-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.2);padding-bottom:1rem}.team-header h3{color:#f0f0f0;margin:0 0 .5rem;font-size:1.4rem}.team-description{color:#b0b0b0;margin:0 0 1rem;font-style:italic}.team-meta{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem}.member-count{background:#4caf5033;color:#4caf50;padding:.25rem .5rem;border-radius:12px;font-size:.9rem;font-weight:500}.team-created{color:#f0f0f099;font-size:.9rem}.team-members{margin-top:1rem}.team-members h4{color:#f0f0f0;margin:0 0 1rem;font-size:1.1rem}.members-list{display:flex;flex-direction:column;gap:.75rem}.member-item{background:#ffffff0d;border-radius:8px;padding:.75rem;border:1px solid rgba(255,255,255,.1)}.member-info{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:.25rem}.member-name{font-weight:600;color:#f0f0f0;font-size:1rem}.member-email{color:#f0f0f0b3;font-size:.9rem}.member-role{background:#4caf5033;color:#4caf50;padding:.2rem .5rem;border-radius:8px;font-size:.8rem;text-transform:capitalize}.member-major{color:#f0f0f099;font-size:.9rem;font-style:italic}@media (max-width: 768px){.teams-list{padding:1rem}.teams-header{flex-direction:column;gap:1rem;align-items:stretch}.teams-grid{grid-template-columns:1fr}.team-card{padding:1rem}.team-meta{flex-direction:column;align-items:flex-start}.member-info{flex-direction:column;align-items:flex-start;gap:.5rem}}.auto-generate-teams{max-width:800px;margin:0 auto;padding:2rem;background:#ffffff1a;border-radius:15px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.auto-generate-teams h2{text-align:center;margin-bottom:1rem;color:#f0f0f0;font-size:2rem}.description{text-align:center;color:#f0f0f0cc;margin-bottom:2rem;line-height:1.6}.settings{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.setting-group{display:flex;flex-direction:column}.setting-group label{color:#f0f0f0;font-weight:500;margin-bottom:.5rem}.setting-group select,.setting-group input{padding:.75rem;border:1px solid #444;border-radius:8px;background:#23263a;color:#f0f0f0;font-size:1rem;transition:all .3s ease}.setting-group select:focus,.setting-group input:focus{outline:none;border-color:#4caf50;background:#23263a;box-shadow:0 0 0 2px #4caf5033}.setting-group select:disabled,.setting-group input:disabled{opacity:.6;cursor:not-allowed}.error-message{background:#f4433633;border:1px solid rgba(244,67,54,.5);color:#ffcdd2;padding:.75rem;border-radius:8px;margin-bottom:1rem;text-align:center}.success-message{background:#4caf5033;border:1px solid rgba(76,175,80,.5);color:#4caf50;padding:.75rem;border-radius:8px;margin-bottom:1rem;text-align:center;font-weight:500}.generate-button{width:100%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:1rem 2rem;border-radius:8px;font-size:1.1rem;font-weight:500;cursor:pointer;transition:all .3s ease;margin-bottom:2rem;position:relative;overflow:hidden}.generate-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #667eea66}.generate-button:disabled{background:#ffffff4d;cursor:not-allowed;transform:none;box-shadow:none}.generate-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.generate-button:hover:not(:disabled):before{left:100%}.algorithm-info{background:#282832b3;border-radius:10px;padding:1.5rem;border:1px solid rgba(60,60,80,.3)}.algorithm-info h3{color:#f0f0f0;margin:0 0 1rem;font-size:1.2rem}.algorithm-info ul{list-style:none;padding:0;margin:0}.algorithm-info li{color:#b0b0b0;padding:.5rem 0;border-bottom:1px solid rgba(60,60,80,.3);display:flex;align-items:center;gap:.5rem}.algorithm-info li:last-child{border-bottom:none}.algorithm-info li:before{content:"";width:8px;height:8px;background:#4caf50;border-radius:50%;flex-shrink:0}@media (max-width: 768px){.auto-generate-teams{padding:1rem;margin:1rem}.settings{grid-template-columns:1fr}.algorithm-info{padding:1rem}}.student-invitation{max-width:1000px;margin:0 auto;padding:2rem}.invitation-header{text-align:center;margin-bottom:3rem;background:#282832b3;border-radius:15px;padding:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(60,60,80,.3)}.invitation-header h2{color:#f0f0f0;margin-bottom:1rem;font-size:2.5rem}.project-description{color:#f0f0f0cc;font-size:1.2rem;margin-bottom:1.5rem;line-height:1.6}.project-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-top:1.5rem}.info-item{color:#f0f0f0;font-size:1rem}.info-item strong{color:#4caf50;margin-right:.5rem}.profile-step,.teams-step{background:#282832b3;border-radius:15px;padding:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(60,60,80,.3);margin-bottom:2rem}.profile-step h3,.teams-step h3{color:#f0f0f0;margin-bottom:1rem;font-size:1.5rem}.profile-step p,.teams-step p{color:#f0f0f0cc;margin-bottom:1.5rem;line-height:1.6}.team-card{background:#282832b3;border-radius:12px;padding:1.5rem;border:1px solid rgba(60,60,80,.3);transition:all .3s ease}.team-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0003}.team-card.joined{border-color:#4caf50;background:#4caf5026}.team-card.full{opacity:.6;border-color:#f4433666}.team-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.team-header h4{color:#f0f0f0;margin:0;font-size:1.3rem}.team-number{background:#4caf5026;color:#4caf50;padding:.25rem .75rem;border-radius:12px;font-size:.9rem;font-weight:500}.team-members{margin-bottom:1rem}.team-members strong{color:#f0f0f0;display:block;margin-bottom:.5rem}.no-members{color:#f0f0f099;font-style:italic}.members-list{display:flex;flex-direction:column;gap:.25rem}.member-item{color:#f0f0f0;font-size:.9rem;display:flex;align-items:center;gap:.5rem}.member-name{font-weight:500}.member-role{color:#f0f0f0b3;font-size:.8rem;text-transform:capitalize}.team-description{margin-bottom:1rem;color:#f0f0f0cc;font-size:.9rem;line-height:1.5}.team-description strong{color:#4caf50}.team-actions{margin-top:1rem}.member-actions{display:flex;gap:.75rem}.edit-button,.leave-button,.join-button{padding:.5rem 1rem;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .3s ease}.leave-button{background:#f44336!important;color:#fff!important;border:2px solid #f44336!important;border-radius:6px!important;padding:.5rem 1rem!important;font-weight:500!important;cursor:pointer!important;transition:background .2s,box-shadow .2s!important;filter:none!important;opacity:1!important;background-blend-mode:normal!important;outline:none!important;box-shadow:none!important;text-shadow:none!important;z-index:2}.leave-button:hover{background:#b71c1c!important;border-color:#b71c1c!important;box-shadow:0 4px 16px #f443362e!important}.loading,.error-message{text-align:center;padding:2rem;color:#f0f0f0;background:#ffffff1a;border-radius:10px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.error-message{color:#ffcdd2;background:#f4433633;border-color:#f4433680}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.form-group{margin-bottom:1rem}.form-group label{display:block;color:#f0f0f0;font-weight:500;margin-bottom:.5rem}.form-group input,.form-group textarea{width:100%;padding:.75rem;border:1px solid rgba(255,255,255,.3);border-radius:8px;background:#ffffff1a;color:#f0f0f0;font-size:1rem;transition:all .3s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#4caf50;background:#fff3;box-shadow:0 0 0 2px #4caf5033}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem}.cancel-button,.save-button{padding:.75rem 1.5rem;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;transition:all .3s ease}.cancel-button{background:#fff3;color:#f0f0f0;border:1px solid rgba(255,255,255,.3)}.modal .cancel-button{color:#000;background:#0000000a;border:1px solid rgba(0,0,0,.08)}.cancel-button:hover{background:#ffffff4d}.save-button{background:#4caf50;color:#fff}.save-button:hover{background:#45a049;transform:translateY(-1px)}@media (max-width: 768px){.student-invitation,.invitation-header{padding:1rem}.project-info,.teams-grid{grid-template-columns:1fr}.member-actions{flex-direction:column}.modal{margin:1rem;padding:1rem}}.project-status-span.active{background:#4caf50!important;color:#fff!important}.project-status-span.cancelled{background:#f44336!important;color:#fff!important}.project-status-span.completed,.project-status-span{background:#2196f3!important;color:#fff!important}.team-dashboard .projects-list .project-card span{color:#fff!important}.team-dashboard .projects-list .project-card span:contains("cancelled"),.team-dashboard .projects-list .project-card span:contains("Cancelled"){background:#f44336!important;color:#fff!important}.team-dashboard .projects-list .project-card span[style*="background: #f44336"]{background:#f44336!important;color:#fff!important}.team-dashboard .projects-list .project-card span[style*=background],.team-dashboard .active,.team-dashboard .active-text,.teams-section .active,.teams-section .active-text,.active,.active-text{background:#4caf50!important;color:#fff!important}.team-card.joined .team-header,.team-header{margin:0!important}.teams-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.team-members{width:100%;text-align:center}.member-row{margin-left:0!important;margin-right:0!important;display:block!important;width:100%;text-align:center!important}.student-name-chip{padding:0!important;background:transparent!important;display:inline-block!important;margin-left:auto!important;margin-right:auto!important;text-align:center!important;transition:box-shadow .2s!important}.team-members .member-row .student-name-chip:hover,.team-members .member-row .student-name-chip.hover{box-shadow:0 4px 16px #1976d240!important}.leave-team-btn,button.leave-team-btn{background:#f44336!important;color:#fff!important;border:2px solid #f44336!important;border-radius:6px!important;padding:.5rem 1rem!important;font-weight:500!important;cursor:pointer!important;transition:background .2s,box-shadow .2s!important;box-shadow:none!important}.leave-team-btn:hover,button.leave-team-btn:hover{background:#b71c1c!important;border-color:#b71c1c!important;box-shadow:0 4px 16px #f443362e!important}.team-card,.team-card:hover,.team-card:focus,.team-card:active{background:none!important;box-shadow:none!important;border:none!important;outline:none!important;filter:none!important}.team-card:hover,.team-card:active,.team-card:focus{background:none!important;box-shadow:none!important;border:none!important;outline:none!important}.student-name-chip:hover,.student-name-chip.hover{background:#1565c0!important;color:#fff!important;box-shadow:0 4px 16px #1976d226!important;cursor:pointer!important}.team-members button.member-row,.team-members .member-row,button.member-row,button.member-row:active,button.member-row:focus,button.member-row:visited{background:none!important;background-color:transparent!important;box-shadow:none!important;border:none!important;outline:none!important}.team-members button.member-row,.team-members .member-row,button.member-row{background-color:transparent!important;background:none!important}.member-row,button.member-row{background:none!important}.team-members button.member-row{background:transparent!important;border:none!important;box-shadow:none!important;outline:none!important}.team-actions .join-btn,.join-btn,button.join-btn{background:#1976d2!important;color:#fff!important;border:2px solid #1976d2!important;border-radius:6px!important;padding:.5rem 1rem!important;font-weight:500!important;cursor:pointer!important;transition:background .2s,box-shadow .2s!important;box-shadow:none!important}.join-btn:disabled{opacity:.6!important;cursor:not-allowed!important}.join-btn:hover:not(:disabled){background:#1565c0!important;box-shadow:0 4px 16px #1976d226!important}.edit-team-btn{display:flex!important;align-items:center!important;justify-content:center!important;margin:0 auto!important;background:transparent!important;background-color:transparent!important;border:none!important;border-radius:50%!important;width:1.5rem!important;height:1.5rem!important;cursor:pointer!important;transition:background .2s,box-shadow .2s!important;padding:0!important}.edit-team-btn:hover:not(:disabled){background:transparent!important;background-color:transparent!important;box-shadow:none!important}.edit-team-btn:disabled{opacity:.6!important;cursor:not-allowed!important}button.member-row>.student-name-chip,button.member-row span.student-name-chip,.member-row .student-name-chip,.student-name-chip,button.member-row .student-name-chip{background:none!important;color:#fff!important;box-shadow:none!important;z-index:1!important;padding:12px 32px!important;border-radius:6px!important;margin-right:.5em!important;display:inline-block!important;border:none!important;transition:background .2s,box-shadow .2s!important}.member-row{background:transparent!important;margin-bottom:.5rem;display:block;border:none!important;box-shadow:none!important;outline:none!important;width:100%;text-align:left;transition:background .2s}.modal,.modal *,.modal label,.modal input,.modal textarea{color:#f0f0f0!important;-webkit-text-fill-color:#f0f0f0!important}.modal input,.modal textarea{background:#23263a!important;border:1px solid #444!important}.modal h1,.modal h2,.modal h3,.modal h4,.modal h5,.modal h6,.modal,.modal *{color:#f0f0f0!important}.modal-overlay .modal,.modal{background:#181a26!important;color:#f0f0f0!important;box-shadow:0 4px 32px #000!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;opacity:1!important}.project-card{margin-left:1.5rem;margin-right:1.5rem}.edit-profile-btn{background:#1976d2!important;color:#f0f0f0!important;border:none!important;padding:1.25rem 2.5rem!important;border-radius:8px!important;font-size:1rem!important;font-weight:500!important;cursor:pointer!important;transition:background .2s,box-shadow .2s!important;margin:1rem 0!important;display:inline-block!important;box-sizing:border-box!important}.edit-profile-btn:hover{background:#1565c0!important;box-shadow:0 4px 16px #1976d226!important}.project-card{margin-left:1.5rem!important;margin-right:1.5rem!important}.edit-profile-btn{background:#444!important;color:#f0f0f0!important;border:none!important;padding:.5rem 1.2rem!important;border-radius:8px!important;font-size:1rem!important;font-weight:500!important;cursor:pointer!important;transition:background .2s,box-shadow .2s!important;margin:1rem 0!important;display:inline-block!important;box-sizing:border-box!important}.edit-profile-btn:hover{background:#333!important;box-shadow:0 4px 16px #44444426!important}.app{text-align:center;min-height:100vh;background:#181a20;color:#f0f0f0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.app-header{padding:2rem;max-width:800px;margin:0 auto}.app-header h1{font-size:3rem;margin-bottom:2rem;text-shadow:2px 2px 4px rgba(0,0,0,.3)}.connection-test{background:#181a20;border-radius:10px;padding:2rem;margin:2rem 0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(60,60,80,.3);color:#f0f0f0}.connection-test .connection-test h2{margin-bottom:1rem;color:#f0f0f0}.connection-test .message{font-size:1.2rem;margin:1rem 0;border:1px solid rgba(60,60,80,.3);background:#282832b3;border-radius:5px;border-left:4px solid #4CAF50}.connection-test .test-button{background:#4caf50;color:#f0f0f0;border:none;padding:.75rem 1.5rem;border-radius:5px;transition:background-color .3s}.connection-test .features li{padding:.5rem 0;background:#3c3c50b3;border-bottom:1px solid #4CAF50}.connection-test .features li .features li:last-child{border-bottom:none;content:"✓ ";color:#4caf50;font-weight:700}.connection-test .features li .features li:last-child .success-message{background:#4caf5033;border:1px solid rgba(76,175,80,.5);color:#4caf50;padding:1rem;border-radius:8px;margin:1rem 0;text-align:center;font-weight:500}.connection-test .features li .features li:last-child .navigation{display:flex;gap:1rem;margin:2rem 0;justify-content:center;flex-wrap:wrap}.connection-test .features li .features li:last-child .nav-button{background:#ffffff1a;color:#f0f0f0;border:1px solid rgba(255,255,255,.3);padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.connection-test .features li .features li:last-child .nav-button:hover{background:#fff3;border-color:#ffffff80;transform:translateY(-2px)}.connection-test .features li .features li:last-child .nav-button.active{background:#4caf50;border-color:#45a049;color:#fff}.connection-test .features li .features li:last-child .nav-button.active:hover{background:#45a049}.connection-test .features li .features li:last-child :root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;color:#f0f0f0;background-color:#181a20;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}.connection-test .features li .features li:last-child *{box-sizing:border-box}.connection-test .features li .features li:last-child body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}.connection-test .features li .features li:last-child #root{width:100%;margin:0 auto;text-align:center}
