.loading-spinner-container{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:#00000080;z-index:9999}.loading-spinner-modal{background:#fff;border-radius:12px;padding:30px;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 10px 30px #0000004d;min-width:160px}.loading-spinner{border:4px solid #f3f3f3;border-top:4px solid #3498db;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin-bottom:15px}.loading-spinner-modal p{margin:0;color:#333;font-weight:500;font-size:16px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.layout{min-height:100vh;display:flex;flex-direction:column}.layout .header{background-color:#fff;padding:1rem 2rem;box-shadow:0 2px 10px #0000000d;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:1000}.layout .logo{font-size:1.7rem;font-weight:700;color:#2c3e50;text-decoration:none;letter-spacing:-.5px;display:flex;align-items:center}.layout .logo-mark{vertical-align:text-bottom;margin-right:.3rem}.layout .logo-highlight{color:#007bff;margin-left:.5rem}.layout .nav{display:flex;gap:1rem;align-items:center}.layout .nav-link{color:#555;text-decoration:none;padding:.5rem 1rem;font-weight:500;transition:color .2s ease}.layout .nav-link:hover{color:#007bff}.layout .nav-link.active{color:#007bff;font-weight:700}.layout .nav-btn{padding:.5rem 1.25rem;border-radius:50px;font-weight:600;text-decoration:none;cursor:pointer;transition:all .2s ease;border:none;font-size:.95rem}.layout .btn-signup{background-color:#007bff;color:#fff;box-shadow:0 2px 4px #007bff33}.layout .btn-signup:hover{background-color:#0069d9;transform:translateY(-1px)}.layout .btn-logout{background-color:#f1f3f5;color:#495057}.layout .btn-logout:hover{background-color:#e9ecef;color:#212529}.layout .main-content{flex:1;max-width:1200px;width:100%;margin:0 auto;padding:2rem}.layout .footer{background-color:#f8f9fa;padding:3rem 2rem 1rem;margin-top:auto;border-top:1px solid #e9ecef}.layout .footer-content{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;margin-bottom:2rem}.layout .footer-section h3{font-size:1.2rem;color:#2c3e50;margin-bottom:1rem;font-weight:700}.layout .footer-section h4{font-size:1rem;color:#333;margin-bottom:1rem;font-weight:600}.layout .footer-section p{color:#666;margin-bottom:.5rem;font-size:.9rem;line-height:1.6}.layout .footer-section a{display:block;color:#666;text-decoration:none;margin-bottom:.5rem;font-size:.9rem;transition:color .2s}.layout .footer-section a:hover{color:#007bff}.layout .footer-bottom{max-width:1200px;margin:0 auto;padding-top:1.5rem;border-top:1px solid #dee2e6;text-align:center;color:#868e96;font-size:.85rem}@media (max-width: 768px){.layout .header{flex-direction:column;gap:1rem;padding:.8rem 1rem;position:relative}.layout .logo{width:100%;justify-content:center;padding:1rem;box-sizing:border-box}.layout .nav{flex-wrap:wrap;justify-content:center;padding:1rem .5rem;width:100%;background-color:#fafafa;box-sizing:border-box;gap:.5rem}.layout .main-content{padding:1rem .5rem}.layout .footer{padding:2rem 1rem 1rem}.layout .footer-content{grid-template-columns:1fr;text-align:center;gap:1.5rem}}.home{width:100%}.home .home-hero{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);padding:5rem 1rem;margin-bottom:4rem;text-align:center}.home .hero-content{max-width:800px;margin:0 auto}.home .home-hero h1{font-size:3rem;font-weight:700;margin-bottom:1.5rem;color:#2c3e50}.home .highlight{color:#007bff;position:relative;display:inline-block}.home .hero-subtitle{font-size:1.25rem;line-height:1.6;color:#333;margin-bottom:1.5rem}.home .hero-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.home .home-features{max-width:1200px;margin:0 auto 5rem}.home .section-header{text-align:center;margin-bottom:3rem}.home .section-header h2{font-size:2rem;color:#333;font-weight:600;position:relative;display:inline-block}.home .features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem}.home .feature-card{padding:2.5rem 1.5rem;background-color:#fff;border-radius:12px;border:1px solid #eee;box-shadow:0 4px 6px #0000000d;transition:transform .3s ease,box-shadow .3s ease;text-align:center}.home .feature-card:hover{transform:translateY(-5px);box-shadow:0 10px 20px #0000001a}.home .feature-icon{font-size:2rem;background-color:#f0f7ff;width:60px;height:60px;line-height:60px;border-radius:50%;margin:0 auto 1.5rem}.home .feature-card h3{font-size:1.5rem;margin-bottom:1rem;color:#2c3e50}.home .feature-card p{color:#666;line-height:1.6;word-break:keep-all;letter-spacing:-.03em}.home .btn{padding:.75rem 1.5rem;border-radius:50px;text-decoration:none;font-weight:600;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border:none}.home .btn-lg{padding:1rem 2rem;font-size:1.1rem}.home .btn-primary{background-color:#007bff;color:#fff;box-shadow:0 4px 6px #007bff33}.home .btn-primary:hover{background-color:#0069d9;transform:translateY(-2px);box-shadow:0 6px 8px #007bff4d}.home .btn-secondary{background-color:#6c757d;color:#fff}.home .btn-secondary:hover{background-color:#5a6268;transform:translateY(-2px)}.home .btn-outline{background-color:transparent;color:#007bff;border:2px solid #007bff}.home .btn-outline:hover{background-color:#007bff;color:#fff;transform:translateY(-2px)}@media (max-width: 768px){.home .home-hero{padding:2rem 1rem}.home .home-hero h1{font-size:2rem}.home .hero-subtitle{font-size:1rem}.home .home-philosophy{padding:3rem 1rem}.home .home-philosophy h2{font-size:1.5rem}}.home .home-philosophy{background-color:#f8f9fa;padding:4rem 1rem;text-align:center;margin-bottom:0;border-top:1px solid #eee}.home .home-philosophy h2{font-size:1.8rem;color:#2c3e50;margin-bottom:1.5rem;font-weight:700}.home .home-philosophy p{font-size:1.1rem;color:#555;line-height:1.8;margin-bottom:.5rem}.home .home-philosophy .highlight-text{color:#007bff;font-weight:600;margin-top:1rem}.message-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;cursor:pointer}.message-box{padding:2rem 3rem;border-radius:12px;box-shadow:0 4px 12px #0003;min-width:400px;max-width:80%;text-align:center;font-size:1.2rem}.message-success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.message-error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.auth-container{display:flex;justify-content:center;align-items:center;min-height:60vh}.auth-card{background-color:#fff;padding:2rem;border-radius:8px;box-shadow:0 2px 4px #0000001a;width:100%;max-width:400px}.auth-card h2{margin-bottom:1.5rem;text-align:center;color:#333}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;color:#333;font-weight:500}.form-group input{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#007bff}.password-rules{margin-top:.5rem;font-size:.8rem;color:#666}.password-rules p{margin:.2rem 0}.btn-block{width:100%;padding:.75rem;font-size:1rem;border:none;border-radius:4px;cursor:pointer;transition:background-color .2s}.auth-link{text-align:center;margin-top:1rem;color:#666}.auth-link a{color:#007bff;text-decoration:none}.auth-link a:hover{text-decoration:underline}.checkbox-group{display:flex;align-items:center}.checkbox-label{display:flex;align-items:center;font-weight:400!important;font-size:.9rem}.checkbox-label input[type=checkbox]{width:auto;margin-right:8px}.checkbox-label input[type=checkbox]:focus{outline:2px solid #007bff;outline-offset:2px}.checkbox-label a{color:#007bff;text-decoration:none;margin:0 2px}.checkbox-label a:hover{text-decoration:underline}.user{max-width:800px;margin:0 auto;padding:1rem}.user .page-title{font-size:2rem;font-weight:700;color:#2c3e50;margin-bottom:2rem;text-align:center}.user .profile-form{background-color:#fff;padding:2.5rem;border-radius:16px;box-shadow:0 4px 20px #0000000d;border:1px solid #f0f0f0}.user .form-group{margin-bottom:2rem}.user .form-group label{display:block;margin-bottom:.8rem;color:#2c3e50;font-weight:600;font-size:.95rem}.user .form-group input,.user .form-group select,.user .form-group textarea{width:100%;padding:.8rem 1rem;border:1px solid #dee2e6;border-radius:8px;font-size:1rem;box-sizing:border-box;font-family:inherit;transition:border-color .2s,box-shadow .2s;background-color:#fff}.user .form-group input:focus,.user .form-group select:focus,.user .form-group textarea:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.user .checkbox-group label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-weight:500;color:#495057}.user .checkbox-group input[type=checkbox]{cursor:pointer;width:1.2rem;height:1.2rem}.user .loading{text-align:center;padding:2rem;color:#666}.user .specialty-input-group{display:flex;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap}.user .specialty-input-group select,.user .specialty-input-group input{flex:1;min-width:150px}.user .specialty-list{margin-top:1rem;display:flex;flex-direction:column;gap:.5rem}.user .specialty-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background-color:#f8f9fa;border:1px solid #eee;border-radius:12px;position:relative;cursor:pointer;transition:transform .2s}.user .specialty-item:hover{transform:translate(5px);background-color:#f1f3f5}.user .specialty-text{flex:1;display:flex;flex-wrap:wrap;align-items:center;gap:.25rem;margin-right:.5rem}.user .specialty-text .name{font-weight:500;color:#495057;word-break:break-word}.user .specialty-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#000c;color:#fff;display:flex;align-items:center;justify-content:center;border-radius:12px;font-weight:700;z-index:10;text-align:center;padding:.5rem;box-sizing:border-box}.user .btn{padding:.75rem 1.5rem;border-radius:50px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;display:inline-flex;align-items:center;justify-content:center;font-size:1rem}.user .btn-sm{padding:.4rem 1rem;font-size:.9rem}.user .btn-primary{background-color:#007bff;color:#fff;box-shadow:0 4px 6px #007bff33}.user .btn-primary:hover{background-color:#0069d9;transform:translateY(-2px);box-shadow:0 6px 8px #007bff4d}.user .btn-secondary{background-color:#6c757d;color:#fff}.user .btn-secondary:hover{background-color:#5a6268;transform:translateY(-2px)}.user .btn-danger{background-color:#ff6b6b;color:#fff;z-index:20}.user .btn-danger:hover{background-color:#fa5252;transform:translateY(-2px);box-shadow:0 4px 6px #fa525233}.user .btn-block{width:100%;margin-top:1rem;padding:1rem;font-size:1.1rem}.user .region-selects{display:flex;gap:.5rem}.user .region-selects select{flex:1}.withdrawal-section{margin-top:2rem;text-align:right}.withdrawal-link{color:#868e96;text-decoration:underline;cursor:pointer;font-size:.9rem}.withdrawal-link:hover{color:#343a40}@media (max-width: 768px){.user{padding:.5rem}.user .profile-form{padding:1rem}.user .page-title{font-size:1.5rem;margin-bottom:1.5rem}.user .specialty-text{flex-direction:column;align-items:flex-start;gap:.2rem}.user .specialty-text .separator{display:none}.user .specialty-overlay{justify-content:flex-start;padding-left:1rem;padding-right:5rem;text-align:left}}.confirm-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.confirm-box{background-color:#fff;padding:2rem 3rem;border-radius:12px;box-shadow:0 4px 12px #0003;min-width:300px;max-width:80%;text-align:center}.confirm-message{font-size:1.1rem;margin-bottom:1.5rem;color:#333}.confirm-actions{display:flex;justify-content:center;gap:1rem}.confirm-actions .btn{padding:.6rem 1.5rem;border-radius:4px;cursor:pointer;font-weight:500;border:1px solid transparent}.confirm-actions .btn-primary{background-color:#fa5252;color:#fff}.confirm-actions .btn-primary:hover{background-color:#e03131}.confirm-actions .btn-outline{background-color:#fff;border-color:#dee2e6;color:#495057}.confirm-actions .btn-outline:hover{background-color:#f8f9fa}@media (max-width: 768px){.confirm-box{padding:1.5rem;max-width:90%;min-width:280px}}.profile{max-width:1200px;margin:0 auto;padding:1rem}.profile .page-title{font-size:2rem;font-weight:700;color:#2c3e50;margin-bottom:2rem;text-align:center}.profile .profile-filters{background-color:#fff;padding:1.5rem 1.5rem 3rem;border-radius:16px;box-shadow:0 4px 20px #0000000d;display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:3rem;border:1px solid #f0f0f0;align-items:flex-end;position:relative}.profile .filter-group{display:flex;flex-direction:column;gap:.5rem}.profile .search-filter{flex:1;min-width:300px}.profile .sort-filter{min-width:250px}.profile .region-filter{display:none}.profile .actions-container{display:flex;align-items:flex-end;gap:.5rem}.profile .filter-label{font-weight:600;color:#2c3e50;font-size:.95rem}.profile .detail-search-handle{position:absolute;bottom:0;left:0;width:100%;height:2.5rem;display:flex;align-items:center;justify-content:center;cursor:pointer;background:linear-gradient(to bottom,#fff,#dee2e6);border-bottom-left-radius:16px;border-bottom-right-radius:16px;transition:background-color .2s}.profile .detail-search-handle:hover{background:linear-gradient(to bottom,#e9ecef,#dee2e6)}.profile .detail-search-handle svg{color:#868e96}.profile .btn-icon{background:none;border:1px solid #dee2e6;border-radius:8px;cursor:pointer;padding:.6rem;display:flex;align-items:center;justify-content:center;color:#868e96}.profile .btn-icon:hover{background-color:#f1f3f5;color:#2c3e50}.profile .filter-row{display:flex;gap:10px}.profile .filter-group select{width:100%;padding:.75rem 1rem;border:1px solid #dee2e6;border-radius:8px;font-size:1rem;background-color:#fff;transition:border-color .2s,box-shadow .2s;outline:none;cursor:pointer}.profile .filter-group select:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.profile .filter-actions{display:flex;gap:10px}.profile .profile-filters.details-visible{display:grid;grid-template-columns:1fr auto;grid-template-areas:"search sort" "region actions";align-items:start}.profile .profile-filters.details-visible .search-filter{grid-area:search}.profile .profile-filters.details-visible .sort-filter{grid-area:sort}.profile .profile-filters.details-visible .region-filter{grid-area:region;display:flex}.profile .profile-filters.details-visible .actions-container{grid-area:actions;align-self:end;justify-self:end}.profile .btn{padding:.75rem 1.5rem;border-radius:50px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;display:inline-flex;align-items:center;justify-content:center;font-size:1rem;white-space:nowrap}.profile .btn-sm{padding:.5rem 1rem;font-size:.9rem}.profile .btn-primary{background-color:#007bff;color:#fff;box-shadow:0 4px 6px #007bff33}.profile .btn-primary:hover{background-color:#0069d9;transform:translateY(-2px);box-shadow:0 6px 8px #007bff4d}.profile .btn-outline{background-color:transparent;color:#007bff;border:2px solid #007bff;padding:.6rem 1.4rem}.profile .btn-outline:hover{background-color:#007bff;color:#fff;transform:translateY(-2px)}.profile .btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.profile .profile-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem;margin-bottom:3rem}.profile .profile-card{background-color:#fff;padding:1.5rem;border-radius:16px;box-shadow:0 4px 6px #0000000d;border:1px solid #f0f0f0;transition:transform .3s ease,box-shadow .3s ease;display:flex;flex-direction:column}.profile .profile-card:hover{transform:translateY(-5px);box-shadow:0 15px 30px #0000001a}.profile .profile-header{margin-bottom:1rem;border-bottom:1px solid #f0f0f0;padding-bottom:1rem}.profile .profile-header-content{display:flex;align-items:center;gap:10px}.profile .profile-card h3{font-size:1.4rem;font-weight:700;color:#2c3e50;margin:0}.profile .profile-stats{margin-left:auto;display:flex;align-items:center;gap:4px}.profile .rating{color:#ffc107;font-weight:700;font-size:1.2rem}.profile .review-count{color:#adb5bd;font-size:.9rem}.profile .profile-info{display:flex;gap:.5rem;margin-bottom:1.2rem;color:#666;font-size:.95rem;flex-wrap:wrap}.profile .profile-info .info-badge{background-color:#f1f3f5;padding:.2rem .6rem;border-radius:4px;font-size:.85rem;color:#495057;font-weight:500}.profile .specialties{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.profile .specialty{padding:.4rem .8rem;background-color:#e7f5ff;color:#007bff;border-radius:20px;font-size:.85rem;font-weight:600;cursor:pointer;transition:background-color .2s;position:relative;width:100%}.profile .specialty:hover{background-color:#d0ebff}.profile .specialty-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#000c;color:#fff;display:flex;align-items:center;justify-content:center;border-radius:4px;font-weight:700;z-index:10;text-align:center;padding:.5rem;box-sizing:border-box}.profile .introduction{color:#666;line-height:1.6;margin-bottom:1.5rem;flex-grow:1}.profile .profile-actions{margin-top:auto;display:flex;gap:.8rem}.profile .profile-actions .btn{flex:1}.profile .contact-info{background-color:#f8f9fa;padding:1rem;border-radius:8px;margin-bottom:1rem;font-size:.95rem;border-left:4px solid #007bff}.profile .phone-message{margin-top:.5rem;padding-top:.5rem;border-top:1px solid #b3d9ff;color:#666;font-style:italic}.profile .load-more{text-align:center;margin-top:2rem}.profile .loading{text-align:center;padding:2rem;color:#666}.profile .load-more .btn{background-color:#007bff;color:#fff;padding:.8rem 3rem}.profile .load-more .btn:hover{background-color:#0069d9;transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.profile .load-more .btn:disabled{background-color:#f1f3f5;color:#adb5bd;cursor:not-allowed;box-shadow:none;transform:none}.profile .empty-state{text-align:center;padding:3rem;background-color:#f8f9fa;border-radius:8px}.profile .empty-state p{margin-bottom:1rem;color:#666}@media (max-width: 768px){.profile{padding:.5rem}.profile .page-title{font-size:1.5rem;margin-bottom:1.5rem}.profile .profile-filters,.profile .profile-filters.details-visible{display:flex;flex-direction:column;align-items:stretch;padding:1rem 1rem 3rem}.profile .search-filter{flex-basis:100%;min-width:unset}.profile .search-filter .filter-row{flex-direction:column;gap:10px}.profile .search-filter .filter-row select{width:100%}.profile .profile-filters.details-visible .search-filter,.profile .profile-filters.details-visible .sort-filter,.profile .profile-filters.details-visible .region-filter,.profile .profile-filters.details-visible .actions-container{grid-area:unset;width:100%;min-width:unset}.profile .profile-filters.details-visible .actions-container{align-self:stretch}.profile .actions-container{flex-direction:row;justify-content:flex-end}.profile .filter-actions,.profile .profile-filters.details-visible .filter-actions button{flex:1}.profile .profile-card{padding:1rem}.profile .profile-grid{grid-template-columns:1fr;gap:1rem}}.contacts{max-width:1200px;margin:0 auto;padding:1rem}.contacts .page-title{font-size:2rem;font-weight:700;color:#2c3e50;margin-bottom:2rem;text-align:center}.contacts .empty-state{text-align:center;padding:3rem;background-color:#f8f9fa;border-radius:8px}.contacts .empty-state p{margin-bottom:1rem;color:#666}.contacts .profile-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem;margin-bottom:3rem}.contacts .profile-card{background-color:#fff;padding:1.5rem;border-radius:16px;box-shadow:0 4px 6px #0000000d;border:1px solid #f0f0f0;transition:transform .3s ease,box-shadow .3s ease;position:relative;display:flex;flex-direction:column}.contacts .profile-card:hover{transform:translateY(-5px);box-shadow:0 15px 30px #0000001a}.contacts .delete-btn{position:absolute;top:15px;right:15px;background:#fff0f0;border:none;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;z-index:5}.contacts .delete-btn svg{stroke:#fa5252;transition:stroke .2s}.contacts .delete-btn:hover{background-color:#fa5252;transform:scale(1.1) rotate(90deg)}.contacts .delete-btn:hover svg{stroke:#fff}.contacts .profile-header{margin-bottom:1rem;padding-right:30px;border-bottom:1px solid #f0f0f0;padding-bottom:1rem}.contacts .profile-header h3{font-size:1.4rem;font-weight:700;color:#2c3e50;margin:0}.contacts .profile-info{display:flex;gap:.5rem;margin-bottom:1.2rem;color:#666;font-size:.95rem;flex-wrap:wrap}.contacts .profile-info .info-badge{background-color:#f1f3f5;padding:.2rem .6rem;border-radius:4px;font-size:.85rem;color:#495057;font-weight:500}.contacts .specialties{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.contacts .specialty{padding:.4rem .8rem;background-color:#e7f5ff;color:#007bff;border-radius:20px;font-size:.85rem;font-weight:600;cursor:pointer;transition:background-color .2s;position:relative;width:100%}.contacts .specialty:hover{background-color:#d0ebff}.contacts .specialty-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#000c;color:#fff;display:flex;align-items:center;justify-content:center;border-radius:4px;font-weight:700;z-index:10;text-align:center;padding:.5rem;box-sizing:border-box}.contacts .introduction{color:#666;line-height:1.6;margin-bottom:1.5rem;flex-grow:1}.contacts .contact-info-item{background-color:#f8f9fa;padding:1rem;border-radius:8px;margin-bottom:.8rem;font-size:.95rem;border-left:4px solid #007bff}.contacts .phone-message{margin-top:.5rem;padding-top:.5rem;border-top:1px solid #b3d9ff;color:#666;font-style:italic}.contacts .contact-actions{display:flex;align-items:center;gap:10px;margin-top:auto;padding-top:1rem;border-top:1px solid #f1f3f5}.contacts .rating-label{font-weight:500;color:#495057}.contacts .star-rating-inline{display:flex;gap:4px;cursor:pointer}.contacts .star-rating-inline .star{font-size:1.5rem;color:#dee2e6;transition:color .2s;line-height:1}.contacts .star-rating-inline .star.filled{color:#ffc107}.contacts .star-rating-inline .star:hover,.contacts .star-rating-inline .star:hover~.star{color:#dee2e6}.contacts .star-rating-inline:hover .star{color:#ffc107}.contacts .empty-state .btn{border:0;cursor:pointer}.contacts .profile-filters{background-color:#fff;padding:1.5rem;border-radius:16px;box-shadow:0 4px 20px #0000000d;display:flex;gap:1.5rem;margin-bottom:3rem;flex-wrap:wrap;align-items:flex-end;border:1px solid #f0f0f0}.contacts .filter-group{display:flex;flex-direction:column;gap:.5rem;flex:1;min-width:200px}.contacts .filter-label{font-weight:600;color:#2c3e50;font-size:.95rem}.contacts .filter-row{display:flex;gap:10px}.contacts .filter-group select{width:100%;padding:.75rem 1rem;border:1px solid #dee2e6;border-radius:8px;font-size:1rem;background-color:#fff;transition:border-color .2s,box-shadow .2s;outline:none;cursor:pointer}.contacts .filter-group select:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.contacts .filter-actions{display:flex;gap:10px}.contacts .btn{padding:.75rem 1.5rem;border-radius:50px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;display:inline-flex;align-items:center;justify-content:center;font-size:1rem}.contacts .btn-primary{background-color:#007bff;color:#fff;box-shadow:0 4px 6px #007bff33}.contacts .btn-primary:hover{background-color:#0069d9;transform:translateY(-2px);box-shadow:0 6px 8px #007bff4d}.contacts .btn-outline{background-color:transparent;color:#007bff;border:2px solid #007bff;padding:.6rem 1.4rem}.contacts .btn-outline:hover{background-color:#007bff;color:#fff;transform:translateY(-2px)}.contacts .btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.contacts .load-more{text-align:center;margin-top:2rem}.contacts .load-more .btn-secondary{background-color:#6c757d;color:#fff;padding:.8rem 3rem}.contacts .load-more .btn-secondary:hover{background-color:#5a6268;transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.contacts .load-more .btn-secondary:disabled{background-color:#f1f3f5;color:#adb5bd;cursor:not-allowed;box-shadow:none;transform:none}@media (max-width: 768px){.contacts{padding:.5rem}.contacts .page-title{font-size:1.5rem;margin-bottom:1.5rem}.contacts .profile-filters{padding:1rem;gap:1rem}.contacts .profile-card{padding:1rem}.contacts .profile-grid{grid-template-columns:1fr;gap:1rem}.contacts .filter-row{flex-direction:column}}.terms-container{max-width:800px;margin:0 auto;padding:20px;line-height:1.6}.terms-container h1{font-size:2rem;margin-bottom:20px;text-align:center}.terms-container h2{font-size:1.5rem;margin-top:20px;margin-bottom:10px;border-bottom:1px solid #eee;padding-bottom:5px}.terms-container p{margin-bottom:10px}.privacy-container{max-width:800px;margin:0 auto;padding:20px;line-height:1.6}.privacy-container h1{font-size:2rem;margin-bottom:20px;text-align:center}.privacy-container h2{font-size:1.5rem;margin-top:20px;margin-bottom:10px;border-bottom:1px solid #eee;padding-bottom:5px}.privacy-container p{margin-bottom:10px}.privacy-container ul{margin-bottom:10px;padding-left:20px}.privacy-container li{margin-bottom:5px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;color:#333}#root{min-height:100vh}button,input,select,textarea{font-family:inherit}
