body{background-color:#1b1b1a}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #fe98cc;outline-offset:3px}::selection{background:#fe98cc;color:#1a1b1b}.loading{height:100vh;font-size:1.5rem;color:pink}.loading,.login{display:flex;justify-content:center;align-items:center}.login{width:100%;flex-direction:column;min-height:80vh;background:#1a1b1b;color:#fefffe;margin-top:80px;font-family:Work Sans,sans-serif}.login .rainbow{height:70px;margin-bottom:20px}.login .cat-container{display:flex;margin-bottom:1rem}.login .cat-container .cat{height:80px;width:auto}.login h1{font-size:2.5rem;color:#fefffe;margin-top:0;margin-bottom:2rem;text-align:center}.login form{display:flex;flex-direction:column;gap:1.2rem;width:100%;max-width:400px;background:rgba(30,30,30,.85);padding:2rem;border-radius:1rem;box-shadow:0 0 15px rgba(0,0,0,.5)}.login form input{padding:.8rem 1rem;font-size:1rem;border:2px solid #fe98cc;border-radius:.5rem;background:#1a1b1b;color:#fefffe;outline:none;transition:border .3s;font-family:Work Sans,sans-serif}.login form input:focus{border-color:#54b4f0}.login form input::placeholder{color:gray}.login form button{margin-top:1rem;padding:.8rem 1rem;font-size:1.1rem;font-weight:700;color:#1a1b1b;background:#fecc01;border:none;border-radius:.5rem;cursor:pointer;transition:background .3s,transform .2s;font-family:Work Sans,sans-serif}.login form button:hover{transform:scale(1.05);background-color:#54b4f0}.login form button:active{scale:.95;background-color:#8e53bc}.login form .link{text-align:center;margin-top:1rem;font-size:1.1rem;color:#fefffe;text-decoration:none;font-weight:700}.login form .link:hover{color:#54b4f0;scale:1.05;transition:color .3s,scale .3s}.login form .link:active{color:#8e53bc;scale:.95;transition:scale .3s}@media(max-width:480px){.login .rainbow{margin-top:20px}.login .cat-container .cat{height:100px}.login form{max-width:300px}}.home-container{min-height:100vh;background:#1b1b1a;font-family:Work Sans,sans-serif;padding:2rem;color:#fefffe;margin-top:80px}@media(max-width:768px){.home-container{padding:1rem}}.main-content{max-width:1600px;margin:0 auto;display:flex;flex-direction:column;gap:2rem}.top-section{display:grid;grid-template-columns:1fr 1fr;grid-gap:2rem;gap:2rem;height:60vh}@media(max-width:1024px){.top-section{grid-template-columns:1fr;height:auto}}.bottom-section{height:40vh}@media(max-width:1024px){.bottom-section{height:60vh}}.section{border-radius:20px;overflow:hidden;transition:all .3s ease-in-out;box-shadow:0 4px 20px rgba(0,0,0,.3);border:2px solid rgba(0,0,0,0)}.section .loading-container{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%}.section .loading-container .loading-text{text-align:center}.section:hover{transform:translateY(-4px);box-shadow:0 8px 30px rgba(0,0,0,.5);background:#323231}.section.users-section{border-color:rgba(254,152,204,.3)}.section.courses-section{border-color:rgba(84,180,240,.3);height:100%;min-height:0}.section.courses-section .list-container{min-height:0}.section.courses-section .list-content.scrollable{height:100%;max-height:none;min-height:0}.section.subscriptions-section{border-color:rgba(254,204,1,.3)}.list-container{height:100%;display:flex;flex-direction:column}.list-container.subscription-list .list-content{max-height:none}.list-header{padding:1.5rem 2rem;border-bottom:2px solid #3a3a39;cursor:pointer}.list-header.pink-header{background:linear-gradient(135deg,rgba(254,152,204,.2),rgba(254,152,204,.1))}.list-header.blue-header{background:linear-gradient(135deg,rgba(84,180,240,.2),rgba(84,180,240,.1))}.list-header.yellow-header{background:linear-gradient(135deg,rgba(254,204,1,.2),rgba(254,204,1,.1))}.header-content{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.header-content .header-title-section{display:flex;align-items:center;gap:.75rem}.header-content .header-title-section h2{font-size:1.5rem;font-weight:600;color:#fefffe;margin:0}.header-stats{margin-top:15px}.header-stats .stat-item{margin-right:20px;border:2px solid;padding:.5rem 1rem;border-radius:20px}.header-stats .profe{border:2px solid #8e53bc;color:rgb(84.0544753466%,75.7289359258%,90.5455738781%)}.header-stats .estudiante{border:2px solid #54b4f0;color:rgb(69.715370019%,86.7172675522%,97.3434535104%)}.header-stats .green{border:2px solid #31d05b;color:rgb(51.784856235%,88.9994574905%,61.6151282647%)}.count-badge{padding:.25rem .75rem;border-radius:20px;font-size:.875rem;font-weight:600;color:#fefffe}.count-badge.pink{background:#fe98cc}.count-badge.blue{background:#54b4f0}.count-badge.yellow{background:#fecc01;color:#1a1b1b}.count-badge.purple{background:#8e53bc}.add-btn-header{width:40px;height:40px;border:none;border-radius:50%;font-size:1.5rem;font-weight:700;transition:all .3s ease-in-out;display:flex;align-items:center;justify-content:center;color:#fefffe}.add-btn-header.pink{background:#fe98cc}.add-btn-header.pink:hover{background:rgb(99.8001508296%,79.4155354449%,89.8076923077%);transform:scale(1.1)}.add-btn-header.blue{background:#54b4f0}.add-btn-header.blue:hover{background:rgb(51.3282732448%,78.6527514231%,95.7305502846%);transform:scale(1.1)}.add-btn-header.yellow{background:#fecc01;color:#1a1b1b}.add-btn-header.yellow:hover{background:rgb(99.6862745098%,84%,20.3137254902%);transform:scale(1.1)}.add-btn-header:active{transform:scale(.95)}.list-content{flex:1 1;overflow-y:auto;overflow-x:hidden;padding:1rem 0}.list-content.scrollable{max-height:30vh}.list-content::-webkit-scrollbar{width:8px}.list-content::-webkit-scrollbar-track{background:#3a3a39}.list-content::-webkit-scrollbar-thumb{background:#6a6a69;border-radius:4px}.list-content::-webkit-scrollbar-thumb:hover{background:#8a8a89}.loading-container{display:flex;align-items:center;justify-content:center;flex-direction:column;height:200px;gap:1rem;color:#b8b8b7}.loading-container span{font-size:1rem;font-weight:500}.loading-spinner{width:50px;height:50px;border:4px solid #3a3a39;border-radius:50%;animation:spin 1s linear infinite}.loading-spinner.pink{border-top:4px solid #fe98cc}.loading-spinner.blue{border-top:4px solid #54b4f0}.loading-spinner.yellow{border-top:4px solid #fecc01}.loading-spinner.purple{border-top:4px solid #8e53bc}.loading-spinner.green{border-top:4px solid #31d05b}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.empty-state{display:flex;align-items:center;justify-content:center;flex-direction:column;height:250px;gap:1rem;color:#b8b8b7}.empty-state .empty-icon{font-size:3rem;margin-bottom:.5rem}.empty-state p{font-size:1.1rem;font-weight:500}.item-list{list-style:none;padding:0;margin:0}.list-item{display:flex;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid rgba(58,58,57,.8);transition:all .3s ease-in-out;animation:fadeIn .3s ease-out}.list-item:last-child{border-bottom:none}.list-item:hover{background:rgba(58,58,57,.5);box-shadow:inset 4px 0 0 rgba(84,180,240,.75)}.list-item.subscription-item,.list-item.user-item{padding:1.25rem 2rem}.list-item.course-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:flex-start;grid-gap:1rem;gap:1rem;padding:1.5rem 2rem}.list-item.course-item .item-avatar{margin-right:0}.list-item.course-item .item-info{min-width:0}.list-item.course-item .item-header{gap:.5rem .75rem;flex-wrap:wrap}.list-item.course-item .status-badge{margin-left:0}.list-item.course-item .item-actions{min-width:9rem;max-width:100%}.item-avatar{width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;margin-right:1.5rem;color:#fefffe;flex-shrink:0;overflow:hidden}.item-avatar img{width:100%;height:100%;object-fit:cover}.item-avatar.pink{background:#fe98cc}.item-avatar.blue{background:#54b4f0}.item-avatar.yellow{background:#fecc01;color:#1a1b1b}.item-avatar.purple{background:#8e53bc}.item-avatar.green{background:#31d05b}.item-avatar.course-icon{font-size:1.5rem;margin-top:.25rem}.item-info{flex:1 1;display:flex;flex-direction:column;gap:.5rem}.item-header{display:flex;align-items:flex-start;margin-bottom:.25rem}.item-name{font-weight:600;color:#fefffe;font-size:1.1rem;line-height:1.3}.item-id{display:inline-flex;align-items:center;flex:0 0 auto;font-size:.85rem;color:#b8b8b7;background:rgba(58,58,57,.6);padding:.2rem .5rem;border-radius:8px;margin-top:.25rem;white-space:nowrap;width:-moz-fit-content;width:fit-content}.item-detail{font-size:.9rem;color:#b8b8b7;line-height:1.4}.item-meta{display:flex;align-items:center;gap:.5rem;flex-wrap:nowrap}.course-description{max-width:65ch;margin:0}.course-dates{display:flex;flex-direction:column;align-items:flex-start;gap:.3rem;margin-top:.15rem}.date-info{display:block;color:#b8b8b7;font-size:.85rem;line-height:1.35}.course-links{display:flex;flex-wrap:wrap;gap:.5rem .75rem;margin-top:.15rem}.course-link{color:#54b4f0;font-size:.85rem;font-weight:600;text-decoration:none}.course-link:hover{color:rgb(55.0056925996%,80.265654649%,96.0531309298%);text-decoration:underline}.credential-badge,.status-badge{padding:.3rem .8rem;border-radius:15px;font-size:.75rem;font-weight:600;text-transform:capitalize;color:#fefffe;display:inline-flex;align-items:center;justify-content:center;margin-left:1rem}.credential-badge.blue,.status-badge.blue{background:#54b4f0}.credential-badge.purple,.status-badge.purple{background:#8e53bc}.credential-badge.pink,.status-badge.pink{background:#fe98cc}.credential-badge.yellow,.status-badge.yellow{background:#fecc01;color:#1a1b1b}.credential-badge.red,.status-badge.red{background:#ef4444}.credential-badge.green,.status-badge.green{background:#31d05b}.item-actions{display:flex;flex-direction:column;gap:.5rem;align-items:flex-end;justify-content:center}.action-btn,.add-btn{padding:.5rem 1rem;border:none;border-radius:20px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .3s ease-in-out;font-family:Work Sans,sans-serif;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.25rem;text-align:center}.action-btn.pink,.add-btn.pink{background:#fe98cc;color:#fefffe}.action-btn.pink:hover,.add-btn.pink:hover{background:rgb(99.8001508296%,79.4155354449%,89.8076923077%);transform:translateY(-2px)}.action-btn.blue,.add-btn.blue{background:#54b4f0;color:#fefffe}.action-btn.blue:hover,.add-btn.blue:hover{background:rgb(51.3282732448%,78.6527514231%,95.7305502846%);transform:translateY(-2px)}.action-btn.yellow,.add-btn.yellow{background:#fecc01;color:#1a1b1b}.action-btn.yellow:hover,.add-btn.yellow:hover{background:rgb(99.6862745098%,84%,20.3137254902%);transform:translateY(-2px)}.action-btn.red,.add-btn.red{background:#ef4444;color:#fefffe}.action-btn.red:hover,.add-btn.red:hover{background:hsl(0,84.236453202%,70.1960784314%);transform:translateY(-2px)}.action-btn.green,.add-btn.green{background:#31d05b;color:#fefffe}.action-btn.green:hover,.add-btn.green:hover{background:rgb(35.5002712547%,85.2840424707%,48.6507013873%);transform:translateY(-2px)}.action-btn.purple,.add-btn.purple{background:#8e53bc;color:#fefffe}.action-btn.purple:hover,.add-btn.purple:hover{background:rgb(65.1423414554%,46.9423250472%,79.3321847567%);transform:translateY(-2px)}.action-btn.purple:active,.add-btn.purple:active{background:rgb(60.4143079826%,39.7456723275%,76.5288374764%)}.action-btn.outline,.add-btn.outline{background:rgba(0,0,0,0);color:#8a8a89;border:2px solid #6a6a69}.action-btn.outline:hover,.add-btn.outline:hover{background:#3a3a39;border-color:#8a8a89;transform:translateY(-2px)}.action-btn:active,.add-btn:active{transform:translateY(0)}.subscription-groups{padding:0 1rem 1rem}.subscription-group{margin-bottom:2rem}.subscription-group:last-child{margin-bottom:0}.group-header{padding:1rem 1rem .5rem;border-bottom:2px solid #3a3a39;margin-bottom:.5rem}.group-header .group-title-section{display:flex;align-items:center;gap:.75rem}.group-header .group-title-section h3{font-size:1.1rem;font-weight:600;color:#fefffe;margin:0}.group-header .group-count{font-size:.85rem;color:#b8b8b7;font-weight:500;background:#3a3a39;padding:.25rem .75rem;border-radius:15px}@media(max-width:768px){.home-container{padding:1rem}.list-header{padding:1rem 1.25rem}.list-header h2{font-size:1.25rem}.header-content{flex-direction:row;align-items:center;gap:.5rem}.header-content .header-title-section{flex:1 1}.list-item{padding:1rem 1.25rem;flex-direction:column;align-items:flex-start;gap:.75rem}.list-item.course-item{grid-template-columns:auto minmax(0,1fr)}.list-item.course-item .item-actions{grid-column:1/-1;width:100%;min-width:0;flex-direction:row;flex-wrap:wrap;align-items:stretch}.list-item.course-item .item-actions .action-btn{flex:1 1 9rem}}.navbar{display:flex;align-items:center;justify-content:space-between;height:80px;position:fixed;z-index:100;top:0;width:100%;background-color:#1b1b1a}.navbar .svg{cursor:pointer}.navbar button{background:none;border:none;cursor:pointer}.navbar p{font-family:Robot Crush}.navbar .left,.navbar .right{display:flex;height:100%}.navbar .left a p,.navbar .right a p{font-size:1.5rem;font-family:Robot Crush;color:#fff}.navbar .left a p span,.navbar .right a p span{display:inline-block;transition:color .3s ease,transform .3s ease}.navbar .left a p span:hover,.navbar .right a p span:hover{transform:translateY(-3px)}.navbar .left a p span:first-child:hover,.navbar .right a p span:first-child:hover{color:#fff}.navbar .left a p span:nth-child(2):hover,.navbar .right a p span:nth-child(2):hover{color:#5bcefa}.navbar .left a p span:nth-child(3):hover,.navbar .right a p span:nth-child(3):hover{color:#f5a9b8}.navbar .left a p span:nth-child(4):hover,.navbar .right a p span:nth-child(4):hover{color:#fff}.navbar .left a p span:nth-child(5):hover,.navbar .right a p span:nth-child(5):hover{color:#f5a9b8}.navbar .left a p span:nth-child(6):hover,.navbar .right a p span:nth-child(6):hover{color:#5bcefa}.navbar .left a p span:nth-child(7):hover,.navbar .right a p span:nth-child(7):hover{color:#e40303}.navbar .left a p span:nth-child(8):hover,.navbar .right a p span:nth-child(8):hover{color:#ff8c00}.navbar .left a p span:nth-child(9):hover,.navbar .right a p span:nth-child(9):hover{color:#ffed00}.navbar .left a p span:nth-child(10):hover,.navbar .right a p span:nth-child(10):hover{color:#008026}.navbar .left a p span:nth-child(11):hover,.navbar .right a p span:nth-child(11):hover{color:#24408e}.navbar .left a p span:nth-child(12):hover,.navbar .right a p span:nth-child(12):hover{color:#732982}.navbar .left a p span:nth-child(13):hover,.navbar .right a p span:nth-child(13):hover{color:#e40303}.navbar .left a p span:nth-child(14):hover,.navbar .right a p span:nth-child(14):hover{color:#ff8c00}.navbar .left a p span:nth-child(15):hover,.navbar .right a p span:nth-child(15):hover{color:#ffed00}.navbar .left a p span:active:first-child,.navbar .left a p span:active~span:first-child,.navbar .right a p span:active:first-child,.navbar .right a p span:active~span:first-child{color:#fff}.navbar .left a p span:active:nth-child(2),.navbar .left a p span:active~span:nth-child(2),.navbar .right a p span:active:nth-child(2),.navbar .right a p span:active~span:nth-child(2){color:#5bcefa}.navbar .left a p span:active:nth-child(3),.navbar .left a p span:active~span:nth-child(3),.navbar .right a p span:active:nth-child(3),.navbar .right a p span:active~span:nth-child(3){color:#f5a9b8}.navbar .left a p span:active:nth-child(4),.navbar .left a p span:active~span:nth-child(4),.navbar .right a p span:active:nth-child(4),.navbar .right a p span:active~span:nth-child(4){color:#fff}.navbar .left a p span:active:nth-child(5),.navbar .left a p span:active~span:nth-child(5),.navbar .right a p span:active:nth-child(5),.navbar .right a p span:active~span:nth-child(5){color:#f5a9b8}.navbar .left a p span:active:nth-child(6),.navbar .left a p span:active~span:nth-child(6),.navbar .right a p span:active:nth-child(6),.navbar .right a p span:active~span:nth-child(6){color:#5bcefa}.navbar .left a p span:active:nth-child(7),.navbar .left a p span:active~span:nth-child(7),.navbar .right a p span:active:nth-child(7),.navbar .right a p span:active~span:nth-child(7){color:#e40303}.navbar .left a p span:active:nth-child(8),.navbar .left a p span:active~span:nth-child(8),.navbar .right a p span:active:nth-child(8),.navbar .right a p span:active~span:nth-child(8){color:#ff8c00}.navbar .left a p span:active:nth-child(9),.navbar .left a p span:active~span:nth-child(9),.navbar .right a p span:active:nth-child(9),.navbar .right a p span:active~span:nth-child(9){color:#ffed00}.navbar .left a p span:active:nth-child(10),.navbar .left a p span:active~span:nth-child(10),.navbar .right a p span:active:nth-child(10),.navbar .right a p span:active~span:nth-child(10){color:#008026}.navbar .left a p span:active:nth-child(11),.navbar .left a p span:active~span:nth-child(11),.navbar .right a p span:active:nth-child(11),.navbar .right a p span:active~span:nth-child(11){color:#24408e}.navbar .left a p span:active:nth-child(12),.navbar .left a p span:active~span:nth-child(12),.navbar .right a p span:active:nth-child(12),.navbar .right a p span:active~span:nth-child(12){color:#732982}.navbar .left a p span:active:nth-child(13),.navbar .left a p span:active~span:nth-child(13),.navbar .right a p span:active:nth-child(13),.navbar .right a p span:active~span:nth-child(13){color:#ffed00}.navbar .left a p span:active:nth-child(14),.navbar .left a p span:active~span:nth-child(14),.navbar .right a p span:active:nth-child(14),.navbar .right a p span:active~span:nth-child(14){color:#fff}.navbar .left a p:has(span:active) span:first-child,.navbar .right a p:has(span:active) span:first-child{color:#fff}.navbar .left a p:has(span:active) span:nth-child(2),.navbar .right a p:has(span:active) span:nth-child(2){color:#5bcefa}.navbar .left a p:has(span:active) span:nth-child(3),.navbar .right a p:has(span:active) span:nth-child(3){color:#f5a9b8}.navbar .left a p:has(span:active) span:nth-child(4),.navbar .right a p:has(span:active) span:nth-child(4){color:#fff}.navbar .left a p:has(span:active) span:nth-child(5),.navbar .right a p:has(span:active) span:nth-child(5){color:#f5a9b8}.navbar .left a p:has(span:active) span:nth-child(6),.navbar .right a p:has(span:active) span:nth-child(6){color:#5bcefa}.navbar .left a p:has(span:active) span:nth-child(7),.navbar .right a p:has(span:active) span:nth-child(7){color:#e40303}.navbar .left a p:has(span:active) span:nth-child(8),.navbar .right a p:has(span:active) span:nth-child(8){color:#ff8c00}.navbar .left a p:has(span:active) span:nth-child(9),.navbar .right a p:has(span:active) span:nth-child(9){color:#ffed00}.navbar .left a p:has(span:active) span:nth-child(10),.navbar .right a p:has(span:active) span:nth-child(10){color:#008026}.navbar .left a p:has(span:active) span:nth-child(11),.navbar .right a p:has(span:active) span:nth-child(11){color:#24408e}.navbar .left a p:has(span:active) span:nth-child(12),.navbar .right a p:has(span:active) span:nth-child(12){color:#732982}.navbar .left a p:has(span:active) span:nth-child(13),.navbar .right a p:has(span:active) span:nth-child(13){color:#ffed00}.navbar .left a p:has(span:active) span:nth-child(14),.navbar .right a p:has(span:active) span:nth-child(14){color:#fff}.navbar .left{width:250px;margin-left:20px;margin-top:50px}.navbar .right{width:100px;justify-content:center;align-items:center}.navbar .right .power{height:45px;width:45px;margin-top:10px;margin-left:30px;margin-right:40px}.navbar .right .power path{transition:fill .2s ease}.navbar .right .power:hover path{fill:#5bcefa}.navbar .right .power:active path{fill:#f5a9b8}@media(max-width:600px){.navbar .left{margin-left:30px;margin-top:60px}.navbar .left a p{font-size:1.7rem}.navbar .power{scale:1.2;margin-right:20px}}.edit-page{min-height:calc(100vh - 80px);margin-top:80px;padding:2rem 1rem 4rem;display:flex;justify-content:center;align-items:flex-start}.edit-page>.section{width:min(100%,840px);margin:0;transform:none}.edit-page>.section:hover{transform:none}.profile-form{flex-direction:column;padding:1.5rem;width:min(100%,720px);margin:0 auto}.form-row,.profile-form{display:flex;gap:1rem}.form-row .form-field{flex:1 1}.form-field{display:flex;flex-direction:column;gap:.4rem}.form-field label{font-size:.85rem;font-weight:600;color:#b8b8b7}.form-field input,.form-field select,.form-field textarea{background:#1b1b1a;border:2px solid #3a3a39;border-radius:12px;padding:.6rem .9rem;color:#fefffe;font-size:.95rem;font-family:Work Sans,sans-serif;transition:all .3s ease-in-out}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:#54b4f0}.form-field input:disabled,.form-field select:disabled,.form-field textarea:disabled{opacity:.5;cursor:not-allowed}.form-field textarea{min-height:90px;resize:vertical}.form-field select{cursor:pointer}.form-actions{display:flex;gap:.75rem;align-items:center;margin-top:.5rem;flex-wrap:wrap}.form-error{color:#ef4444;font-size:.9rem;font-weight:600}.role-select{background:#1b1b1a;border:2px solid #3a3a39;border-radius:10px;padding:.35rem .6rem;color:#fefffe;font-size:.85rem;font-family:Work Sans,sans-serif;cursor:pointer;margin-bottom:.25rem}.role-select:focus{outline:none;border-color:#fe98cc}.enroll-teacher-box{display:flex;gap:.75rem;align-items:center;padding:1rem 1.25rem;border-top:2px solid #3a3a39;margin-top:.5rem}.enroll-teacher-box select{flex:1 1}.course-detail-section,.course-form-section{border-color:rgba(84,180,240,.3)}.roster-section{margin-top:1.5rem}@media(max-width:768px){.form-row{flex-direction:column}}.user-form-section{border-color:rgba(254,152,204,.3)}.user-form-section .list-header{padding:1.25rem 1.5rem}.user-form-section .user-item{display:flex;align-items:flex-start;gap:1rem;padding:1.5rem}.user-form-section .user-item .item-avatar{width:70px;height:70px;font-size:1.5rem;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center}.user-form-section .user-item .item-avatar img{width:100%;height:100%;object-fit:cover}.user-form-section .user-item .item-info{flex:1 1;display:flex;flex-direction:column;gap:.25rem}.user-form-section .user-item .item-info .item-name{font-size:1.25rem;font-weight:600;color:#fefffe}.user-form-section .user-item .item-info .item-detail{font-size:.9rem;color:#b8b8b7}.user-form-section .user-item .item-actions{display:flex;flex-direction:column;gap:.5rem}.user-form-section .user-item .item-actions .action-btn{padding:.5rem 1rem;border-radius:20px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease-in-out}.user-form-section .user-item .item-actions .action-btn.blue{background:#54b4f0;color:#fefffe}.user-form-section .user-item .item-actions .action-btn.blue:hover{background:rgb(51.3282732448%,78.6527514231%,95.7305502846%);transform:translateY(-2px)}.user-form-section .user-item .item-actions .action-btn.outline.danger{border:2px solid #ef4444;color:#ef4444;background:rgba(0,0,0,0)}.user-form-section .user-item .item-actions .action-btn.outline.danger:hover{background:rgba(239,68,68,.1);border-color:hsl(0,84.236453202%,70.1960784314%);transform:translateY(-2px)}@media(max-width:768px){.user-item{flex-direction:column;align-items:flex-start}.user-item .item-actions{flex-direction:row;justify-content:flex-end;width:100%}}@import"https://fonts.googleapis.com/css2?family=Work+Sans:ital,wght@0,100..900;1,100..900&display=swap";*{margin:0;padding:0;box-sizing:border-box}@font-face{font-family:Robot Crush;src:url(/fonts/Robot\ Crush.ttf) format("truetype");font-display:swap}body,html{font-family:Work Sans,sans-serif}button,input,select,textarea{font:inherit}.classroom-page{min-height:100vh;background:#1b1b1a;font-family:Work Sans,sans-serif;color:#fefffe;padding:2rem;margin-top:80px}@media(max-width:768px){.classroom-page{padding:1rem}}.classroom-header{max-width:1200px;margin:0 auto;border-radius:20px;padding:2rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;border:2px solid rgba(0,0,0,0);box-shadow:0 4px 20px rgba(0,0,0,.3)}.classroom-header.blue-header{background:linear-gradient(135deg,rgba(84,180,240,.25),rgba(84,180,240,.08));border-color:rgba(84,180,240,.3)}.classroom-header.pink-header{background:linear-gradient(135deg,rgba(254,152,204,.25),rgba(254,152,204,.08));border-color:rgba(254,152,204,.3)}.classroom-header .classroom-title{display:flex;align-items:center;gap:1.25rem}.classroom-header .classroom-title .classroom-icon{font-size:2.5rem}.classroom-header .classroom-title h1{font-size:1.9rem;font-weight:700;margin-bottom:.25rem}@media(max-width:768px){.classroom-header{flex-direction:column;align-items:flex-start}}.classroom-tabs{max-width:1200px;margin:1.5rem auto 0;display:flex;gap:.75rem;flex-wrap:wrap}.classroom-tab{display:flex;align-items:center;gap:.5rem;padding:.65rem 1.4rem;border-radius:25px;border:2px solid #3a3a39;background:#2a2a29;color:#b8b8b7;font-size:1rem;font-weight:600;font-family:Work Sans,sans-serif;cursor:pointer;transition:all .3s ease-in-out}.classroom-tab:hover{background:#323231;color:#fefffe;transform:translateY(-2px)}.classroom-tab.active.pink{background:rgba(254,152,204,.85);border-color:#fe98cc;color:#fefffe}.classroom-tab.active.yellow{background:rgba(254,204,1,.9);border-color:#fecc01;color:#1a1b1b}.classroom-tab.active.green{background:rgba(49,208,91,.85);border-color:#31d05b;color:#fefffe}.classroom-tab.active.blue{background:rgba(84,180,240,.85);border-color:#54b4f0;color:#fefffe}.classroom-tab.active.purple{background:rgba(142,83,188,.85);border-color:#8e53bc;color:#fefffe}.classroom-tab.active{box-shadow:0 4px 20px rgba(0,0,0,.3)}.classroom-content{max-width:1200px;margin:1.5rem auto 0}.aula-tab{display:flex;flex-direction:column;gap:1.5rem}.post-composer-toggle{display:flex;justify-content:flex-end}.post-composer{background:#2a2a29;border:2px solid rgba(254,152,204,.3);border-radius:20px;padding:1.25rem}.post-composer .post-composer-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.post-feed{display:flex;flex-direction:column;gap:1.25rem}.post-card{background:#2a2a29;border-radius:20px;border:2px solid rgba(0,0,0,0);padding:1.5rem;transition:all .3s ease-in-out;box-shadow:0 4px 20px rgba(0,0,0,.3)}.post-card:hover{transform:translateY(-2px);background:#323231}.post-card.pink-post{border-color:rgba(254,152,204,.3)}.post-card.yellow-post{border-color:rgba(254,204,1,.3)}.post-card.purple-post{border-color:rgba(142,83,188,.3)}.post-card .post-header{display:flex;gap:1rem;align-items:flex-start}.post-card .post-header .post-meta{flex:1 1;display:flex;flex-direction:column;gap:.25rem}.post-card .post-header .post-title{font-weight:700;font-size:1.15rem;color:#fefffe}.post-card .post-body{margin-top:1rem;color:#b8b8b7;line-height:1.6;white-space:pre-wrap}.post-card .post-deadline{display:flex;gap:1rem;margin-top:.75rem;flex-wrap:wrap}.post-card .post-deadline .date-info{background:rgba(58,58,57,.5);padding:.3rem .8rem;border-radius:15px;font-size:.85rem;font-weight:500}.post-card .post-deadline .date-info.late{color:#ef4444;border:1px solid rgba(239,68,68,.5)}.post-edit-form{margin-top:1rem;display:flex;flex-direction:column;gap:.75rem}.attachment-list,.post-attachments{list-style:none;display:flex;flex-direction:column;gap:.45rem;margin-top:.85rem}.attachment-list a,.post-attachments a{color:#54b4f0;text-decoration:none}.attachment-list a:hover,.post-attachments a:hover{text-decoration:underline}.attachment-picker{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem}.attachment-input-label{width:-moz-fit-content;width:fit-content;border:2px dashed #6a6a69;border-radius:12px;padding:.55rem .8rem;color:#b8b8b7;cursor:pointer}.attachment-input-label input{display:none}.attachment-list{margin-top:0}.attachment-list li{justify-content:space-between}.attachment-list li,.checkbox-field{display:flex;align-items:center;gap:.5rem}.checkbox-field{color:#b8b8b7;white-space:nowrap}.rubric-editor{display:flex;flex-direction:column;gap:.65rem;margin-top:.75rem}.classroom-subheader,.rubric-editor-header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.rubric-row{display:grid;grid-template-columns:1fr 110px auto;grid-gap:.5rem;gap:.5rem}.rubric-row input{min-width:0}@media(max-width:600px){.rubric-row{grid-template-columns:1fr}}.attendance-tab,.calendar-tab{display:flex;flex-direction:column;gap:1rem}.classroom-subheader{padding:.25rem 0}.classroom-subheader h2,.classroom-subheader h3{margin-bottom:.25rem}.attendance-list,.calendar-list{display:flex;flex-direction:column;gap:.75rem}.attendance-session,.calendar-event{background:#2a2a29;border:2px solid rgba(142,83,188,.3);border-radius:16px;padding:1rem 1.25rem}.calendar-event{display:flex;align-items:center;gap:1rem}.calendar-event .calendar-event-date{width:76px;flex-shrink:0;display:flex;flex-direction:column;color:#8e53bc}.calendar-event .calendar-event-date span{color:#b8b8b7;font-size:.85rem}.calendar-event .calendar-event-content{flex:1 1}.calendar-event .calendar-event-content h3{margin-top:.4rem}.calendar-event .calendar-event-content p{color:#b8b8b7;margin-top:.3rem}@media(max-width:600px){.calendar-event{align-items:flex-start;flex-wrap:wrap}}.attendance-form .form-row{align-items:flex-end}.attendance-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid #3a3a39;padding:.75rem 0}.attendance-row select{background:#1b1b1a;border:2px solid #3a3a39;border-radius:10px;color:#fefffe;padding:.4rem .6rem}.item-avatar.small{width:36px;height:36px;font-size:.8rem;margin-right:0}.action-btn.small{padding:.3rem .7rem;font-size:.8rem}.comments-toggle{margin-top:1rem}.comments-section{margin-top:1rem;border-top:2px solid #3a3a39;padding-top:1rem}.comments-section .comments-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;font-weight:600}.comment-list{list-style:none;display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.comment-item{display:flex;gap:.75rem;align-items:flex-start}.comment-item .comment-content{flex:1 1;background:#1b1b1a;border-radius:14px;padding:.75rem 1rem}.comment-item .comment-content .comment-meta{display:flex;gap:.75rem;align-items:baseline;margin-bottom:.25rem}.comment-item .comment-content .comment-meta .comment-author{font-weight:600;font-size:.9rem;color:#fe98cc}.comment-item .comment-content .comment-meta .comment-date{font-size:.75rem;color:#b8b8b7}.comment-item .comment-content .comment-body{font-size:.95rem;color:#b8b8b7;line-height:1.5;white-space:pre-wrap}.comment-form{display:flex;gap:.5rem}.comment-form input{flex:1 1;background:#1b1b1a;border:2px solid #3a3a39;border-radius:12px;padding:.6rem .9rem;color:#fefffe;font-family:Work Sans,sans-serif}.comment-form input:focus{outline:none;border-color:#54b4f0}.assignments-tab .post-feed{gap:1.5rem}.assignments-tab .staff-summary{display:flex;gap:.75rem;margin-top:.75rem;flex-wrap:wrap}.submission-box{margin-top:1rem;background:#1b1b1a;border-radius:16px;padding:1rem}.submission-box .submission-form{display:flex;flex-direction:column;gap:.75rem;margin-top:.75rem}.submission-box .submission-form textarea{background:#2a2a29;border:2px solid #3a3a39;border-radius:12px;padding:.6rem .9rem;color:#fefffe;min-height:80px;font-family:Work Sans,sans-serif;resize:vertical}.submission-box .submission-form textarea:focus{outline:none;border-color:#54b4f0}.submission-box .submission-form .form-row{display:flex;gap:.75rem}.submission-box .submission-form .form-row input{flex:1 1;background:#2a2a29;border:2px solid #3a3a39;border-radius:12px;padding:.6rem .9rem;color:#fefffe;font-family:Work Sans,sans-serif}.submission-box .submission-form .form-row input:focus{outline:none;border-color:#54b4f0}.feedback-box{margin-top:.75rem;background:rgba(49,208,91,.1);border:1px solid rgba(49,208,91,.4);border-radius:12px;padding:.75rem 1rem}.feedback-box.graded{background:rgba(58,58,57,.4);border-color:rgba(106,106,105,.5)}.staff-submissions{margin-top:1rem}.staff-submissions-empty{padding:.75rem 0}.staff-submission{background:#1b1b1a;border-radius:14px;margin-bottom:.75rem}.grade-box{display:flex;flex-direction:column;gap:.5rem;min-width:200px}.grade-box input{background:#2a2a29;border:2px solid #3a3a39;border-radius:10px;padding:.5rem .75rem;color:#fefffe;font-family:Work Sans,sans-serif}.grade-box input:focus{outline:none;border-color:#31d05b}@media(max-width:768px){.grade-box{width:100%;min-width:0}}.rubric-score-box{display:flex;flex-direction:column;gap:.4rem;border-top:1px solid #3a3a39;padding-top:.5rem}.rubric-score-box label{display:flex;align-items:center;justify-content:space-between;gap:.5rem;color:#b8b8b7;font-size:.8rem}.rubric-score-box input{width:72px;background:#2a2a29;border:2px solid #3a3a39;border-radius:8px;color:#fefffe;padding:.3rem}.gradebook{background:#2a2a29;border-radius:20px;border:2px solid rgba(49,208,91,.3);overflow:hidden}.gradebook-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem 1.5rem;border-bottom:2px solid #3a3a39}.gradebook-toolbar h2{font-size:1.2rem;margin-bottom:.25rem}@media(max-width:600px){.gradebook-toolbar{align-items:flex-start;flex-direction:column}}.gradebook-table-wrap{overflow-x:auto}.gradebook-table{width:100%;border-collapse:collapse;font-size:.9rem}.gradebook-table th{background:rgba(49,208,91,.15);color:#fefffe;font-weight:600;padding:.85rem 1rem;text-align:center;white-space:nowrap;border-bottom:2px solid #3a3a39}.gradebook-table td{padding:.85rem 1rem;text-align:center;border-bottom:1px solid #3a3a39;color:#b8b8b7}.gradebook-table tbody tr{transition:all .3s ease-in-out}.gradebook-table tbody tr:hover{background:#323231}.gradebook-table .gradebook-name-col{text-align:left;white-space:nowrap}.gradebook-table .gradebook-name-col .gradebook-name{display:block;font-weight:600;color:#fefffe}.gradebook-table .grade-cell{display:inline-flex;align-items:center;gap:.35rem}.gradebook-table .grade-cell .grade-score{font-weight:700;font-size:1.05rem;color:#fefffe}.gradebook-table .grade-cell.graded .grade-score{color:#31d05b}.gradebook-table .grade-feedback{cursor:help}.gradebook-table .grade-missing{color:#6a6a69}.gradebook-table .grade-total{font-weight:700;color:#fecc01}.gradebook-note{padding:.75rem 1rem}.people-tab .subscription-group{background:#2a2a29;border-radius:20px;padding:1rem 0 1.25rem;border:2px solid rgba(84,180,240,.3)}.people-tab .subscription-group .group-header{padding:0 1.25rem .75rem;border-bottom:2px solid #3a3a39;margin-bottom:.5rem}.people-tab .people-empty{padding:.5rem 1.25rem}.course-deadline-pill{margin-top:.5rem;display:flex;gap:.5rem;flex-wrap:wrap}.course-deadline-pill .status-badge{margin-left:0}@media(max-width:768px){.classroom-header{padding:1.25rem}.staff-submission{flex-direction:column;align-items:flex-start}.grade-box{width:100%}}