.avis-layout,.avis-stats{margin-top:2rem}.avis-filters,.avis-hero,.avis-tabs{margin-bottom:2rem}.avis-tab,.btn-filter,.photo-upload-container,.rating-btn{cursor:pointer;transition:var(--avis-transition)}.avis-tab,.btn-filter,.filter-group input,.filter-group select,.form-control,.photo-upload-container,.rating-btn,.review-card-modern{transition:var(--avis-transition)}.empty-state,.form-header,.stat-card{text-align:center}:root{--avis-primary:#0077b6;--avis-primary-hover:#005f8f;--avis-secondary:#00b4d8;--avis-success:#10b981;--avis-warning:#f59e0b;--avis-danger:#ef4444;--avis-dark:#1f2937;--avis-gray:#6b7280;--avis-gray-light:#f3f4f6;--avis-white:#ffffff;--avis-border:#e5e7eb;--avis-shadow:0 1px 3px 0 rgba(0, 0, 0, 0.1);--avis-shadow-lg:0 10px 25px -5px rgba(0, 0, 0, 0.1);--avis-radius:8px;--avis-transition:all 0.2s ease}.avis-hero,.avis-tabs,.stat-card{border-radius:var(--avis-radius)}.avis-container *{box-sizing:border-box}.avis-section{padding:2rem 0}.avis-sidebar{height:fit-content}.avis-main-content{min-height:500px;width:100%}.avis-hero{background:linear-gradient(135deg,var(--avis-primary) 0,var(--avis-secondary) 100%);color:#fff;padding:3rem 0}.avis-hero h1{font-size:2rem;font-weight:700;margin-bottom:1rem}.avis-hero p{font-size:1.1rem;opacity:.95;margin-bottom:0}.avis-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.avis-tab-content.active,.stat-number{display:block}.stat-card{background:rgba(255,255,255,.1);backdrop-filter:blur(10px);padding:1rem}.stat-number{font-size:1.8rem;font-weight:700}.rating-filter-stars .fa-star,.stat-label{font-size:.9rem}.stat-label{opacity:.9}.avis-tabs{display:flex;gap:.5rem;background:var(--avis-gray-light);padding:.5rem}.avis-tab{flex:1;padding:.75rem 1.5rem;background:0 0;border:none;border-radius:calc(var(--avis-radius) - 2px);color:var(--avis-gray);font-weight:500;position:relative}.avis-filters,.avis-tab.active{background:#fff;box-shadow:var(--avis-shadow)}.avis-tab:hover{color:var(--avis-dark)}.avis-tab.active{color:var(--avis-primary)}.avis-tab-content{display:none;animation:.3s fadeIn;width:100%}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.avis-filters{padding:1.5rem;border-radius:var(--avis-radius)}.filters-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.filter-group label,.form-label{display:block;font-size:.875rem;font-weight:500;color:var(--avis-dark);margin-bottom:.5rem}.filter-group input,.filter-group select{width:100%;padding:.625rem;border:1px solid var(--avis-border);border-radius:calc(var(--avis-radius) - 2px);font-size:.95rem}.filter-group input:focus,.filter-group select:focus,.form-control:focus{outline:0;border-color:var(--avis-primary);box-shadow:0 0 0 3px rgba(0,119,182,.1)}.filter-actions{margin-top:1rem;display:flex;gap:.5rem}.btn-filter{padding:.625rem 1.5rem;border:none;border-radius:calc(var(--avis-radius) - 2px);font-weight:500}#avisForm .btn-primary,.avis-container .btn-primary,.avis-section .btn-primary,.btn-filter-primary{background:var(--avis-primary);color:#fff}.btn-filter-primary:hover{background:var(--avis-primary-hover)}.avis-container .btn-secondary,.avis-section .btn-secondary,.btn-filter-reset,.review-filters .btn-secondary{background:0 0;color:var(--avis-gray);border:1px solid var(--avis-border)}.avis-container .btn-secondary:hover,.avis-section .btn-secondary:hover,.btn-filter-reset:hover,.review-filters .btn-secondary:hover{background:var(--avis-gray-light)}.review-card-modern{background:#fff;border-radius:var(--avis-radius);box-shadow:var(--avis-shadow);margin-bottom:1.5rem;overflow:hidden}.review-card-modern:hover{box-shadow:var(--avis-shadow-lg)}.review-header-modern{padding:1.5rem;display:flex;align-items:flex-start;gap:1rem}.review-avatar{width:48px;height:48px;border-radius:50%;background:var(--avis-gray-light);display:flex;align-items:center;justify-content:center;color:var(--avis-gray);font-weight:600;flex-shrink:0}.review-info{flex:1}.review-author{font-weight:600;color:var(--avis-dark);margin-bottom:.25rem}.review-meta{display:flex;gap:1rem;font-size:.875rem;color:var(--avis-gray)}.review-rating{display:flex;align-items:center;gap:.5rem}.rating-score{background:var(--avis-primary);color:#fff;padding:.25rem .5rem;border-radius:calc(var(--avis-radius) - 4px);font-weight:600}.rating-stars{color:var(--avis-warning)}.review-body-modern{padding:0 1.5rem 1.5rem}.review-title{font-size:1.1rem;font-weight:600;color:var(--avis-dark);margin-bottom:.75rem}.review-text{color:var(--avis-gray);line-height:1.6;margin-bottom:1rem}.filter-section,.form-header,.form-section{margin-bottom:2rem}.review-details{display:flex;flex-wrap:wrap;gap:1rem;padding-top:1rem;border-top:1px solid var(--avis-border)}.detail-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--avis-gray)}.detail-item .label{font-weight:500}.form-container{background:#fff;border-radius:var(--avis-radius);box-shadow:var(--avis-shadow);padding:2rem}.form-header h2{font-size:1.5rem;color:var(--avis-dark);margin-bottom:.5rem}.empty-text,.form-header p{color:var(--avis-gray)}.categories-title,.distribution-title,.filter-section-title,.form-section-title{font-size:1rem;font-weight:600;color:var(--avis-dark);margin-bottom:1rem}.form-group{margin-bottom:1.5rem}.form-label .required{color:var(--avis-danger)}.form-control{width:100%;padding:.75rem;border:1px solid var(--avis-border);border-radius:calc(var(--avis-radius) - 2px);font-size:.95rem}textarea.form-control{min-height:120px;resize:vertical}.rating-selector{display:flex;justify-content:center;gap:.5rem;margin:1rem 0}.rating-btn{width:48px;height:48px;border:2px solid var(--avis-border);background:#fff;border-radius:50%;font-weight:600;color:var(--avis-gray)}.rating-btn:hover{border-color:var(--avis-primary);color:var(--avis-primary);transform:scale(1.1)}.page-btn.active,.rating-btn.selected{background:var(--avis-primary);border-color:var(--avis-primary);color:#fff}.photo-upload-container{border:2px dashed var(--avis-border)!important;border-radius:var(--avis-radius);padding:2rem;text-align:center;background:var(--avis-gray-light)}.photo-upload-container:hover{border-color:var(--avis-primary)!important;background:rgba(0,119,182,.05)}.photo-upload-container.drag-over{border-color:var(--avis-primary)!important;background:rgba(0,119,182,.1);box-shadow:0 0 15px rgba(0,119,182,.2)}.photo-upload-icon{font-size:2rem;color:var(--avis-gray);margin-bottom:.5rem}.floating-action-btn,.photo-remove{color:#fff;display:flex;cursor:pointer}.alert,.empty-icon{margin-bottom:1rem}#photoPreview{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.photo-preview-item{border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.1);transition:transform .2s;width:100px;height:100px;border-radius:calc(var(--avis-radius) - 4px);overflow:hidden;position:relative}.photo-preview-item:hover{transform:scale(1.05);box-shadow:0 4px 12px rgba(0,0,0,.15)}.photo-preview-item button{opacity:.8;transition:opacity .2s}.photo-preview-item:hover button{opacity:1}.photo-preview-item img{width:100%;height:100%;object-fit:cover}.photo-remove{position:absolute;top:4px;right:4px;background:rgba(0,0,0,.6);border:none;border-radius:50%;width:24px;height:24px;align-items:center;justify-content:center}.form-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem}#avisForm .btn,.avis-container .btn,.avis-section .btn,.avis-tabs-container .btn,.review-filters .btn{padding:.75rem 2rem;border:none;border-radius:calc(var(--avis-radius) - 2px);font-weight:500;cursor:pointer;transition:var(--avis-transition)}#avisForm .btn-primary:hover,.avis-container .btn-primary:hover,.avis-section .btn-primary:hover{background:var(--avis-primary-hover);transform:translateY(-1px)}.floating-action-btn{position:fixed;bottom:2rem;left:50%;transform:translateX(-50%);background:var(--avis-primary);padding:1rem 2rem;border-radius:50px;align-items:center;justify-content:center;gap:.5rem;box-shadow:0 4px 12px rgba(0,119,182,.3);transition:.3s,transform .3s;z-index:100;border:none;font-weight:600}.page-btn,.share-btn{transition:var(--avis-transition)}.floating-action-btn.hidden{transform:translateX(-50%) translateY(100px);opacity:0;pointer-events:none}.floating-action-btn:hover{transform:translateX(-50%) translateY(-2px);box-shadow:0 6px 20px rgba(0,119,182,.4)}.review-footer-modern{padding:1rem 1.5rem;border-top:1px solid var(--avis-border);display:flex;justify-content:flex-end;align-items:center}.review-category-item,.share-section{display:flex;align-items:center;gap:1rem}.pagination-modern,.share-buttons{display:flex;gap:.5rem}.share-label{font-size:.875rem;color:var(--avis-gray);font-weight:500}.share-btn{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;text-decoration:none;color:#fff}.share-btn.facebook{background:#1877f2}.share-btn.facebook:hover{background:#1664d8;transform:translateY(-2px)}.share-btn.twitter{background:#1da1f2}.share-btn.twitter:hover{background:#1a91da;transform:translateY(-2px)}.share-btn.whatsapp{background:#25d366}.share-btn.whatsapp:hover{background:#20c55d;transform:translateY(-2px)}.pagination-modern{justify-content:center;margin-top:2rem}.page-btn{padding:.5rem .75rem;border:1px solid var(--avis-border);background:#fff;border-radius:calc(var(--avis-radius) - 4px);color:var(--avis-gray);cursor:pointer}.page-btn:hover{border-color:var(--avis-primary);color:var(--avis-primary)}.alert{padding:1rem;border-radius:var(--avis-radius)}.alert-success{background:#d1fae5;color:#065f46;border:1px solid #a7f3d0}.alert-error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.empty-state{padding:3rem 1rem}.empty-icon{font-size:3rem;color:var(--avis-gray)}.empty-title{font-size:1.25rem;color:var(--avis-dark);margin-bottom:.5rem}.review-categories-section{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--avis-border)}.review-categories{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.category-label{font-size:.875rem;color:var(--avis-gray);min-width:120px}.category-score{flex:1;display:flex;align-items:center;gap:.75rem}.score-bar{flex:1;height:8px;background:var(--avis-gray-light);border-radius:10px;overflow:hidden;position:relative}.score-fill{height:100%;background:linear-gradient(90deg,var(--avis-primary) 0,var(--avis-secondary) 100%);border-radius:10px;transition:width .6s}.rating-filter-item,.traveler-type-item{transition:var(--avis-transition);cursor:pointer}.score-text{font-size:.875rem;font-weight:600;color:var(--avis-dark);min-width:35px;text-align:right}@keyframes fillProgress{from{width:0%!important}}.review-category-item.animate .score-fill{animation:.8s forwards fillProgress}.detailed-ratings,.rating-item-card{display:none!important}.sidebar-filters{background:#fff;border-radius:var(--avis-radius);padding:1.5rem;box-shadow:var(--avis-shadow)}.sidebar-title{font-size:1.2rem;font-weight:700;color:var(--avis-dark);margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--avis-border)}.rating-filters{display:flex;flex-direction:column;gap:.75rem}.rating-filter-item{display:flex;align-items:center;justify-content:space-between;padding:.75rem;border:2px solid var(--avis-border);border-radius:calc(var(--avis-radius) - 2px)}.rating-filter-item:hover,.traveler-type-item:hover{border-color:var(--avis-primary);background:rgba(0,119,182,.05)}.rating-filter-item.active{border-color:var(--avis-primary);background:rgba(0,119,182,.1)}.rating-filter-stars{display:flex;gap:.25rem}.rating-filter-count{background:var(--avis-gray-light);padding:.25rem .5rem;border-radius:15px;font-size:.85rem;color:var(--avis-gray);font-weight:600}.traveler-type-filters{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.traveler-type-item{padding:.75rem;border:2px solid var(--avis-border);border-radius:calc(var(--avis-radius) - 2px);text-align:center}.traveler-type-item.active{border-color:var(--avis-primary);background:var(--avis-primary);color:#fff}.traveler-type-item i{font-size:1.5rem;margin-bottom:.5rem;display:block;color:var(--avis-primary)}.traveler-type-item.active i,.traveler-type-item:hover i{color:inherit}.traveler-type-label{font-size:.85rem;font-weight:500}.rating-distribution{background:var(--avis-gray-light);border-radius:var(--avis-radius);padding:1rem}.distribution-bars{display:flex;flex-direction:column;gap:.5rem}.distribution-row{display:flex;align-items:center;gap:.75rem}.distribution-label{display:flex;align-items:center;gap:.25rem;min-width:40px;font-weight:600;color:var(--avis-gray)}.distribution-label .fa-star{color:var(--avis-warning);font-size:.85rem}.distribution-bar-wrapper{flex:1;height:24px;background:#fff;border-radius:12px;overflow:hidden;position:relative}.distribution-bar{height:100%;background:linear-gradient(90deg,var(--avis-primary) 0,var(--avis-secondary) 100%);border-radius:12px;transition:width .6s;position:relative;min-width:2px}.gallery-item,.gallery-item img,.gallery-overlay{transition:var(--avis-transition)}.distribution-bar::after{content:attr(data-percentage);position:absolute;right:8px;top:50%;transform:translateY(-50%);color:#fff;font-size:.75rem;font-weight:600}.distribution-bar[style*="width: 0"]{min-width:0}.distribution-bar[style*="width: 0"]::after{display:none}.distribution-count{min-width:30px;text-align:right;color:var(--avis-gray);font-size:.9rem;font-weight:600}.photo-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem;margin-top:2rem}.gallery-item{position:relative;border-radius:var(--avis-radius);overflow:hidden;aspect-ratio:16/9;cursor:pointer}.gallery-item img{width:100%;height:100%;object-fit:cover}.gallery-item:hover img{transform:scale(1.05)}.gallery-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.8) 0,transparent 100%);color:#fff;padding:1rem;transform:translateY(100%)}.gallery-item:hover .gallery-overlay{transform:translateY(0)}@media (max-width:768px){.filters-row,.review-categories{grid-template-columns:1fr}.category-label{min-width:100px;font-size:.8rem}.avis-hero h1{font-size:1.5rem}.avis-tabs,.review-header-modern{flex-direction:column}.review-meta{flex-direction:column;gap:.25rem}.form-container{padding:1.5rem}.rating-btn{width:40px;height:40px;font-size:.875rem}.floating-action-btn{width:48px;height:48px}}