.sorting-button{padding:8px 16px;height:40px;border-radius:4px;font-size:.9rem;cursor:pointer;background:white;border:1px solid #ddd;color:#333;transition:all .2s ease;position:relative;display:inline-block}.sorting-text{display:block}.sorting-icon{display:none}.sorting-dropdown{position:absolute;margin-top:8px;background:white;border:1px solid #ddd;border-radius:4px;padding:12px;box-shadow:0 4px 12px rgba(0,0,0,.15);z-index:4;min-width:300px;max-height:60vh;overflow-y:auto}.sort-option{font-size:1em;display:block;width:100%;text-align:left;padding:8px 12px;border:none;background:none;cursor:pointer;color:#333;border-radius:4px;margin-bottom:4px;transition:all .2s ease}.sort-option:hover{background:#f5f5f5}.sort-option.active{background:#f3969a;border:2px solid #333;color:white;font-weight:600}@media (max-width:620px){.sorting-button{min-width:50px;padding:8px;border:0}.sorting-text{display:none}.sorting-icon{display:block}.sorting-dropdown{left:0;width:94%}}.filter-button{padding:8px 16px;height:40px;border-radius:4px;font-size:.9rem;cursor:pointer;background:white;border:1px solid #ddd;color:#333;transition:all .2s ease;position:relative;display:inline-block}.filter-text{display:block}.filter-icon{display:none}.filter-count{position:absolute;top:24px;right:4px;background-color:#f3969a;color:white;border-radius:50%;min-width:14px;height:14px;font-size:12px;display:flex;align-items:center;justify-content:center;padding:1px}.filters-dropdown{position:absolute;margin-top:8px;background:white;border:1px solid #ddd;border-radius:4px;padding:12px;box-shadow:0 4px 12px rgba(0,0,0,.15);z-index:4;min-width:300px;max-height:60vh;overflow-y:auto}@media (max-width:620px){.filter-button{min-width:50px;padding:8px;border:0}.filter-text{display:none}.filter-icon{display:block}.filters-dropdown{left:0;width:94%}}.range-filter{margin:10px 0;padding:0 10px;display:flex;align-items:center;gap:10px}.range-label{color:#333;font-size:.9rem;min-width:100px}.range-filter .MuiSlider-root{color:#f3969a}.range-filter .MuiSlider-thumb{background-color:#fff;border:2px solid #f3969a}.range-filter .MuiSlider-valueLabel{background-color:#f3969a}.filter-selector{margin-bottom:8px}.user-info{display:flex;align-items:center;gap:1rem}.user-info i{color:#333;font-weight:500}.login-modal button{flex:1;padding:.75rem 1rem;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:1px 2px 4px rgba(0,0,0,.1);border:1px solid #f3969a;background:#f3969a;color:white}.login-modal button:hover{opacity:.9}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);justify-content:center;z-index:5}.modal-content,.modal-overlay{display:flex;align-items:center}.modal-content{background:white;padding:2rem;border-radius:8px;width:100%;max-width:400px;box-shadow:0 4px 12px rgba(255,71,66,.15);border:1px solid rgb(255 71 66/50%);color:black;box-sizing:border-box;flex-direction:column}.modal-content h2{margin-bottom:1.5rem;font-size:1.5rem;font-weight:600;width:100%;text-align:center}.modal-content input{width:100%;padding:.75rem;margin:.75rem auto;border:1px solid rgb(255 71 66/30%);border-radius:4px;font-size:1rem;color:black;background:white;box-sizing:border-box}.modal-content input:focus{outline:none;border-color:rgb(255 71 66/50%);box-shadow:0 0 0 2px rgb(255 71 66/10%)}.modal-buttons{display:flex;gap:1rem;margin-top:1.5rem;width:100%}.error-message{width:100%}@media (max-width:768px){.user-info{display:none}}.profile-picture-button{position:relative;cursor:pointer}.profile-dropdown-icon{position:absolute;bottom:0;right:0;background-color:rgba(255,255,255,.9);border-radius:50%;padding:1px;box-shadow:0 1px 3px rgba(0,0,0,.15);width:16px;height:16px;border:1px solid rgba(238,238,238,.7)}.profile-picture{width:42px;height:42px;border-radius:50%;object-fit:cover;border:1.5px solid white}.profile-picture:hover{border:1.5px solid rgb(255 71 66/50%)}.profile-picture-dropdown{position:absolute;margin-top:8px;background:white;border:1px solid #ddd;border-radius:4px;padding:12px;box-shadow:0 4px 12px rgba(0,0,0,.15);max-height:60vh;overflow-y:auto;z-index:1}.dropdown-item{display:flex;align-items:center;padding:8px 12px;border-radius:4px;cursor:pointer;transition:background-color .2s ease;text-decoration:none;color:inherit}.dropdown-item:hover{background-color:#f5f5f5}.dropdown-item-icon{width:18px;height:18px;margin-right:8px}@media (max-width:620px){.profile-picture-dropdown{left:0;width:94%}}.visits-import-container{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.85);z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}.visits-import-content{position:relative;background-color:white;border-radius:8px;width:95%;max-width:1200px;padding:20px;box-shadow:0 4px 20px rgba(0,0,0,.25)}.visits-import-close{position:absolute;top:20px;right:15px;font-size:1.2rem;background:none;border:1.5px solid gray;border-radius:20%;cursor:pointer;color:#333}.visits-import-content>h2{margin-top:0;text-align:center;margin-bottom:20px;color:#333}.import-source-selector{display:flex;justify-content:center;gap:20px;margin-bottom:20px}.selector-option{display:flex;align-items:center;gap:5px}.selector-option input[type=radio]{cursor:pointer}.selector-option label{cursor:pointer;font-size:16px}.user-id-input{margin-bottom:20px;max-width:400px;margin-left:auto;margin-right:auto;text-align:center}.user-id-input label{display:block;margin-bottom:8px;font-weight:500}.user-id-input input{width:100%;padding:10px;border:1px solid #ccc;border-radius:4px;font-size:16px;box-sizing:border-box}.error-message,.success-message{width:94%}.error-input{border-color:#e74c3c!important}.import-actions{display:flex;justify-content:center}.import-button{background-color:#4a90e2;color:white;border:none;border-radius:4px;padding:10px 20px;font-size:16px;cursor:pointer;transition:background-color .3s}.import-button:hover{background-color:#3a7abe}.import-button:disabled{background-color:#cccccc;cursor:not-allowed}.help-text{text-align:center;margin-bottom:20px;color:#666}.preview-overlay{height:100%;background-color:rgba(0,0,0,.5);flex-direction:column;padding:20px;box-sizing:border-box;position:relative;background-size:cover;background-position:50%}.passport-header-container,.preview-overlay{width:100%;display:flex;justify-content:space-between;align-items:center}.passport-header-container{margin-bottom:15px;margin-top:20px}.passport-header{display:flex;flex-direction:column;align-items:flex-start;text-align:left;flex:1}.passport-header-container h3{color:white;font-size:1.8rem;margin-bottom:15px;text-shadow:1px 1px 3px rgba(0,0,0,.7);font-weight:500}.passport-list{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;align-items:flex-start}.passport-item{display:inline-flex;align-items:center;background-color:rgba(0,0,0,.4);padding:10px 16px;border-radius:8px;backdrop-filter:blur(10px);width:auto;border:1px solid rgba(255,255,255,.1);box-shadow:0 2px 8px rgba(0,0,0,.3)}.passport-flag{font-size:1.5rem;margin-right:15px}.passport-name{color:white;font-weight:500;font-size:1.1rem;letter-spacing:.3px}.best-match-section{width:100%;max-width:600px}.best-match-section h4{color:white;font-size:1.4rem;margin-bottom:12px;text-shadow:1px 1px 3px rgba(0,0,0,.7);font-weight:500;display:flex;align-items:center;justify-content:center}.best-match-list{display:flex;flex-wrap:wrap;gap:10px}.best-match-item{display:flex;align-items:center;justify-content:space-between;background-color:rgba(255,255,255,.15);padding:8px 14px;border-radius:8px;backdrop-filter:blur(10px);width:100%;border:1px solid rgba(255,255,255,.2);box-shadow:0 2px 8px rgba(0,0,0,.3)}.best-match-flag{font-size:1.3rem;margin-right:10px}.best-match-name{color:white;font-weight:500;font-size:.95rem;flex-grow:1}.best-match-stats{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.best-match-count{color:#3ce47b;font-weight:700;font-size:.9rem;background-color:rgba(0,0,0,.3);padding:2px 6px;border-radius:4px}.best-match-percent{color:#ffcc00;font-weight:600;font-size:.8rem}.world-score-container{margin-left:20px}.score-circle,.world-score-container{display:flex;justify-content:center;align-items:center}.score-circle{width:130px;height:130px;border-radius:50%;background:linear-gradient(135deg,#3ce47b,#16a85a);flex-direction:column;text-align:center;color:white;padding:12px;box-shadow:0 5px 15px rgba(0,0,0,.3),inset 0 0 20px rgba(255,255,255,.2);border:3px solid rgba(255,255,255,.3);position:relative;overflow:hidden}.score-circle h4{font-size:.9rem;margin:0 0 8px;letter-spacing:.5px;font-weight:600}.score-value{font-size:2.2rem;font-weight:700;margin:0;line-height:1}.score-label{font-size:.8rem;margin:4px 0;opacity:1;font-weight:700}.score-percentage{font-size:1.2rem;font-weight:700;margin-top:4px}.site-branding{width:100%;text-align:center;display:flex;align-items:center;justify-content:center;gap:10px;padding:16px 0;background:linear-gradient(90deg,transparent,rgba(0,0,0,.4),transparent);margin-top:5px}.site-logo{border-radius:50%;object-fit:cover;border:2px solid white;box-shadow:0 2px 5px rgba(0,0,0,.3)}.site-url{font-size:1.2rem;color:white;text-shadow:0 1px 3px rgba(0,0,0,.5);font-weight:500}.being-captured-who-to-marry{letter-spacing:.05em}.being-captured-who-to-marry .score-circle h4{font-size:.65rem}.being-captured-who-to-marry .score-value{font-size:1.5rem}.being-captured-who-to-marry .score-label{font-size:.5rem}.being-captured-who-to-marry .score-percentage{font-size:.8rem}.form-group{margin-bottom:15px;display:flex;align-items:center}.form-group label{margin-right:8px;font-weight:700}.form-group input[type=text]{flex:1;padding:8px;border:1px solid #ddd;border-radius:4px}.user-profile-container{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.85);z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow-y:auto;padding:20px 0}.user-profile-content{position:relative;background-color:white;border-radius:8px;width:95%;max-width:1200px;padding:20px;box-shadow:0 4px 20px rgba(0,0,0,.25);overflow-y:auto}.user-profile-close{position:absolute;top:20px;right:15px;font-size:1.2rem;background:none;border:1.5px solid gray;border-radius:20%;cursor:pointer;color:#333}.user-profile-content>h2{margin-top:0;text-align:center;margin-bottom:20px;color:#333}.profile-form{margin:20px 0}.form-row{display:flex;gap:1rem;margin-bottom:1rem}@media (max-width:620px){.form-row{flex-direction:column}}.form-row .form-group{flex:1;margin-bottom:0}.form-group label{display:block;margin-bottom:4px;font-weight:500;color:#333;width:30%}.form-group input,.form-group select,.form-group textarea{width:70%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;box-sizing:border-box}.form-group textarea{resize:vertical;min-height:60px}.form-group.full-width{flex-direction:column}.form-group.full-width label{margin-bottom:8px;text-align:center}.form-group.full-width textarea{min-height:80px;box-sizing:border-box;width:100%}.save-actions{display:flex;justify-content:center}.save-button{background-color:#4a90e2;color:white;border:none;border-radius:4px;padding:10px 20px;font-size:16px;cursor:pointer;transition:background-color .3s}.save-button:hover{background-color:#3a7abe}.save-button:disabled{background-color:#cccccc;cursor:not-allowed}.success-message{background-color:rgba(76,175,80,.1);border:1px solid rgba(76,175,80,.5);border-radius:4px;color:#4caf50}.error-message,.success-message{width:98%;padding:.75rem;margin:.75rem 0;font-size:.875rem;text-align:center}.error-message{background-color:rgb(255 71 66/10%);border:1px solid rgb(255 71 66/50%);border-radius:4px;color:rgb(255 71 66)}