@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--color-primary:#304ffe;--color-primary-hover:#5370ff;--color-background:#121212;--color-background-secondary:#1e1e1e;--color-text:#fff;--color-text-secondary:#f5f5f5;--color-success:#4caf50;--color-error:#ff4d4d;--border-radius:8px;--shadow:0 2px 4px #0003;--transition:all 0.3s ease}:root[data-theme=light]{--color-primary:#3b82f6;--color-primary-hover:#2563eb;--color-background:#f3f4f6;--color-background-secondary:#fff;--color-text:#111827;--color-text-secondary:#4b5563;--color-success:#4caf50;--color-error:#ff4d4d;--border-radius:8px;--shadow:0 2px 4px #0000001a;--transition:all 0.3s ease;--color-text-link:#3b82f6;--color-text-link-hover:#2563eb;--color-acerca-de-bg:#fff;--color-acerca-de-text:#333;--color-acerca-de-border:#ddd;--color-acerca-de-icon:#555}:root[data-theme=light] .logo{color:#3b82f6!important}:root[data-theme=light] .header-nav a,:root[data-theme=light] .login-button,:root[data-theme=light] .register-button{color:#fff;color:var(--color-text)}:root[data-theme=light] .header-nav a:hover,:root[data-theme=light] .login-button:hover,:root[data-theme=light] .register-button:hover{background-color:#5370ff;background-color:var(--color-primary-hover);color:#fff}:root[data-theme=light] .admin-modal-content,:root[data-theme=light] .advanced-search-options,:root[data-theme=light] .auth-modal-content,:root[data-theme=light] .reset-password-modal-content,:root[data-theme=light] input[type=email],:root[data-theme=light] input[type=password],:root[data-theme=light] input[type=text],:root[data-theme=light] select,:root[data-theme=light] textarea{background-color:#fff;border-color:#aaa;color:#333}:root[data-theme=light] input[type=email]:focus,:root[data-theme=light] input[type=password]:focus,:root[data-theme=light] input[type=text]:focus,:root[data-theme=light] select:focus,:root[data-theme=light] textarea:focus{border-color:#304ffe;border-color:var(--color-primary);box-shadow:0 0 0 3px #3b82f633}:root[data-theme=light] .admin-modal label,:root[data-theme=light] .auth-form label,:root[data-theme=light] .form-group label,:root[data-theme=light] .reset-password-form label{color:#333}:root[data-theme=light] .reset-password-form h2,:root[data-theme=light] .reset-password-page h2{color:#000}:root[data-theme=light] .auth-modal-content button,:root[data-theme=light] .reset-password-modal-content button{background-color:#304ffe;background-color:var(--color-primary);color:#fff}:root[data-theme=light] .auth-modal-content button:hover,:root[data-theme=light] .reset-password-modal-content button:hover{background-color:#5370ff;background-color:var(--color-primary-hover)}:root[data-theme=light] .auth-separator{color:#777}:root[data-theme=light] .auth-separator:after,:root[data-theme=light] .auth-separator:before{background-color:#bbb}:root[data-theme=light] .text-content{background-color:var(--color-acerca-de-bg);border:1px solid var(--color-acerca-de-border);color:var(--color-acerca-de-text)}:root[data-theme=light] .icon{color:var(--color-acerca-de-icon)}:root[data-theme=light] .icon:hover{color:#5370ff;color:var(--color-primary-hover)}:root[data-theme=light] .admin-modal-content,:root[data-theme=light] .auth-modal-content,:root[data-theme=light] .reset-password-modal-content{background-color:#fff;color:#333}:root[data-theme=light] .auth-close,:root[data-theme=light] .back-button{color:#555}:root[data-theme=light] .auth-close:hover,:root[data-theme=light] .back-button:hover{background-color:#eee;color:#000}:root[data-theme=light] .auth-toggle a,:root[data-theme=light] .reset-password-link{color:#304ffe;color:var(--color-primary)}:root[data-theme=light] .auth-toggle a:hover,:root[data-theme=light] .reset-password-link:hover{text-decoration:underline}:root[data-theme=light] .reset-email-sent{color:#4caf50;color:var(--color-success)}:root[data-theme=light] .admin-modal button.delete-button{background-color:#ff4d4d;background-color:var(--color-error)}:root[data-theme=light] .admin-modal button.delete-button:hover{background-color:darkred}:root[data-theme=light] .toggle-password-icon{color:#777}:root[data-theme=light] .toggle-password-icon:hover{color:#333}:root[data-theme=light] .back-button{background-color:initial;color:#fff;color:var(--color-text)}:root[data-theme=light] .back-button:hover{background-color:#f1f1f1;color:#fff}:root[data-theme=udg]{--color-primary:#d32f2f;--color-primary-hover:#b71c1c;--color-background:#000;--color-background-secondary:#1e1e1e;--color-text:gold;--color-text-secondary:#ffeb3b;--color-success:#4caf50;--color-error:#ff4d4d;--border-radius:8px;--shadow:0 2px 4px #0003;--transition:all 0.3s ease;--color-text-link:gold;--color-text-link-hover:#ffeb3b;--color-acerca-de-bg:#1e1e1e;--color-acerca-de-text:gold;--color-acerca-de-border:#ffeb3b;--color-acerca-de-icon:gold}:root[data-theme=udg] .logo{color:gold!important}:root[data-theme=udg] .header-nav a,:root[data-theme=udg] .login-button,:root[data-theme=udg] .register-button{color:#fff;color:var(--color-text)}:root[data-theme=udg] .header-nav a:hover,:root[data-theme=udg] .login-button:hover,:root[data-theme=udg] .register-button:hover{background-color:#5370ff;background-color:var(--color-primary-hover);color:#fff}:root[data-theme=udg] .admin-modal-content,:root[data-theme=udg] .advanced-search-options,:root[data-theme=udg] .auth-modal-content,:root[data-theme=udg] .reset-password-modal-content,:root[data-theme=udg] input[type=email],:root[data-theme=udg] input[type=password],:root[data-theme=udg] input[type=text],:root[data-theme=udg] select,:root[data-theme=udg] textarea{background-color:#1e1e1e;border-color:gold;color:gold}:root[data-theme=udg] input[type=email]:focus,:root[data-theme=udg] input[type=password]:focus,:root[data-theme=udg] input[type=text]:focus,:root[data-theme=udg] select:focus,:root[data-theme=udg] textarea:focus{border-color:#304ffe;border-color:var(--color-primary);box-shadow:0 0 0 3px #d32f2f33}:root[data-theme=udg] .admin-modal label,:root[data-theme=udg] .auth-form label,:root[data-theme=udg] .form-group label,:root[data-theme=udg] .reset-password-form h2,:root[data-theme=udg] .reset-password-form label,:root[data-theme=udg] .reset-password-page h2{color:gold}:root[data-theme=udg] .auth-modal-content button,:root[data-theme=udg] .reset-password-modal-content button{background-color:#304ffe;background-color:var(--color-primary);color:#fff}:root[data-theme=udg] .auth-modal-content button:hover,:root[data-theme=udg] .reset-password-modal-content button:hover{background-color:#5370ff;background-color:var(--color-primary-hover)}:root[data-theme=udg] .auth-separator{color:#ffeb3b}:root[data-theme=udg] .auth-separator:after,:root[data-theme=udg] .auth-separator:before{background-color:gold}:root[data-theme=udg] .text-content{background-color:var(--color-acerca-de-bg);border:1px solid var(--color-acerca-de-border);color:var(--color-acerca-de-text)}:root[data-theme=udg] .icon{color:var(--color-acerca-de-icon)}:root[data-theme=udg] .icon:hover{color:#5370ff;color:var(--color-primary-hover)}:root[data-theme=udg] .admin-modal-content,:root[data-theme=udg] .auth-modal-content,:root[data-theme=udg] .reset-password-modal-content{background-color:#1e1e1e;color:gold}:root[data-theme=udg] .auth-close,:root[data-theme=udg] .back-button{color:gold}:root[data-theme=udg] .auth-close:hover,:root[data-theme=udg] .back-button:hover{background-color:#b71c1c;color:#ffeb3b}:root[data-theme=udg] .auth-toggle a,:root[data-theme=udg] .reset-password-link{color:#304ffe;color:var(--color-primary)}:root[data-theme=udg] .auth-toggle a:hover,:root[data-theme=udg] .reset-password-link:hover{text-decoration:underline}:root[data-theme=udg] .reset-email-sent{color:#4caf50;color:var(--color-success)}:root[data-theme=udg] .admin-modal button.delete-button{background-color:#ff4d4d;background-color:var(--color-error)}:root[data-theme=udg] .admin-modal button.delete-button:hover{background-color:darkred}:root[data-theme=udg] .toggle-password-icon{color:gold}:root[data-theme=udg] .toggle-password-icon:hover{color:#ffeb3b}:root[data-theme=udg] .back-button{background-color:initial;color:#fff;color:var(--color-text)}:root[data-theme=udg] .back-button:hover{background-color:#b71c1c;color:#fff}:root[data-theme=udg] .app-header{background-color:#000;border-bottom:2px solid gold;color:gold}body{background-color:#121212;background-color:var(--color-background);color:#fff;color:var(--color-text);font-family:Inter,sans-serif;line-height:1.6;margin:0}a{color:#304ffe;color:var(--color-primary);text-decoration:none;transition:all .3s ease;transition:var(--transition)}a:hover{color:#5370ff;color:var(--color-primary-hover);text-decoration:underline}button{background-color:#304ffe;background-color:var(--color-primary);border:none;border-radius:8px;border-radius:var(--border-radius);color:#fff;color:var(--color-text);cursor:pointer;font-family:inherit;font-size:1rem;padding:10px 16px;transition:background-color .2s ease,transform .2s ease,box-shadow .2s ease}button:hover{background-color:#5370ff;background-color:var(--color-primary-hover);box-shadow:0 4px 6px #0000001a;transform:translateY(-2px)}button:disabled{background-color:#666;cursor:not-allowed}input[type=email],input[type=password],input[type=text],select,textarea{background-color:#1e1e1e;background-color:var(--color-background-secondary);border:1px solid #304ffe;border:1px solid var(--color-primary);border-radius:8px;border-radius:var(--border-radius);box-sizing:border-box;color:#fff;color:var(--color-text);font-family:inherit;font-size:1rem;padding:12px;transition:all .3s ease;transition:var(--transition);width:100%}input[type=email]:focus,input[type=password]:focus,input[type=text]:focus,select:focus,textarea:focus{border-color:#5370ff;border-color:var(--color-primary-hover);box-shadow:0 0 0 3px #304ffe33;outline:none}.app-container{display:flex;flex-direction:column;min-height:100vh}.content{flex:1 1;padding:2rem 1rem}.app-header{background-color:#1e1e1e;background-color:var(--color-background-secondary);border-bottom:2px solid #304ffe;border-bottom:2px solid var(--color-primary);justify-content:space-between;padding:.75rem 1rem;position:sticky;top:0;z-index:100}.app-header,.header-left{align-items:center;display:flex}.header-left{flex:1 1;gap:.75rem}.header-right{align-items:center;display:flex;gap:1rem}.logo{color:#fff;color:#fff!important;font-size:1.2rem;font-weight:700;text-decoration:none;white-space:nowrap}.logo.animate-logo{transform:none!important}.header-nav{align-items:center;display:none;gap:.5rem;margin-left:auto}@media (min-width:768px){.header-nav{display:flex}}.header-nav a{border-radius:8px;border-radius:var(--border-radius);color:#f5f5f5;color:var(--color-text-secondary);font-size:.9rem;padding:.5rem .75rem;text-decoration:none;transition:all .3s ease;transition:var(--transition);white-space:nowrap}.header-nav a:hover{font-weight:700;text-decoration:none}.header-nav a.active,.header-nav a:hover{background-color:#5370ff;background-color:var(--color-primary-hover);color:#fff;color:var(--color-text)}.header-nav a.active{font-weight:600}.profile-section{align-items:center;display:flex;flex-direction:column;gap:1rem;position:relative}.profile-picture{border-radius:50%;height:100%;margin:0 auto;object-fit:cover;overflow:hidden;width:100%}.settings-button{background:none;border:none;border-radius:8px;border-radius:var(--border-radius);color:#fff;color:var(--color-text);cursor:pointer;font-size:1.2rem;margin-right:.5rem;padding:.25rem}.settings-button:hover{background-color:#5370ff;background-color:var(--color-primary-hover)}.settings-dropdown{background-color:#1e1e1e;background-color:var(--color-background-secondary);border:1px solid #304ffe;border:1px solid var(--color-primary);box-shadow:0 2px 4px #0003;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:.25rem;min-width:160px;opacity:0;padding:.5rem;pointer-events:none;position:absolute;right:0;top:100%;transition:opacity .3s ease,pointer-events .3s ease;width:auto;z-index:10}.settings-dropdown.open{opacity:1;pointer-events:auto}.settings-dropdown a,.settings-dropdown button{text-align:center;width:100%}.logout-button{border-radius:8px;border-radius:var(--border-radius);padding:.5rem;text-align:left;width:100%}.universities-section{padding:1rem;text-align:center}.universities-list{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;list-style:none;padding:0}.regional-list a,.university-link{background-color:#1e1e1e;background-color:var(--color-background-secondary);border:2px solid #0000;border-radius:8px;border-radius:var(--border-radius);box-sizing:border-box;color:#fff;color:var(--color-text);display:inline-block;flex-grow:1;margin-bottom:0;max-width:300px;min-width:120px;padding:.75rem 1rem;text-align:center;transition:all .3s ease;transition:var(--transition)}.regional-list a:hover,.university-link:hover{background-color:#5370ff;background-color:var(--color-primary-hover);border-color:#5370ff;border-color:var(--color-primary-hover);color:#fff;color:var(--color-text);text-decoration:none}.university-link.active{background-color:#304ffe;background-color:var(--color-primary);color:#fff;color:var(--color-text);font-weight:600}.regionals-dropdown{position:relative}.regional-list{background-color:#1e1e1e;background-color:var(--color-background-secondary);border:1px solid #304ffe;border:1px solid var(--color-primary);border-radius:8px;box-shadow:0 8px 25px #0006;display:flex;flex-direction:column;gap:.25rem;height:0;left:0;list-style:none;margin-top:5px;max-height:220px;min-width:200px;opacity:0;overflow-x:hidden;overflow-y:auto;padding:.5rem;position:absolute;scrollbar-color:#304ffe #1e1e1e;scrollbar-color:var(--color-primary) var(--color-background-secondary);scrollbar-width:thin;top:100%;transform:none;width:100%;z-index:100}.regional-list::-webkit-scrollbar{width:6px}.regional-list::-webkit-scrollbar-track{background:#1e1e1e;background:var(--color-background-secondary);border-radius:3px}.regional-list::-webkit-scrollbar-thumb{background:#304ffe;background:var(--color-primary);border-radius:3px}.regional-list::-webkit-scrollbar-thumb:hover{background:#5370ff;background:var(--color-primary-hover)}.regional-list.open{height:220px;opacity:1}.regional-list li{width:100%}@media (max-width:900px){.regional-list a,.university-link{font-size:.9rem;min-width:100px;padding:.6rem .8rem}}@media (max-width:600px){.universities-list{gap:.4rem}.regional-list a,.university-link{flex-basis:calc(50% - 0.4rem);flex-grow:1;font-size:.85rem;max-width:calc(50% - .2rem);min-width:80px;padding:.5rem .6rem}.regionals-dropdown{flex-basis:auto;flex-grow:1;max-width:calc(50% - .2rem)}.regionals-dropdown>.university-link{max-width:100%;width:100%}.regional-list{max-height:200px}}@media (max-width:400px){.regional-list a,.university-link{font-size:.8rem;min-width:70px;padding:.4rem .5rem}}.search-section{padding:1rem;text-align:center}.adsbygoogle{display:block;height:110px;width:100%}.search-section h2{color:#fff;color:var(--color-text);font-size:1.5rem;margin-bottom:1rem}.search-bar-container{display:flex;gap:.5rem;justify-content:center;margin-bottom:1rem}.search-input{flex:1 1;max-width:400px}.search-button{flex-shrink:0}.advanced-search-link{color:#304ffe;color:var(--color-primary);display:block;margin-top:.5rem;transition:all .3s ease;transition:var(--transition)}.advanced-search-link:hover{color:#5370ff;color:var(--color-primary-hover);text-decoration:underline}.advanced-search-options{background-color:#1e1e1e;background-color:var(--color-background-secondary);border-radius:8px;border-radius:var(--border-radius);box-shadow:0 2px 4px #0003;box-shadow:var(--shadow);margin-top:1rem;padding:1rem;text-align:left}.advanced-search-options h3{color:#fff;color:var(--color-text);margin-bottom:1rem;margin-top:0}.advanced-search-field{margin-bottom:1rem}.advanced-search-field label{color:#fff;color:var(--color-text);display:block;margin-bottom:.5rem}.advanced-search-button-container{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1rem}.reset-filters-button{background-color:initial;border:2px solid #304ffe;border:2px solid var(--color-primary);color:#304ffe;color:var(--color-primary);padding:8px 16px;transition:all .3s ease;transition:var(--transition)}.reset-filters-button:hover{background-color:#304ffe;background-color:var(--color-primary);color:#121212;color:var(--color-background)}.sort-by-container{align-items:center;display:flex;gap:.5rem;justify-content:center;margin-bottom:1rem}.professor-list-section{padding:1rem}.professor-list-section h3{color:#fff;color:var(--color-text);font-size:1.25rem;margin-bottom:1rem}.professors-list{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(4,1fr);list-style:none;margin:0 auto;max-width:1400px;padding:0}@media (max-width:1100px){.professors-list{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.professors-list{grid-template-columns:1fr}}.professor-item{background-color:#1e1e1e;background-color:var(--color-background-secondary);border:1px solid #304ffe;border:1px solid var(--color-primary);border-radius:8px;border-radius:var(--border-radius);display:flex;flex-direction:column;padding:1rem;transition:all .3s ease;transition:var(--transition)}.professor-item:hover{border-color:#5370ff;border-color:var(--color-primary-hover);box-shadow:0 4px 8px #304ffe4d}.professor-name{color:#fff;color:var(--color-text);font-size:1.1rem;font-weight:600;margin-bottom:.5rem;text-align:center;width:100%}.professor-link{border-radius:8px;border-radius:var(--border-radius);display:flex;flex-direction:column;gap:.5rem;padding:1rem}.professor-link:hover{background-color:#5370ff;background-color:var(--color-primary-hover)}.professor-list-details{align-items:center;color:#f5f5f5;color:var(--color-text-secondary);display:flex;flex-wrap:wrap;font-size:.9rem;gap:.5rem 1rem}.professor-list-details span{margin-right:0}.pagination{align-items:center;gap:.5rem;margin-top:1rem}.pagination button{flex-shrink:0;min-width:40px;padding:8px 12px;text-align:center;width:auto}.pagination button.active{background-color:#5370ff;background-color:var(--color-primary-hover);font-weight:700}.professor-page{align-items:center;display:flex;flex-direction:column;padding:1rem}.professor-page h2,.professor-page h3{margin-top:10px;text-align:center;width:100%}.professor-profile{align-items:center;display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem;text-align:center}.professor-profile-pic-container{border-radius:50%;height:150px;margin-bottom:1rem;overflow:hidden;position:relative;width:150px}.professor-profile-pic{background-color:initial;height:100%;transition:all .3s ease;transition:var(--transition);width:100%}.professor-profile-pic:hover{opacity:.8}.edit-profile-icon-container{align-items:center;background-color:#00000080;border-radius:50%;cursor:pointer;display:flex;height:100%;justify-content:center;left:0;opacity:0;position:absolute;top:0;transition:all .3s ease;transition:var(--transition);width:100%}.professor-profile-pic-container:hover .edit-profile-icon-container{opacity:1}.edit-profile-icon{color:#fff;color:var(--color-text);font-size:2rem;margin-left:5px;margin-top:5px;position:static}.save-profile-icon{align-items:center;background-color:#4caf50;background-color:var(--color-success);border:none;border-radius:50%;bottom:10px;color:#fff;color:var(--color-text);cursor:pointer;display:flex;font-size:1.2rem;justify-content:center;padding:8px;position:absolute;right:10px;transition:all .3s ease;transition:var(--transition)}.save-profile-icon:hover{transform:scale(1.1)}.professor-comment-section{margin-bottom:2rem;max-width:600px;width:100%}.professor-comment-section h3{color:#fff;color:var(--color-text);margin-bottom:1rem;text-align:center;width:100%}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem}.comment-button{align-self:flex-start;margin-top:1rem}.comment-list{margin-bottom:2rem;max-width:800px;width:100%}.comment-list h3{color:#fff;color:var(--color-text);margin-bottom:1rem;text-align:center;width:100%}.comment-item{background-color:#1e1e1e;background-color:var(--color-background-secondary);border:1px solid #304ffe;border-radius:8px;border-radius:var(--border-radius);display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem;padding:1rem}.comment-user{align-items:center;color:#fff;color:var(--color-text);display:flex;font-weight:600;justify-content:space-between}.comment-user small{color:#f5f5f5;color:var(--color-text-secondary);font-size:.8rem;font-weight:400}.comment-user-info{gap:.5rem;margin-bottom:.25rem}.comment-profile-pic-container{border-radius:50%;flex-shrink:0;height:60px;overflow:hidden;width:60px}.comment-profile-pic{height:100%;width:100%}.comment-user small{margin-left:.5rem}.comment-content{align-items:flex-start;align-items:stretch;display:flex;flex-direction:column;gap:1rem}.comment-text{color:#f5f5f5;color:var(--color-text-secondary);flex:1 1;margin-bottom:.5rem;word-break:break-word}.comment-rating-container{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;margin-top:.5rem}.funado-image{margin-left:0;margin-top:.5rem;width:140px}.like-button{background:none;border:none;border-radius:8px;border-radius:var(--border-radius);font-size:1rem;margin-top:.5rem;padding:.25rem .5rem;transition:all .3s ease;transition:var(--transition)}.like-button,.like-button:hover{color:#fff;color:var(--color-text)}.like-button:hover{background-color:#5370ff;background-color:var(--color-primary-hover)}.like-button:disabled{cursor:not-allowed;opacity:.6}.like-count{margin-left:.25rem}.star-rating{display:flex;font-size:1.2rem;gap:.1rem;margin-right:.5rem}.star-rating .star{color:#777;cursor:pointer;transition:all .3s ease;transition:var(--transition)}.star-rating .star.active{color:gold}.star-rating .star:hover{color:#ffed85}@media (min-width:768px){.star-rating .star{font-size:1.5rem}}.auth-modal{align-items:center;background-color:#000000b3;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:100}.auth-modal-content{background-color:#1e1e1e;background-color:var(--color-background-secondary);border-radius:8px;border-radius:var(--border-radius);box-shadow:0 2px 4px #0003;box-shadow:var(--shadow);max-width:400px;padding:1.5rem;position:relative;text-align:left;width:90%}.auth-close{background:none;border:none;border-radius:50%;color:#fff;color:var(--color-text);cursor:pointer;font-size:1.5rem;padding:.25rem;position:absolute;right:1rem;top:1rem;transition:all .3s ease;transition:var(--transition);z-index:2}.auth-close:hover{background-color:#ffffff1a;color:#5370ff;color:var(--color-primary-hover)}.auth-form h2{color:#fff;color:var(--color-text);margin-bottom:1.5rem;margin-top:0}.auth-form .form-group{margin-bottom:1rem;position:relative}.auth-form .form-group label{color:#fff;color:var(--color-text);display:block;margin-bottom:.5rem}.auth-form .form-group .input-with-icon input,.auth-form .form-group input{padding-right:35px;width:100%}.toggle-password-icon{color:#999;top:65%;transform:translateY(-50%);z-index:2}.auth-form button{margin-top:1rem;width:100%}.auth-form{flex-direction:column}.auth-form,.google-button{align-items:center;display:flex}.google-button{background-color:#fff;border-radius:8px;border-radius:var(--border-radius);color:#000;gap:.5rem;justify-content:center;margin-top:2rem;padding:15px;width:100%}.google-button:hover{box-shadow:0 4px 8px #0000004d}.google-button>div{align-items:center;display:flex;margin:0 auto}.auth-separator{color:#f5f5f5;color:var(--color-text-secondary);margin:1.5rem 0;position:relative;text-align:center}.auth-separator:after,.auth-separator:before{background-color:#f5f5f5;background-color:var(--color-text-secondary);content:"";height:1px;position:absolute;top:50%;width:40%}.auth-separator:before{left:0}.auth-separator:after{right:0}.auth-toggle{margin-top:1rem;text-align:center}.auth-toggle a{color:#304ffe;color:var(--color-primary);text-decoration:none}.error{color:#ff4d4d;color:var(--color-error);font-size:.85rem;margin-top:.25rem}.reset-password-link{display:block;margin:10px auto;text-align:center}.reset-password-link:hover{text-decoration:underline}.back-button:hover{background-color:#ffffff1a;color:#5370ff;color:var(--color-primary-hover)}.profile-page{margin:0 auto;max-width:100%;padding:1rem;text-align:left}.profile-page h2{color:#fff;color:var(--color-text);font-size:1.5rem;margin-bottom:1.5rem}.profile-content{align-items:stretch;display:flex;flex-direction:row;gap:1rem;margin:0 auto;max-width:900px}.profile-sidebar{border-bottom:none;border-right:1px solid #304ffe;border-right:1px solid var(--color-primary);display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem;max-width:250px;min-width:150px;padding:1rem;width:auto}.sidebar-link{border-radius:8px;border-radius:var(--border-radius);color:#f5f5f5;color:var(--color-text-secondary);display:block;padding:.6rem 1rem;text-align:left;text-decoration:none;transition:all .3s ease;transition:var(--transition)}.sidebar-link.active,.sidebar-link:hover{background-color:#5370ff;background-color:var(--color-primary-hover);color:#fff;color:var(--color-text)}.profile-main{flex:1 1;flex-grow:1;padding:1rem}.profile-picture-container{height:130px;width:130px}.profile-picture-container img{height:100%;object-fit:cover;transition:all .3s ease;transition:var(--transition);width:100%}.profile-picture-container img:hover{opacity:.8}.profile-info{display:flex;flex-direction:column;gap:.5rem}.profile-info p{margin-bottom:.5rem}.profile-info strong{margin-right:.5rem}.save-profile-button{align-self:center;padding:10px 20px}.success-message{color:#4caf50;color:var(--color-success);margin-top:1rem}.history-section{margin-top:2rem}.history-section h3{color:#fff;color:var(--color-text);font-size:1.25rem;margin-bottom:1rem}.history-item{align-items:center;background-color:#1e1e1e;background-color:var(--color-background-secondary);border:1px solid #304ffe;border:1px solid var(--color-primary);border-radius:8px;border-radius:var(--border-radius);box-sizing:border-box;display:flex;justify-content:space-between;margin-bottom:1rem;padding:1rem;width:100%;word-break:break-word}.history-item p{color:#f5f5f5;color:var(--color-text-secondary);margin-bottom:.5rem}.history-item a{align-self:auto;border-radius:8px;border-radius:var(--border-radius);color:#304ffe;color:var(--color-primary);flex-shrink:0;font-weight:600;margin-left:1rem;padding:.5rem;text-decoration:none;white-space:nowrap}.history-item a:hover{color:#5370ff;color:var(--color-primary-hover);text-decoration:underline}.login-message{align-items:center;background-color:#304ffe;background-color:var(--color-primary);border-radius:8px;border-radius:var(--border-radius);bottom:2rem;box-shadow:0 2px 4px #0003;box-shadow:var(--shadow);color:#fff;color:var(--color-text);display:flex;gap:1rem;max-width:300px;padding:1rem;position:fixed;right:2rem;text-align:center;z-index:100}.close-message-button{background:none;border:none;border-radius:50%;color:#fff;color:var(--color-text);cursor:pointer;font-size:1.2rem;padding:.25rem;position:absolute;right:.5rem;top:.5rem;transition:all .3s ease;transition:var(--transition)}.close-message-button:hover{background-color:#ffffff1a}.admin-modal{background-color:#000000b3}.admin-modal-content{background-color:var(--color-background-secondary);border-radius:8px;border-radius:var(--border-radius);box-shadow:0 2px 4px #0003;box-shadow:var(--shadow);max-width:400px;padding:1.5rem;width:90%}.admin-modal h2{color:#fff;color:var(--color-text);margin-bottom:1.5rem}.admin-modal .form-group{margin-bottom:1rem}.admin-modal .form-group label{color:var(--color-text);margin-bottom:.5rem}.admin-modal .form-group textarea{background-color:var(--color-background-secondary);border:1px solid var(--color-primary);border-radius:8px;border-radius:var(--border-radius);color:var(--color-text);font-family:inherit;font-size:1rem;margin-top:.5rem;padding:12px;resize:vertical}.admin-modal button.delete-button{background-color:var(--color-error);margin-top:1rem}.admin-modal button.delete-button:hover{background-color:darkred}.reset-password-modal-content{background-color:#1e1e1e;background-color:var(--color-background-secondary);border-radius:8px;border-radius:var(--border-radius);box-shadow:0 2px 4px #0003;box-shadow:var(--shadow);max-width:400px;padding:1.5rem;position:relative;text-align:left;width:90%}.reset-password-form h2{color:#fff;color:var(--color-text);margin-bottom:1.5rem;margin-top:0;text-align:center}.reset-password-form .form-group{margin-bottom:1rem}.reset-password-form .form-group label{color:#fff;color:var(--color-text);display:block;margin-bottom:.5rem}.reset-password-form button{margin-top:.5rem;width:100%}.reset-email-sent{color:#4caf50;color:var(--color-success);font-size:.9rem;margin-top:1rem;text-align:center}.reset-success-container{margin:2rem auto}.reset-success-circle{background-color:var(--color-success)}.reset-success-circle svg{font-size:2rem}.password-reset-success{text-align:center}.password-reset-success h2{margin-bottom:1.5rem}.quienes-somos-page{display:flex;flex-direction:column;overflow:hidden;width:100%}.black-section{align-items:center;background-color:#121212;background-color:var(--color-background);display:flex;justify-content:center;min-height:100vh;padding:2rem 1rem;position:relative}.text-content{background-color:#000000b3;border-radius:8px;border-radius:var(--border-radius);box-shadow:0 2px 4px #0003;box-shadow:var(--shadow);max-width:800px;padding:2rem;text-align:center}.text-content,.text-content h2{color:#fff;color:var(--color-text)}.text-content h2{font-size:2rem;margin-bottom:1.5rem}.text-content p{color:#f5f5f5;color:var(--color-text-secondary);font-size:1.1rem;margin:1rem 0}.icon-container{display:flex;gap:2rem;justify-content:center;margin-top:2rem}@media (max-width:767px){.icon-container{flex-wrap:wrap;margin-top:1rem;padding-bottom:6rem}}.icon{color:#fff;color:var(--color-text);font-size:3rem;transition:all .3s ease;transition:var(--transition)}.icon:hover{color:#5370ff;color:var(--color-primary-hover);transform:scale(1.1)}.groups-page{margin:0 auto;max-width:1200px;padding:2rem 1rem;text-align:center}.groups-page h2{color:#fff;color:var(--color-text);font-size:1.5rem;margin-bottom:2rem}.links-container{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr);justify-items:center;padding:0 2rem}@media (max-width:992px){.links-container{grid-template-columns:repeat(2,1fr);padding:0 1rem}}@media (max-width:600px){.links-container{grid-template-columns:1fr;padding:0}}.link-preview{background-color:#1e1e1e;background-color:var(--color-background-secondary);border:1px solid #304ffe;border:1px solid var(--color-primary);border-radius:8px;border-radius:var(--border-radius);display:flex;flex-direction:column;max-width:400px;overflow:hidden;transition:all .3s ease;transition:var(--transition);width:100%}.link-preview:hover{border-color:#5370ff;border-color:var(--color-primary-hover);box-shadow:0 4px 8px #304ffe4d}.link-preview img{display:block;height:auto;width:100%}.link-preview .link-preview-content{color:#fff;color:var(--color-text);padding:1rem;text-align:left}.link-preview h3{color:#fff;color:var(--color-text);font-size:1.2rem;margin-bottom:.5rem;margin-top:0}.link-preview p{color:#f5f5f5;color:var(--color-text-secondary);font-size:1rem;margin-bottom:.5rem}.link-preview a{align-self:flex-start;background-color:#304ffe;background-color:var(--color-primary);border-radius:8px;border-radius:var(--border-radius);color:#fff;color:var(--color-text);display:inline-block;margin-top:auto;padding:.5rem 1rem;text-decoration:none;transition:all .3s ease;transition:var(--transition)}.link-preview a:hover{background-color:#5370ff;background-color:var(--color-primary-hover);text-decoration:none}.footer{border-top:2px solid #304ffe;border-top:2px solid var(--color-primary);color:#f5f5f5;color:var(--color-text-secondary);margin-top:auto;padding:1rem 0;text-align:center}.advanced-search-field select,.footer{background-color:#1e1e1e;background-color:var(--color-background-secondary);width:100%}.advanced-search-field select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;background-size:16px 12px;border:1px solid #304ffe;border:1px solid var(--color-primary);border-radius:8px;border-radius:var(--border-radius);box-sizing:border-box;color:#fff;color:var(--color-text);font-family:inherit;font-size:1rem;padding:.75rem;transition:all .3s ease;transition:var(--transition)}.advanced-search-field select::placeholder{color:#f5f5f5;color:var(--color-text-secondary)}@media (min-width:768px){.logo{font-size:1.4rem}.header-nav a{font-size:.95rem}.regional-list a,.university-link{margin-bottom:0;text-align:center;width:auto}.regional-list{left:50%;margin-top:.5rem;transform:translateX(-50%)}.regional-list,.settings-dropdown{border:1px solid #304ffe;border:1px solid var(--color-primary);box-shadow:0 2px 4px #0003;box-shadow:var(--shadow);position:absolute;top:100%}.settings-dropdown{align-items:flex-start;display:flex;flex-direction:column;right:0;width:auto}.settings-dropdown a,.settings-dropdown button{text-align:left}.comment-content{align-items:flex-start;flex-direction:row}.comment-text{margin-bottom:0}.funado-image{margin-left:1rem;margin-top:0;max-width:180px;width:160px}.admin-modal .form-group textarea,.reset-password-form button{margin-top:1rem}.reset-email-sent{font-size:1rem}.admin-modal-content,.auth-modal-content,.reset-password-modal-content{padding:2rem}.profile-sidebar{border-bottom:none;border-right:1px solid #304ffe;border-right:1px solid var(--color-primary);margin-bottom:0;padding-bottom:0;padding-right:1.5rem}.content{padding:2rem}.like-button{margin-top:0}}@media (min-width:1024px){.logo{font-size:1.6rem}.header-nav a{font-size:1rem;padding:.6rem 1rem}.profile-section{margin-left:1rem}.profile-picture-container{height:50px;width:50px}.professor-profile-pic-container{height:200px;width:200px}.professor-name{font-size:1.8rem;text-align:center;width:100%}}.profile-picture-container{border-radius:50%;cursor:pointer;height:50px;margin-bottom:0;overflow:hidden;width:50px}.settings-icon{font-size:1.1rem;padding:.25rem}@media (max-width:767px){.pagination{gap:.25rem}.pagination button{font-size:.875rem;padding:8px;width:40px}.logo{font-size:1.1rem;font-weight:700}.logo.animate-logo{transform:none!important}.header-nav{align-items:center;display:flex;flex-direction:column;width:100%}.header-nav a{border-radius:8px;border-radius:var(--border-radius);color:#f5f5f5;color:var(--color-text-secondary);margin-bottom:.25rem;padding:.75rem;text-align:center;width:100%}.header-nav a:hover{text-decoration:none}.header-nav a.active,.header-nav a:hover{background-color:#5370ff;background-color:var(--color-primary-hover);color:#fff;color:var(--color-text);font-weight:700}.profile-section{align-items:center;position:relative}.profile-picture{height:100%;object-fit:cover;width:100%}.settings-button{background:none;border:none;border-radius:8px;border-radius:var(--border-radius);color:#fff;color:var(--color-text);cursor:pointer;font-size:1.2rem;margin-left:.5rem;padding:.25rem}.settings-button:hover{background-color:#5370ff;background-color:var(--color-primary-hover)}.settings-icon{font-size:1.1rem;padding:.25rem}.settings-dropdown{background-color:#1e1e1e;background-color:var(--color-background-secondary);border:1px solid #304ffe;border:1px solid var(--color-primary);box-shadow:0 2px 4px #0003;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:.25rem;min-width:160px;padding:.5rem;position:absolute;right:0;top:100%;width:auto;z-index:10}.settings-dropdown a,.settings-dropdown button{text-align:center;width:100%}.logout-button{border-radius:8px;border-radius:var(--border-radius);padding:.5rem;text-align:left;width:100%}.profile-page{margin:0 auto;max-width:100%;padding:1rem;text-align:left}.profile-page h2{color:#fff;color:var(--color-text);font-size:1.5rem;margin-bottom:1.5rem}.profile-content{align-items:stretch;display:flex;flex-direction:column;gap:1rem;margin:0 auto;max-width:100%}.profile-sidebar{border-bottom:1px solid #304ffe;border-bottom:1px solid var(--color-primary);display:flex;flex-direction:row;gap:.5rem;justify-content:space-around;margin-bottom:1rem;padding-bottom:1rem;width:100%}.sidebar-link{border-radius:8px;border-radius:var(--border-radius);color:#f5f5f5;color:var(--color-text-secondary);flex:1 1;padding:.6rem 1rem;text-align:center;text-decoration:none}.sidebar-link.active,.sidebar-link:hover{background-color:#5370ff;background-color:var(--color-primary-hover);color:#fff;color:var(--color-text)}.profile-main{flex:1 1;flex-grow:1;padding:1rem}.profile-section{align-items:flex-start;display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.profile-picture-container{border-radius:50%;cursor:pointer;height:50px;margin-bottom:0;overflow:hidden;width:50px}.profile-picture-container img{height:100%;object-fit:cover;transition:all .3s ease;transition:var(--transition);width:100%}.profile-picture-container img:hover{opacity:.8}.profile-info p{margin-bottom:.5rem}.profile-info strong{margin-right:.5rem}.save-profile-button{align-self:center;padding:10px 20px}.success-message{color:#4caf50;color:var(--color-success);margin-top:1rem}.history-section{margin-top:2rem}.history-section h3{color:#fff;color:var(--color-text);font-size:1.25rem;margin-bottom:1rem}.history-item{align-items:center;background-color:#1e1e1e;background-color:var(--color-background-secondary);border:1px solid #304ffe;border:1px solid var(--color-primary);border-radius:8px;border-radius:var(--border-radius);box-sizing:border-box;display:flex;justify-content:space-between;margin-bottom:1rem;padding:1rem;width:100%;word-break:break-word}.history-item p{color:#f5f5f5;color:var(--color-text-secondary);margin-bottom:.5rem}.history-item a{color:#304ffe;color:var(--color-primary);text-decoration:none}.history-item a:hover{text-decoration:underline}}.header-profile-section{align-items:center;display:flex;flex-direction:row;gap:.5rem;position:relative}.header-profile-section .profile-picture-container{height:50px;width:50px}.header-profile-section .settings-button{margin-left:.5rem}.filter-container select{border:1px solid #304ffe;border:1px solid var(--color-primary);border-radius:var(--border-radius);font-family:inherit;font-size:1rem;padding:.5rem}.filter-container select,.filter-container select option{background-color:#1e1e1e;background-color:var(--color-background-secondary);color:#fff;color:var(--color-text)}.filter-container select option{padding:8px}.filter-container select:focus{border-color:#5370ff;border-color:var(--color-primary-hover);box-shadow:0 0 0 3px #304ffe33}@media (max-width:767px){.filter-container{align-items:stretch;flex-direction:column}.filter-container label{text-align:center}.filter-container select{width:100%}}.menu-button{align-items:center;background:none;border:none;border-radius:8px;color:#fff;color:var(--color-text);cursor:pointer;display:flex;font-size:1.5rem;justify-content:center;padding:.5rem;transition:all .3s ease;transition:var(--transition)}.menu-button:hover{background-color:#ffffff1a;color:#5370ff;color:var(--color-primary-hover)}.side-menu{background-color:#1e1e1e;background-color:var(--color-background-secondary);border-right:2px solid #304ffe;border-right:2px solid var(--color-primary);box-shadow:4px 0 15px #0000004d;box-sizing:border-box;height:100vh;left:0;max-width:85%;overflow-y:auto;padding:1.5rem;position:fixed;top:0;width:280px;z-index:1000}.side-menu ul{list-style:none;margin-top:1rem;padding:0}.side-menu li{margin-bottom:.5rem}.side-menu a{border-radius:8px;border-radius:var(--border-radius);display:block;font-size:1rem;padding:.75rem 1rem;text-decoration:none;transition:all .3s ease;transition:var(--transition)}.side-menu a,.side-menu a:hover{color:#fff;color:var(--color-text)}.side-menu a:hover{background-color:#5370ff;background-color:var(--color-primary-hover)}@media (max-width:767px){.header-nav{display:none!important}}@media (min-width:768px){.side-menu .mobile-only{display:none}.side-menu{width:300px}}@media (min-width:1024px){.side-menu{width:320px}}.add-professor-form{border-bottom:1px solid #304ffe;border-bottom:1px solid var(--color-primary);margin:2rem auto;max-width:600px;padding:1rem}.add-professor-form h3{color:#fff;color:var(--color-text);margin-bottom:1rem;margin-top:0}.add-professor-form .form-group{margin-bottom:1rem}.add-professor-form label{color:#fff;color:var(--color-text);display:block;margin-bottom:.5rem}.add-professor-form input[type=text],.add-professor-form select{background-color:#1e1e1e;background-color:var(--color-background-secondary);border:1px solid #304ffe;border:1px solid var(--color-primary);border-radius:8px;border-radius:var(--border-radius);box-sizing:border-box;color:#fff;color:var(--color-text);font-family:inherit;font-size:1rem;padding:.5rem;width:100%}.add-professor-form select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;background-size:16px 12px;padding-right:2.5rem}.add-professor-form button{background-color:#304ffe;background-color:var(--color-primary);border:none;border-radius:8px;border-radius:var(--border-radius);color:#fff;color:var(--color-text);cursor:pointer;margin-top:.5rem;padding:.5rem 1rem;transition:background-color .2s ease;width:100%}.add-professor-form button:hover{background-color:#5370ff;background-color:var(--color-primary-hover)}.admin-professor-requests{padding:1rem}.admin-professor-requests h3{color:#fff;color:var(--color-text);margin-bottom:1rem;margin-top:0}.admin-professor-requests ul{list-style:none;padding:0}.request-item{background-color:#1e1e1e;background-color:var(--color-background-secondary);border:1px solid #304ffe;border:1px solid var(--color-primary);border-radius:8px;border-radius:var(--border-radius);margin-bottom:1rem;padding:1rem}.request-item p{color:#f5f5f5;color:var(--color-text-secondary);margin-bottom:.5rem}.request-buttons{display:flex;gap:.5rem;margin-top:.5rem}.approve-button,.reject-button{background-color:#304ffe;background-color:var(--color-primary);border:none;border-radius:8px;border-radius:var(--border-radius);color:#fff;color:var(--color-text);cursor:pointer;padding:.25rem .5rem;transition:background-color .2s ease}.reject-button{background-color:#ff4d4d;background-color:var(--color-error)}.approve-button:hover{background-color:#5370ff;background-color:var(--color-primary-hover)}.reject-button:hover{background-color:darkred}@media (max-width:767px){.side-menu{width:70%}.menu-button{margin-right:0}.header-left .logo{font-size:1.2rem;text-align:center}.header-nav{display:none}.add-professor-form,.admin-professor-requests{padding:.5rem}.request-buttons{flex-direction:column}.admin-professor-requests{margin-top:1rem}.request-item p{text-align:center}.header-left{flex-direction:row;gap:.2rem}}@media(min-width:768px){.header-left .logo{margin-right:1rem}}.edit-icon{cursor:pointer;margin-left:.5rem}.filter-container{gap:.5rem;margin-bottom:1rem}.filter-container label{color:#fff;color:var(--color-text);font-weight:700}.filter-container input[type=checkbox]{height:20px;width:20px}.info-icon{cursor:pointer;margin-left:.5rem}.help-message{background-color:#121212;background-color:var(--color-background);border:1px solid #304ffe;border:1px solid var(--color-primary);border-radius:5px;box-shadow:0 2px 10px #0000001a;color:#fff;color:var(--color-text);left:0;padding:.5rem;position:absolute;top:100%;transform:translateY(10px);width:300px;z-index:1000}.theme-menu{display:inline-block;position:relative}.theme-button{align-items:center;background:none;border:none;cursor:pointer;display:flex;font-size:1rem;gap:.5rem}.theme-button,.theme-button:hover{color:#fff;color:var(--color-text)}.theme-button:hover{background-color:#ffffff1a}.theme-icon{font-size:1.2rem}.theme-dropdown{background-color:#1e1e1e;background-color:var(--color-background-secondary);border:1px solid #304ffe;border:1px solid var(--color-primary);border-radius:8px;border-radius:var(--border-radius);box-shadow:0 2px 4px #0003;box-shadow:var(--shadow);display:flex;flex-direction:column;left:100%;margin-left:.5rem;position:absolute;top:0;width:150px;z-index:10}.theme-dropdown button{background:none;border:none;color:#fff;color:var(--color-text);cursor:pointer;padding:.5rem 1rem;text-align:left;transition:all .3s ease;transition:var(--transition)}.theme-dropdown button:hover{background-color:#5370ff;background-color:var(--color-primary-hover)}.privacy-policy-page{background-color:#1e1e1e;background-color:var(--color-background-secondary);border-radius:8px;border-radius:var(--border-radius);box-shadow:0 2px 4px #0003;box-shadow:var(--shadow);color:#fff;color:var(--color-text);margin:20px auto;max-width:800px;padding:20px}.privacy-policy-page h2{color:#304ffe;color:var(--color-primary);margin-bottom:20px}.privacy-policy-page h3{margin-bottom:10px;margin-top:20px}.privacy-policy-page p{line-height:1.6;margin-bottom:15px}.privacy-policy-page ul{margin-bottom:15px;padding-left:20px}.privacy-policy-page li{margin-bottom:5px}@media (min-width:1920px){.professors-list{gap:1.5rem;grid-template-columns:repeat(4,1fr);margin:0 auto;max-width:1600px}.professor-page h2,.professor-page h3{margin-left:auto;margin-right:auto;margin-top:14px;max-width:1400px}}.reset-password-modal,.reset-password-page{align-items:center;display:flex;flex-direction:column;padding:20px;text-align:center}.reset-password-modal h2,.reset-password-page h2{color:#fff;margin-bottom:20px}.reset-password-form .form-group,.reset-password-modal .form-group{margin-bottom:15px;margin-left:auto;margin-right:auto;max-width:300px;text-align:left;width:100%}.reset-password-form .form-group label,.reset-password-modal .form-group label{color:#fff;display:block;margin-bottom:5px;text-align:left}.reset-password-form .form-group input,.reset-password-modal .form-group input{background-color:#1e1e1e;border:1px solid #304ffe;border-radius:5px;box-sizing:border-box;color:#fff;padding:10px;width:100%}.reset-password-form button,.reset-password-modal button{background-color:#304ffe;border:none;border-radius:5px;color:#fff;cursor:pointer;display:block;margin-left:auto;margin-right:auto;margin-top:10px;padding:10px 15px;width:100%}.reset-password-form button:hover,.reset-password-modal button:hover{background-color:#5370ff}.reset-password-modal .auth-close{background:none;border:none;color:#fff;cursor:pointer;font-size:1.2em;position:absolute;right:10px;top:10px}.reset-password-modal .auth-close:hover{color:#5370ff}.reset-password-modal .error{color:red;font-size:.8em;margin-top:5px}.reset-password-modal .auth-toggle{margin-top:20px;text-align:center}.auth-form .reset-password-link,.reset-password-modal .auth-toggle a{color:#304ffe;text-decoration:none}.auth-form .reset-password-link{display:block;margin-bottom:15px;margin-top:10px;text-align:center}.auth-form .reset-password-link:hover{text-decoration:underline}.reset-password-form{align-items:center;display:flex;flex-direction:column}.reset-email-sent{color:#0f0;margin-top:10px}.reset-password-modal{align-items:center;background-color:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:100}.auth-modal-content,.reset-password-modal-content{background-color:#1e1e1e;border-radius:5px;box-sizing:border-box;color:#fff;max-width:90%;padding:20px 20px 0;position:relative;text-align:left;width:400px}.reset-success-container{align-items:center;border-radius:50%;display:flex;height:150px;justify-content:center;margin:20px auto;opacity:0;transform:scale(0);transition:transform .5s ease-out,opacity .5s ease-out;width:150px}.reset-success-container.show{opacity:1;transform:scale(1)}.reset-success-circle{align-items:center;background-color:#4caf50;border-radius:50%;display:flex;height:80px;justify-content:center;position:relative;width:80px}.reset-success-circle svg{animation:fadeIn .8s ease-in .4s forwards;color:#fff;font-size:40px;opacity:0}.reset-success-circle path{stroke:#fff;stroke-width:4;fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:100;stroke-dashoffset:100}@keyframes popIn{0%{transform:scale(0)}80%{transform:scale(1.2)}to{transform:scale(1)}}.password-reset-success{flex-direction:column}.admin-modal,.password-reset-success{align-items:center;display:flex;justify-content:center}.admin-modal{background-color:#00000080;height:100%;left:0;position:fixed;top:0;width:100%;z-index:100}.admin-modal-content{background-color:#1e1e1e;border-radius:5px;color:#fff;max-width:90%;padding:20px;position:relative;text-align:left;width:400px}.admin-modal .auth-close{background:none;border:none;color:#fff;cursor:pointer;font-size:1.2em;position:absolute;right:10px;top:10px}.admin-modal .auth-close:hover{color:#5370ff}.admin-modal h2{margin-bottom:20px;margin-top:0}.admin-modal .form-group{margin-bottom:15px}.admin-modal .form-group label{color:#fff;display:block;margin-bottom:5px}.admin-modal .form-group textarea{background-color:#1e1e1e;border:1px solid #304ffe;border-radius:5px;box-sizing:border-box;color:#fff;min-height:100px;padding:10px;width:100%}.admin-modal button.delete-button{background-color:#ff4d4d;border:none;border-radius:5px;color:#fff;cursor:pointer;margin-top:15px;padding:10px 15px;width:100%}.admin-modal button.delete-button:hover{background-color:#f22d2d}.password-input-container{position:relative}.password-input-container input{box-sizing:border-box;padding-right:30px}.input-with-icon{align-items:center;display:flex;position:relative}.input-with-icon input{padding-right:35px;width:100%}.toggle-password-icon{color:#666;cursor:pointer;font-size:1.2em;position:absolute;right:10px}.toggle-password-icon:hover{color:#333}.back-button{background-color:initial;border:none;border-radius:5px;color:#fff;cursor:pointer;height:50px;padding:10px 15px;width:100%}.professor-page{margin:0 auto;max-width:1200px;padding:20px}.professor-page .professor-profile,.professor-profile{background:var(--color-background-secondary);border-radius:15px;box-shadow:0 4px 15px #0000004d;margin-bottom:30px;margin-left:auto;margin-right:auto;max-width:800px;padding:30px 20px;text-align:center}.professor-profile-pic-container{display:inline-block;margin-bottom:15px}.professor-profile-pic{border:4px solid var(--color-primary);border-radius:50%;box-shadow:0 4px 15px #007bff4d;height:150px;object-fit:cover;width:150px}.professor-name,.professor-page .professor-profile .professor-name{color:var(--color-text);display:block;font-size:1.8rem;margin:10px auto 5px;text-align:center!important;width:100%}.professor-university{color:var(--color-text-secondary);font-size:1rem;margin-bottom:15px}.professor-stats-actions{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:center;margin-bottom:20px}.views-counter{align-items:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:20px;color:var(--color-text-secondary);display:flex;font-size:.95rem;gap:6px;padding:8px 15px}.views-icon{color:var(--color-primary);font-size:1rem}.views-count{color:var(--color-text);font-weight:600}.views-label{color:var(--color-text-secondary)}.share-container{position:relative}.share-button{align-items:center;background:#0000;border:2px solid var(--color-primary);border-radius:20px;color:var(--color-primary);cursor:pointer;display:flex;font-size:.95rem;font-weight:500;gap:8px;padding:8px 18px;transition:all .3s ease}.share-button:hover{background:var(--color-primary);box-shadow:0 4px 12px #ffc1074d;color:#000;transform:translateY(-2px)}.share-button svg{font-size:1rem}.share-menu{animation:fadeInDown .2s ease;background:var(--color-background-secondary);border:1px solid var(--color-primary);border-radius:12px;box-shadow:0 8px 25px #0006;left:50%;min-width:180px;padding:8px;position:absolute;top:calc(100% + 10px);transform:translateX(-50%);z-index:100}@keyframes fadeInDown{0%{opacity:0;transform:translateX(-50%) translateY(-10px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.share-option{align-items:center;background:#0000;border:none;border-radius:8px;color:var(--color-text);cursor:pointer;display:flex;font-size:.95rem;gap:10px;padding:12px 15px;transition:all .2s ease;width:100%}.share-option:hover{background:#ffc10726;color:var(--color-primary)}.share-option svg{font-size:1.2rem}.share-option.whatsapp:hover{background:#25d36626;color:#25d366}.share-option.whatsapp svg{color:#25d366}.professor-averages-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(2,1fr);margin:0 auto;max-width:500px}.average-item{background:#ffffff0d;border-radius:10px;padding:15px 10px;text-align:center}.average-label{color:var(--color-text-secondary);display:block;font-size:.85rem;font-weight:500;margin-bottom:8px}.average-value{color:var(--color-primary);display:block;font-size:1.2rem;font-weight:700;margin-top:5px}.professor-comment-section{background:var(--color-background-secondary);border-radius:15px;box-shadow:0 4px 15px #0000004d;margin-bottom:30px;padding:25px}.professor-comment-section h3,.professor-page .professor-comment-section h3{color:var(--color-text);display:block;font-size:1.4rem;margin-bottom:20px;text-align:center!important;width:100%}.comment-form-grid{gap:20px}.comment-form-grid,.form-group{display:flex;flex-direction:column}.form-group label{color:var(--color-text);font-size:.95rem;font-weight:500;margin-bottom:8px}.required{color:var(--color-error)}.form-group input[type=text]{background:#ffffff0d;border:2px solid var(--color-primary);border-radius:8px;color:var(--color-text);font-size:1rem;padding:12px 15px;transition:border-color .3s,box-shadow .3s}.form-group input[type=text]:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #007bff33;outline:none}.form-group textarea{background:#ffffff0d;border:2px solid var(--color-primary);border-radius:8px;color:var(--color-text);font-family:inherit;font-size:1rem;max-height:300px;min-height:100px;padding:12px 15px;resize:vertical;transition:border-color .3s,box-shadow .3s}.form-group textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #007bff33;outline:none}.char-count{color:var(--color-text-secondary);font-size:.8rem;margin-top:5px;text-align:right}.ratings-grid{grid-gap:15px;background:#ffffff08;border-radius:10px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));padding:20px}.rating-item{align-items:center;display:flex;flex-direction:column;justify-content:center;text-align:center}.rating-item label{color:var(--color-text-secondary);display:block;font-size:.85rem;font-weight:500;margin-bottom:8px;text-align:center}.rating-item.general-rating{align-items:center;background:#007bff1a;border-radius:8px;display:flex;flex-direction:column;grid-column:1/-1;justify-content:center;margin-top:5px;padding:15px}.rating-item.general-rating label{color:var(--color-primary);font-size:1rem;font-weight:600;text-align:center}.comment-button{background:linear-gradient(135deg,var(--color-primary),#0056b3);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;margin:10px auto 0;max-width:300px;padding:15px 30px;transition:transform .2s,box-shadow .3s;width:100%}.comment-button:hover{box-shadow:0 6px 20px #007bff66;transform:translateY(-2px)}.comment-button:active{transform:translateY(0)}.comment-list{background:var(--color-background-secondary);border-radius:15px;box-shadow:0 4px 15px #0000004d;padding:25px}.comment-list h3,.professor-page .comment-list h3{color:var(--color-text);display:block;font-size:1.3rem;margin-bottom:20px;text-align:center!important;width:100%}.filter-container{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:20px}.filter-container label{color:var(--color-text-secondary);font-size:.9rem}.filter-container select{border:2px solid var(--color-primary);border-radius:8px;cursor:pointer;font-size:.9rem;padding:8px 15px}.filter-container select,.filter-container select option{background:#16213e;background:var(--card-background,#16213e);color:#f0f0f0;color:var(--text-color,#f0f0f0)}.filter-container select option{padding:10px}.filter-container select:focus{border-color:var(--color-primary);outline:none}.comments-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.comment-item{background:#ffffff08;border:1px solid var(--color-primary);border-radius:12px;padding:20px;transition:transform .2s,box-shadow .2s}.comment-item:hover{box-shadow:0 6px 20px #0000004d;transform:translateY(-3px)}.comment-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:15px}.comment-user-info{align-items:center;display:flex;gap:12px}.comment-profile-pic{border:2px solid var(--color-primary);border-radius:50%;height:45px;object-fit:cover;width:45px}.comment-meta{display:flex;flex-direction:column}.comment-user-name{color:var(--color-text);font-size:.95rem;font-weight:600}.comment-date{color:var(--color-text-secondary);font-size:.8rem}.comment-rating-badge{background:#007bff1a;border-radius:6px;padding:5px 10px}.comment-body{margin-bottom:15px}.comment-text{word-wrap:break-word;color:var(--color-text);font-size:.95rem;line-height:1.6}.comment-footer{align-items:flex-end;border-top:1px solid var(--color-primary);display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;padding-top:15px}.funado-image{border-radius:8px;cursor:pointer;height:auto;max-width:100%;object-fit:contain;transition:transform .2s;width:120px}.funado-image:hover{transform:scale(1.05)}.like-button{align-items:center;background:#ffffff0d;border:1px solid var(--color-primary);border-radius:20px;color:var(--color-text-secondary);cursor:pointer;display:flex;gap:6px;margin-left:auto;padding:8px 15px;transition:all .2s}.like-button:hover{background:#007bff33;border-color:var(--color-primary);color:var(--color-primary)}.like-count{font-weight:600}.no-comments{color:var(--color-text-secondary);font-size:1rem;padding:40px 20px;text-align:center}.pagination{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:25px}.pagination-button{background:#0000;border:2px solid var(--color-primary);border-radius:8px;color:var(--color-text);cursor:pointer;font-weight:500;padding:10px 15px;transition:all .2s}.pagination-button:hover{background:#007bff1a;border-color:var(--color-primary)}.pagination-button.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.loading-container{align-items:center;display:flex;height:100px;justify-content:center;margin-top:1rem;width:100%}.loading-spinner{animation:spin 1s linear infinite;border:8px solid #ffffff4d;border-radius:50%;border-top:8px solid var(--color-primary);height:60px;width:60px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.help-icon,.rating-help-icon{color:var(--color-primary);cursor:pointer;font-size:.9em;margin-left:8px;transition:color .2s ease;vertical-align:middle}.help-icon:hover,.rating-help-icon:hover{color:var(--color-primary-hover)}.help-modal-overlay,.rating-help-overlay{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background-color:#000c;bottom:0;display:flex;justify-content:center;left:0;padding:15px;position:fixed;right:0;top:0;z-index:1100}.help-modal-content,.rating-help-modal-content{animation:fadeInModal .3s ease-out forwards;background-color:var(--color-background-secondary);border:1px solid var(--color-primary);border-radius:12px;box-shadow:0 8px 30px #0009;color:var(--color-text);max-width:550px;padding:25px 30px;position:relative;text-align:left;width:100%}.help-modal-content h3,.rating-help-modal-content h4{border-bottom:1px solid var(--color-primary);color:var(--color-primary);font-size:1.4em;margin-bottom:20px;margin-top:0;padding-bottom:10px;text-align:center}.help-modal-content ul,.rating-help-modal-content ul{list-style-type:disc;margin-bottom:15px;padding-left:20px}.help-modal-content li,.rating-help-modal-content li{font-size:.95em;line-height:1.6;margin-bottom:10px}.help-modal-content li strong,.rating-help-modal-content li strong{color:var(--color-text);font-weight:600}.rating-help-modal-content p:last-of-type{color:var(--color-text-secondary)}.help-modal-button{background-color:var(--color-primary);border:none;border-radius:6px;color:#fff;cursor:pointer;display:block;font-size:1em;font-weight:500;margin:25px auto 0;padding:12px 25px;transition:background-color .2s ease}.help-modal-button:hover{background-color:var(--color-primary-hover)}.close-rating-help-button{color:var(--color-text)}.close-rating-help-button:hover{color:var(--color-primary)}.rating-help-icon{color:#007bff;color:var(--primary-color,#007bff);cursor:pointer;font-size:1em;margin-left:8px;transition:color .2s ease;vertical-align:middle}.rating-help-icon:hover{color:#0056b3;color:var(--primary-hover-color,#0056b3)}.rating-help-overlay{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background-color:#000c;bottom:0;display:flex;justify-content:center;left:0;padding:15px;position:fixed;right:0;top:0;z-index:1100}.rating-help-modal-content{animation:fadeInModal .3s ease-out forwards;background-color:#2c2c2c;background-color:var(--background-color,#2c2c2c);border:1px solid #444;border:1px solid var(--border-color,#444);border-radius:12px;box-shadow:0 8px 30px #0009;color:#f0f0f0;color:var(--text-color,#f0f0f0);max-width:600px;padding:25px 30px;position:relative;text-align:left;width:100%}.rating-help-modal-content h4{border-bottom:1px solid #444;border-bottom:1px solid var(--border-color,#444);color:#58a6ff;color:var(--primary-color,#58a6ff);font-size:1.5em;margin-bottom:20px;margin-top:0;padding-bottom:10px;text-align:center}.rating-help-modal-content ul{list-style-type:disc;margin-bottom:15px;padding-left:20px}.rating-help-modal-content li{font-size:1em;line-height:1.7;margin-bottom:10px}.rating-help-modal-content li strong{color:#e0e0e0;color:var(--secondary-color,#e0e0e0);font-weight:600}.rating-help-modal-content p:last-of-type{color:#aaa;color:var(--text-secondary-color,#aaa);font-size:.9em;font-style:italic;margin-top:20px;text-align:center}.close-rating-help-button{background:none;border:none;color:#f0f0f0;color:var(--text-color,#f0f0f0);cursor:pointer;font-size:1.8em;line-height:1;padding:5px;position:absolute;right:15px;top:10px;transition:color .2s ease}.close-rating-help-button:hover{color:#58a6ff;color:var(--primary-color,#58a6ff)}@media (max-width:768px){.professor-page{padding:15px}.professor-profile{padding:20px 15px}.professor-profile-pic{height:120px;width:120px}.professor-name{font-size:1.5rem}.professor-averages-grid{gap:10px;grid-template-columns:repeat(2,1fr)}.average-item{padding:12px 8px}.average-label{font-size:.75rem}.ratings-grid{gap:12px;grid-template-columns:repeat(2,1fr);padding:15px}.rating-item label{font-size:.8rem}.comments-grid{grid-template-columns:1fr}.comment-item{padding:15px}.filter-container{justify-content:center}}@media (max-width:480px){.professor-page{padding:10px}.professor-profile{border-radius:10px;padding:15px 10px}.professor-profile-pic{height:100px;width:100px}.professor-name{font-size:1.3rem}.professor-university{font-size:.9rem}.professor-averages-grid{gap:8px;grid-template-columns:repeat(2,1fr)}.average-item{padding:10px 5px}.average-label{font-size:.7rem}.average-value{font-size:1rem}.professor-comment-section{border-radius:10px;padding:15px}.professor-comment-section h3{font-size:1.2rem}.form-group input[type=text],.form-group textarea{font-size:.95rem;padding:10px 12px}.ratings-grid{gap:10px;grid-template-columns:repeat(2,1fr);padding:12px}.rating-item{padding:5px}.rating-item label{font-size:.75rem;margin-bottom:5px}.rating-item.general-rating{padding:10px}.comment-button{font-size:1rem;max-width:100%;padding:12px 20px}.comment-list{border-radius:10px;padding:15px}.comment-list h3{font-size:1.1rem}.comment-header{align-items:flex-start;flex-direction:column}.comment-rating-badge{margin-top:5px}.comment-profile-pic{height:40px;width:40px}.comment-text,.comment-user-name{font-size:.9rem}.like-button{font-size:.85rem;padding:6px 12px}.pagination-button{font-size:.9rem;padding:8px 12px}.help-modal-content,.rating-help-modal-content{margin:10px;padding:20px}.help-modal-content h3,.rating-help-modal-content h4{font-size:1.2em}.help-modal-content li,.rating-help-modal-content li{font-size:.9em}.close-rating-help-button{font-size:1.6em;right:10px;top:8px}.star-rating .star,.star-rating svg{height:18px!important;width:18px!important}.average-item .star-rating .star,.average-item .star-rating svg{height:16px!important;width:16px!important}.rating-item .star-rating .star,.rating-item .star-rating svg{height:20px!important;width:20px!important}}:root[data-theme=udg] .comment-list,:root[data-theme=udg] .professor-comment-section,:root[data-theme=udg] .professor-profile{background:var(--color-background-secondary);border:1px solid var(--color-primary)}:root[data-theme=udg] .comment-list h3,:root[data-theme=udg] .professor-comment-section h3,:root[data-theme=udg] .professor-name{color:var(--color-text)}:root[data-theme=udg] .comment-item{background:var(--color-background-secondary);border:1px solid var(--color-primary)}:root[data-theme=udg] .average-item,:root[data-theme=udg] .ratings-grid{background:#ffd7000d}:root[data-theme=udg] .average-value{color:var(--color-text)}:root[data-theme=udg] .form-group input[type=text],:root[data-theme=udg] .form-group textarea{background:var(--color-background-secondary);border-color:var(--color-primary);color:var(--color-text)}:root[data-theme=udg] .comment-button{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover))}:root[data-theme=udg] .filter-container select{border-color:var(--color-primary)}:root[data-theme=udg] .filter-container select,:root[data-theme=udg] .filter-container select option{background:var(--color-background-secondary);color:var(--color-text)}:root[data-theme=udg] .like-button{border-color:var(--color-primary);color:var(--color-text-secondary)}:root[data-theme=udg] .like-button:hover{background:#d32f2f33;color:var(--color-text)}:root[data-theme=udg] .pagination-button{border-color:var(--color-primary);color:var(--color-text)}:root[data-theme=udg] .pagination-button.active{background:var(--color-primary);color:#fff}:root[data-theme=light] .comment-list,:root[data-theme=light] .professor-comment-section,:root[data-theme=light] .professor-profile{background:var(--color-background-secondary);border:1px solid #ddd;box-shadow:0 2px 10px #0000001a}:root[data-theme=light] .comment-item{background:#f9f9f9;border:1px solid #ddd}:root[data-theme=light] .average-item,:root[data-theme=light] .ratings-grid{background:#00000008}:root[data-theme=light] .filter-container select,:root[data-theme=light] .form-group input[type=text],:root[data-theme=light] .form-group textarea{background:#fff;border-color:#ccc;color:var(--color-text)}:root[data-theme=light] .filter-container select option{background:#fff;color:var(--color-text)}:root[data-theme=light] .like-button{border-color:#ddd;color:var(--color-text-secondary)}:root[data-theme=light] .pagination-button{border-color:#ddd;color:var(--color-text)}.comments-pagination{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:20px;margin-top:30px;padding:15px 0}.comments-pagination .pagination-nav-btn{align-items:center;background:#0000;border:2px solid var(--color-primary);border-radius:8px;color:var(--color-primary);cursor:pointer;display:flex;font-size:1.2rem;font-weight:700;height:40px;justify-content:center;transition:all .3s ease;width:40px}.comments-pagination .pagination-nav-btn:hover:not(:disabled){background:var(--color-primary);box-shadow:0 4px 12px #ffc1074d;color:#fff;transform:translateY(-2px)}.comments-pagination .pagination-nav-btn:disabled{border-color:var(--color-text-secondary);color:var(--color-text-secondary);cursor:not-allowed;opacity:.4}.comments-pagination .pagination-number{align-items:center;background:#0000;border:2px solid var(--color-primary);border-radius:8px;color:var(--color-text);cursor:pointer;display:flex;font-size:1rem;font-weight:600;height:40px;justify-content:center;min-width:40px;padding:0 12px;transition:all .3s ease}.comments-pagination .pagination-number:hover:not(:disabled):not(.active){background:#ffc10733;transform:translateY(-2px)}.comments-pagination .pagination-number.active{background:var(--color-primary);box-shadow:0 4px 12px #ffc10766;color:#000;font-weight:700}.comments-pagination .pagination-number.dots{background:#0000;border:none;color:var(--color-text-secondary);cursor:default;font-size:1.2rem;min-width:30px}.comments-pagination .pagination-number.dots:hover{background:#0000;transform:none}@media (max-width:600px){.comments-pagination{gap:5px;padding:10px 5px}.comments-pagination .pagination-nav-btn{border-width:1.5px;font-size:1rem;height:36px;width:36px}.comments-pagination .pagination-number{border-width:1.5px;font-size:.9rem;height:36px;min-width:36px;padding:0 8px}.comments-pagination .pagination-number.dots{font-size:1rem;min-width:24px}}@media (max-width:400px){.comments-pagination{gap:4px}.comments-pagination .pagination-nav-btn{font-size:.9rem;height:32px;width:32px}.comments-pagination .pagination-number{font-size:.85rem;height:32px;min-width:32px;padding:0 6px}}:root[data-theme=udg] .comments-pagination .pagination-nav-btn{border-color:var(--color-primary);color:var(--color-primary)}:root[data-theme=udg] .comments-pagination .pagination-nav-btn:hover:not(:disabled){background:var(--color-primary);box-shadow:0 4px 12px #d32f2f4d;color:#fff}:root[data-theme=udg] .comments-pagination .pagination-number{border-color:var(--color-primary)}:root[data-theme=udg] .comments-pagination .pagination-number:hover:not(:disabled):not(.active){background:#d32f2f33}:root[data-theme=udg] .comments-pagination .pagination-number.active{background:var(--color-primary);box-shadow:0 4px 12px #d32f2f66;color:#fff}:root[data-theme=light] .comments-pagination .pagination-nav-btn{border-color:var(--color-primary);color:var(--color-primary)}:root[data-theme=light] .comments-pagination .pagination-nav-btn:hover:not(:disabled){background:var(--color-primary);box-shadow:0 4px 12px #ffc1074d;color:#000}:root[data-theme=light] .comments-pagination .pagination-number{border-color:var(--color-primary);color:var(--color-text)}:root[data-theme=light] .comments-pagination .pagination-number:hover:not(:disabled):not(.active){background:#ffc10726}:root[data-theme=light] .comments-pagination .pagination-number.active{background:var(--color-primary);color:#000}@media (max-width:600px){.professor-stats-actions{gap:12px;margin-bottom:15px}.views-counter{font-size:.85rem;gap:5px;padding:6px 12px}.views-icon{font-size:.9rem}.share-button{font-size:.85rem;gap:6px;padding:6px 14px}.share-button svg{font-size:.9rem}.share-menu{min-width:160px}.share-option{font-size:.9rem;padding:10px 12px}}@media (max-width:400px){.professor-stats-actions{gap:8px}.views-counter{font-size:.8rem;padding:5px 10px}.share-button{font-size:.8rem;padding:5px 12px}}:root[data-theme=udg] .share-button{border-color:var(--color-primary);color:var(--color-primary)}:root[data-theme=udg] .share-button:hover{background:var(--color-primary);box-shadow:0 4px 12px #d32f2f4d;color:#fff}:root[data-theme=udg] .share-menu{border-color:var(--color-primary)}:root[data-theme=udg] .share-option:hover{background:#d32f2f26;color:var(--color-primary)}:root[data-theme=udg] .views-icon{color:var(--color-primary)}:root[data-theme=light] .views-counter{background:#0000000d;border-color:#0000001a}:root[data-theme=light] .share-button{border-color:var(--color-primary);color:#b8860b}:root[data-theme=light] .share-button:hover{background:var(--color-primary);box-shadow:0 4px 12px #ffc1074d;color:#000}:root[data-theme=light] .share-menu{background:#fff;border-color:var(--color-primary);box-shadow:0 8px 25px #00000026}:root[data-theme=light] .share-option:hover{background:#ffc10726;color:#b8860b}.comment-success-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background-color:#000000bf;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1050}.comment-success-modal-content{animation:fadeInModal .3s ease-out forwards;background-color:#fff;background-color:var(--background-color,#fff);border-radius:12px;box-shadow:0 8px 25px #0006;color:#000;color:var(--text-color,#000);max-width:90%;padding:30px 40px;text-align:center;width:420px}@keyframes fadeInModal{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.comment-success-modal-content p{font-size:1.25em;font-weight:500;margin-bottom:0;margin-top:25px}.checkmark-animation-container{align-items:center;display:flex;justify-content:center;margin-bottom:20px}.checkmark{stroke-width:3;stroke:#4caf50;stroke:var(--primary-color,#4caf50);stroke-miterlimit:10;animation:fill .4s ease-in-out .4s forwards,scale .3s ease-in-out .9s both;border-radius:50%;box-shadow:inset 0 0 0 #4caf50;box-shadow:inset 0 0 0 var(--primary-color,#4caf50);display:block;height:80px;margin:0 auto;width:80px}.checkmark-circle{stroke-dasharray:166;stroke-dashoffset:166;stroke-width:2.5;stroke-miterlimit:10;stroke:#4caf50;stroke:var(--primary-color,#4caf50);fill:none;animation:stroke .6s cubic-bezier(.65,0,.45,1) forwards}.checkmark-check{stroke-dasharray:48;stroke-dashoffset:48;stroke-width:3;stroke:#fff;stroke:var(--checkmark-color,#fff);animation:stroke .3s cubic-bezier(.65,0,.45,1) .8s forwards;transform-origin:50% 50%}@keyframes stroke{to{stroke-dashoffset:0}}@keyframes scale{0%,to{transform:none}50%{transform:scale3d(1.15,1.15,1)}}@keyframes fill{to{box-shadow:inset 0 0 0 40px #4caf50;box-shadow:inset 0 0 0 40px var(--primary-color,#4caf50)}}@media (max-width:600px){.comment-success-modal-content{padding:25px 20px;width:90%}.comment-success-modal-content p{font-size:1.1em}.checkmark{height:70px;width:70px}@keyframes fill{to{box-shadow:inset 0 0 0 35px #4caf50;box-shadow:inset 0 0 0 35px var(--primary-color,#4caf50)}}}.validation-modal-overlay{align-items:center;animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:2000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.validation-modal{animation:slideIn .3s ease-out;background-color:var(--color-background-secondary);border:2px solid var(--color-primary);border-radius:16px;box-shadow:0 10px 40px #00000080;max-width:420px;padding:30px;text-align:center;width:100%}@keyframes slideIn{0%{opacity:0;transform:translateY(-30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.validation-modal-icon{align-items:center;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover));border-radius:50%;display:flex;height:60px;justify-content:center;margin:0 auto 20px;width:60px}.validation-modal-icon svg{color:#fff;height:35px;width:35px}.validation-modal-content h3{color:var(--color-text);font-size:1.5rem;font-weight:600;margin:0 0 15px}.validation-modal-content p{color:var(--color-text-secondary);font-size:1rem;line-height:1.6;margin:0 0 25px}.validation-modal-button{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover));border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;max-width:200px;padding:14px 40px;transition:all .3s ease;width:100%}.validation-modal-button:hover{box-shadow:0 6px 20px #007bff66;transform:translateY(-2px)}.validation-modal-button:active{transform:translateY(0)}@media (max-width:480px){.validation-modal-overlay{padding:15px}.validation-modal{border-radius:12px;padding:25px 20px}.validation-modal-icon{height:50px;margin-bottom:15px;width:50px}.validation-modal-icon svg{height:28px;width:28px}.validation-modal-content h3{font-size:1.3rem;margin-bottom:12px}.validation-modal-content p{font-size:.95rem;margin-bottom:20px}.validation-modal-button{font-size:.95rem;padding:12px 30px}}:root[data-theme=udg] .validation-modal{background-color:var(--color-background-secondary);border-color:var(--color-primary)}:root[data-theme=udg] .validation-modal-content h3{color:var(--color-text)}:root[data-theme=udg] .validation-modal-content p{color:var(--color-text-secondary)}:root[data-theme=udg] .validation-modal-button,:root[data-theme=udg] .validation-modal-icon{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover))}:root[data-theme=udg] .validation-modal-button:hover{box-shadow:0 6px 20px #d32f2f66}:root[data-theme=light] .validation-modal-overlay{background-color:#00000080}:root[data-theme=light] .validation-modal{background-color:#fff;border-color:var(--color-primary);box-shadow:0 10px 40px #0003}:root[data-theme=light] .validation-modal-content h3{color:#1a1a1a}:root[data-theme=light] .validation-modal-content p{color:#555}:root[data-theme=light] .validation-modal-button:hover{box-shadow:0 6px 20px #3b82f666}.dashboard-container{display:flex;flex-direction:column;gap:2rem;padding:1rem}.professors-table,.top-criticized{background-color:var(--color-background-secondary);border-radius:var(--border-radius);box-shadow:var(--shadow);padding:1rem}.professors-table h2,.top-criticized h2{color:var(--color-text);font-size:1.5rem;margin-bottom:1rem}.professors-table table{border-collapse:collapse;width:100%}.professors-table td,.professors-table th{border-bottom:1px solid var(--color-primary);padding:.75rem;text-align:left}.professors-table th{background-color:var(--color-background)}.top-criticized-list{display:flex;flex-direction:column;gap:1rem}.top-criticized-item{align-items:center;background-color:var(--color-background);border-radius:var(--border-radius);box-shadow:var(--shadow);display:flex;gap:1rem;padding:1rem;transition:transform .3s ease}.top-criticized-item .rank{color:var(--color-error);font-size:2rem;font-weight:700}.top-criticized-item .info{flex:1 1}.top-criticized-item .info h3{color:var(--color-text);font-size:1.25rem;margin:0}.top-criticized-item .info p{color:var(--color-text-secondary);margin:.25rem 0}@media (max-width:767px){.dashboard-container,.professors-table,.top-criticized{padding:.5rem}.professors-table table{display:block;overflow-x:auto;width:100%}.professors-table td,.professors-table th{padding:.5rem;white-space:nowrap}.top-criticized-item{align-items:flex-start;flex-direction:column}.top-criticized-item .rank{font-size:1.5rem}.top-criticized-item .info h3{font-size:1rem}.top-criticized-item .info p{font-size:.875rem}}@media (min-width:768px){.dashboard-container{flex-direction:row;justify-content:space-between}.professors-table,.top-criticized{flex:1 1;margin:0 1rem}}
/*# sourceMappingURL=main.bf27ffb6.css.map*/