:root{--review-primary: #4F46E5;--review-primary-dark: #4338CA;--review-primary-light: #818CF8;--review-primary-lighter: #C7D2FE;--review-secondary: #EC4899;--review-secondary-dark: #DB2777;--review-secondary-light: #F9A8D4;--review-accent: #F59E0B;--review-success: #10B981;--review-success-dark: #059669;--review-danger: #EF4444;--review-warning: #F59E0B;--review-info: #3B82F6;--review-dark: #1F2937;--review-dark-light: #374151;--review-light: #F9FAFB;--review-light-dark: #F3F4F6;--review-border: #E5E7EB;--review-border-light: #F3F4F6;--review-text-primary: #111827;--review-text-secondary: #6B7280;--review-text-tertiary: #9CA3AF;--review-shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .03);--review-shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--review-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--review-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--review-shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--review-shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--review-shadow-inner: inset 0 2px 4px 0 rgba(0, 0, 0, .06);--review-radius-sm: .375rem;--review-radius-md: .5rem;--review-radius-lg: .75rem;--review-radius-xl: 1rem;--review-radius-2xl: 1.5rem;--review-radius-full: 9999px;--review-transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--review-transition-base: .2s cubic-bezier(.4, 0, .2, 1);--review-transition-slow: .3s cubic-bezier(.4, 0, .2, 1);--review-transition-slower: .5s cubic-bezier(.4, 0, .2, 1);--review-z-base: 1;--review-z-dropdown: 1000;--review-z-sticky: 1020;--review-z-fixed: 1030;--review-z-modal-backdrop: 1040;--review-z-modal: 1050;--review-z-popover: 1060;--review-z-tooltip: 1070}.review-system-component{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;color:var(--review-text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin-left:2rem;margin-right:2rem}.review-system-header-compact{background:linear-gradient(135deg,#4f46e50f,#7c3aed0f);border-radius:var(--review-radius-lg);padding:1.25rem 1.5rem;margin-bottom:1.5rem;position:relative;overflow:hidden;border:1px solid var(--review-border-light)}.review-system-header-compact:before{content:"";position:absolute;top:-50%;right:-20%;width:300px;height:300px;background:radial-gradient(circle,rgba(79,70,229,.08) 0%,transparent 70%);animation:rotate 30s linear infinite;pointer-events:none}.review-system-header-content-compact{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}.review-system-title-section-compact{flex:1;min-width:250px}.review-system-main-title-compact{font-size:1.5rem;font-weight:800;color:var(--review-text-primary);margin:0 0 .25rem;display:flex;align-items:center;gap:.625rem;background:linear-gradient(135deg,var(--review-primary) 0%,var(--review-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.review-system-main-title-compact svg{width:24px;height:24px;color:var(--review-primary);-webkit-text-fill-color:var(--review-primary);filter:drop-shadow(0 2px 4px rgba(79,70,229,.2))}.review-system-subtitle-compact{font-size:.75rem;color:var(--review-text-secondary);margin:0;font-weight:500}.review-system-quick-stats-compact{background:#fff;border-radius:var(--review-radius-md);padding:.75rem 1.25rem;box-shadow:var(--review-shadow-sm);border:1px solid var(--review-border)}.quick-stat-item-compact{text-align:center}.quick-stat-value-compact{font-size:1.75rem;font-weight:800;color:var(--review-primary);display:block;line-height:1;margin-bottom:.375rem}.quick-stat-stars-compact{display:flex;gap:.15rem;justify-content:center;margin-bottom:.375rem}.quick-stat-stars-compact svg{width:14px;height:14px}.quick-stat-label-compact{font-size:.625rem;color:var(--review-text-secondary);font-weight:600;display:block;text-transform:uppercase;letter-spacing:.05em}.review-stats-section{margin-bottom:1.5rem;animation:fadeInUp .6s ease-out}.stats-container{display:flex;flex-direction:column;gap:0}.stats-two-column-layout{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.stats-grid-compact{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.stat-card-compact{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:var(--review-radius-md);padding:.875rem;color:#fff;position:relative;overflow:hidden;box-shadow:var(--review-shadow-sm);transition:all var(--review-transition-base);display:flex;align-items:center;gap:.75rem}.stat-card-compact:before{content:"";position:absolute;top:-50%;right:-50%;width:150%;height:150%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);animation:rotate 20s linear infinite}.stat-card-compact:hover{transform:translateY(-2px);box-shadow:var(--review-shadow-md)}.stat-card-compact.primary{background:linear-gradient(135deg,var(--review-primary) 0%,var(--review-primary-dark) 100%)}.stat-card-compact.secondary{background:linear-gradient(135deg,var(--review-secondary) 0%,var(--review-secondary-dark) 100%)}.stat-card-compact.success{background:linear-gradient(135deg,var(--review-success) 0%,var(--review-success-dark) 100%)}.stat-card-compact.warning{background:linear-gradient(135deg,var(--review-warning) 0%,#D97706 100%)}.stat-card-compact.info{background:linear-gradient(135deg,var(--review-info) 0%,#2563EB 100%)}.stat-card-compact-icon{width:32px;height:32px;min-width:32px;background:#fff3;border-radius:50%;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;z-index:1}.stat-card-compact-icon svg{width:16px;height:16px}.stat-card-compact-content{flex:1;position:relative;z-index:1}.stat-card-compact-value{font-size:1.5rem;font-weight:800;line-height:1;margin-bottom:.25rem}.stat-card-compact-label{font-size:.625rem;font-weight:600;opacity:.9;text-transform:uppercase;letter-spacing:.05em;line-height:1.2}.stat-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:var(--review-radius-xl);padding:2rem;color:#fff;position:relative;overflow:hidden;box-shadow:var(--review-shadow-lg);transition:all var(--review-transition-slow);animation:slideInUp .5s ease-out;cursor:pointer}.stat-card:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.15) 0%,transparent 70%);animation:rotate 20s linear infinite;pointer-events:none}.stat-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:var(--review-shadow-2xl)}.stat-card.primary{background:linear-gradient(135deg,var(--review-primary) 0%,var(--review-primary-dark) 100%)}.stat-card.secondary{background:linear-gradient(135deg,var(--review-secondary) 0%,var(--review-secondary-dark) 100%)}.stat-card.success{background:linear-gradient(135deg,var(--review-success) 0%,var(--review-success-dark) 100%)}.stat-card.warning{background:linear-gradient(135deg,var(--review-warning) 0%,#D97706 100%)}.stat-card.info{background:linear-gradient(135deg,var(--review-info) 0%,#2563EB 100%)}.stat-card-icon{width:56px;height:56px;background:#ffffff40;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 15px #0000001a}.stat-card-icon svg{width:28px;height:28px}.stat-card-value{font-size:2.5rem;font-weight:800;line-height:1;margin-bottom:.5rem;position:relative;z-index:1;text-shadow:0 2px 4px rgba(0,0,0,.1)}.stat-card-label{font-size:.875rem;font-weight:600;opacity:.95;text-transform:uppercase;letter-spacing:.05em;position:relative;z-index:1}.stat-card-stars{display:flex;gap:.25rem;margin-top:.75rem;position:relative;z-index:1}.stat-card-stars svg{width:18px;height:18px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}.rating-distribution-card-compact{background:#fff;border-radius:var(--review-radius-md);padding:1rem;box-shadow:var(--review-shadow-sm);border:1px solid var(--review-border);transition:all var(--review-transition-base)}.rating-distribution-card-compact:hover{box-shadow:var(--review-shadow-md)}.rating-distribution-title-compact{font-size:.875rem;font-weight:700;color:var(--review-text-primary);margin-bottom:.875rem;display:flex;align-items:center;gap:.5rem;padding-bottom:.625rem;border-bottom:1px solid var(--review-border-light)}.rating-distribution-title-compact svg{width:16px;height:16px;color:var(--review-primary)}.rating-bar-container-compact{display:flex;align-items:center;gap:.5rem;margin-bottom:.625rem}.rating-bar-container-compact:last-child{margin-bottom:0}.rating-bar-label-compact{display:flex;align-items:center;gap:.25rem;min-width:50px;font-weight:600;font-size:.75rem;color:var(--review-text-primary)}.rating-bar-label-compact svg{width:12px;height:12px;color:#fbbf24}.rating-bar-track-compact{flex:1;height:8px;background:var(--review-light);border-radius:var(--review-radius-full);overflow:hidden;position:relative}.rating-bar-fill-compact{height:100%;background:linear-gradient(90deg,var(--review-primary) 0%,var(--review-primary-light) 100%);border-radius:var(--review-radius-full);transition:width 1s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.rating-bar-fill-compact:after{content:"";position:absolute;top:0;left:0;bottom:0;right:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.4) 50%,transparent 100%);animation:shimmer 2s infinite}.rating-bar-count-compact{min-width:35px;text-align:right;font-weight:600;font-size:.75rem;color:var(--review-text-secondary)}.rating-distribution-card{background:#fff;border-radius:var(--review-radius-xl);padding:2rem;box-shadow:var(--review-shadow-md);border:1px solid var(--review-border);transition:all var(--review-transition-slow)}.rating-distribution-card:hover{box-shadow:var(--review-shadow-xl);transform:translateY(-2px)}.rating-distribution-title{font-size:1.25rem;font-weight:800;color:var(--review-text-primary);margin-bottom:1.5rem;display:flex;align-items:center;gap:.75rem;padding-bottom:1rem;border-bottom:2px solid var(--review-border-light)}.rating-distribution-title svg{width:24px;height:24px;color:var(--review-primary)}.rating-bar-container{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;transition:all var(--review-transition-base)}.rating-bar-container:last-child{margin-bottom:0}.rating-bar-container:hover{transform:translate(4px)}.rating-bar-label{display:flex;align-items:center;gap:.375rem;min-width:90px;font-weight:700;font-size:.875rem;color:var(--review-text-primary)}.rating-bar-label svg{width:16px;height:16px;color:#fbbf24}.rating-bar-track{flex:1;height:12px;background:var(--review-light);border-radius:var(--review-radius-full);overflow:hidden;position:relative;box-shadow:var(--review-shadow-inner)}.rating-bar-fill{height:100%;background:linear-gradient(90deg,var(--review-primary) 0%,var(--review-primary-light) 100%);border-radius:var(--review-radius-full);transition:width 1s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 2px 8px #4f46e54d}.rating-bar-fill:after{content:"";position:absolute;top:0;left:0;bottom:0;right:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.4) 50%,transparent 100%);animation:shimmer 2s infinite}.rating-bar-count{min-width:50px;text-align:right;font-weight:700;font-size:.875rem;color:var(--review-text-secondary);background:var(--review-light);padding:.25rem .75rem;border-radius:var(--review-radius-full)}.unified-review-action{margin-bottom:2rem;animation:fadeInUp .6s ease-out}.unified-review-card{background:linear-gradient(135deg,#4f46e508,#7c3aed08,#ec489908);border:1.5px solid transparent;background-clip:padding-box;border-radius:var(--review-radius-lg);padding:2rem;position:relative;overflow:hidden;transition:all var(--review-transition-slow);display:flex;align-items:center;gap:2rem}.unified-review-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--review-radius-lg);padding:1.5px;background:linear-gradient(135deg,var(--review-primary) 0%,var(--review-secondary) 50%,rgba(236,72,153,.5) 100%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.3}.unified-review-card:after{content:"";position:absolute;top:-50%;right:-20%;width:400px;height:400px;background:radial-gradient(circle,rgba(79,70,229,.08) 0%,transparent 70%);animation:rotate 30s linear infinite;pointer-events:none}.unified-review-card:hover{transform:translateY(-2px);box-shadow:0 8px 30px #4f46e51f}.unified-review-card:hover:before{opacity:.5}.unified-review-visual{flex-shrink:0;position:relative;z-index:1}.unified-review-icon-wrapper{position:relative;display:inline-block}.unified-review-icon{width:80px;height:80px;background:linear-gradient(135deg,var(--review-primary) 0%,var(--review-primary-dark) 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px #4f46e54d,0 0 0 8px #4f46e51a;position:relative;animation:pulse 3s ease-in-out infinite}.unified-review-icon svg{width:40px;height:40px;color:#fff;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.unified-badge{position:absolute;top:-8px;right:-8px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;padding:.375rem .75rem;border-radius:var(--review-radius-full);font-size:.625rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;box-shadow:0 4px 12px #f59e0b66;animation:bounce 2s ease-in-out infinite}.unified-review-content{flex:1;position:relative;z-index:1}.unified-review-title{font-size:1.75rem;font-weight:800;background:linear-gradient(135deg,var(--review-primary) 0%,var(--review-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 .75rem;line-height:1.2}.unified-review-subtitle{font-size:1rem;color:var(--review-text-secondary);margin:0 0 1.5rem;line-height:1.6;max-width:600px}.btn-unified-review{background:linear-gradient(135deg,var(--review-primary) 0%,var(--review-primary-dark) 100%);color:#fff;padding:.875rem 2rem;border-radius:var(--review-radius-full);font-weight:700;font-size:1rem;border:none;cursor:pointer;display:inline-flex;align-items:center;gap:.75rem;transition:all var(--review-transition-slow);box-shadow:0 4px 16px #4f46e54d;position:relative;overflow:hidden}.btn-unified-review:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn-unified-review:hover:before{width:300px;height:300px}.btn-unified-review:hover{transform:translateY(-2px);box-shadow:0 8px 24px #4f46e566}.btn-unified-review:active{transform:translateY(0)}.btn-unified-review svg{width:20px;height:20px;position:relative;z-index:1}.btn-unified-review span{position:relative;z-index:1}.write-review-section{margin-bottom:2.5rem;animation:fadeIn .8s ease-out}.write-review-card{background:linear-gradient(135deg,#4f46e50d,#7c3aed0d);border:2px dashed var(--review-primary);border-radius:var(--review-radius-xl);padding:3rem 2rem;text-align:center;position:relative;overflow:hidden;transition:all var(--review-transition-slow)}.write-review-card:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(79,70,229,.08) 0%,transparent 70%);animation:pulse 4s ease-in-out infinite;pointer-events:none}.write-review-card:hover{border-color:var(--review-primary-dark);background:linear-gradient(135deg,#4f46e51a,#7c3aed1a);transform:translateY(-4px);box-shadow:var(--review-shadow-lg)}.write-review-icon{width:44px;height:44px;margin:0 auto .75rem;background:linear-gradient(135deg,var(--review-primary) 0%,var(--review-primary-dark) 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #4f46e54d;position:relative;z-index:1}.write-review-icon svg{width:22px;height:22px;color:#fff}.write-review-title{font-size:1.125rem;font-weight:700;color:var(--review-text-primary);margin-bottom:.375rem;position:relative;z-index:1}.write-review-subtitle{font-size:.75rem;color:var(--review-text-secondary);margin-bottom:1rem;position:relative;z-index:1;max-width:400px;margin-left:auto;margin-right:auto}.btn-write-review{background:linear-gradient(135deg,var(--review-primary) 0%,var(--review-primary-dark) 100%);color:#fff;padding:.625rem 1.5rem;border-radius:var(--review-radius-full);font-weight:700;font-size:.875rem;border:none;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;transition:all var(--review-transition-slow);box-shadow:0 4px 12px #4f46e54d;position:relative;z-index:1;overflow:hidden}.btn-write-review:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff40;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn-write-review:hover:before{width:400px;height:400px}.btn-write-review:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 12px 30px #4f46e580}.btn-write-review:active{transform:translateY(0) scale(.98)}.btn-write-review svg{width:20px;height:20px;position:relative;z-index:1}.swal2-container{z-index:10001!important}.swal2-popup{z-index:10002!important}.swal2-container-above-modal{z-index:10001!important}.swal2-popup-above-modal{z-index:10002!important}.swal2-container.swal2-backdrop-show{background:#0009!important;z-index:10001!important}body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown){overflow:hidden}.review-modal.active+.swal2-container{z-index:10001!important}.swal2-popup{box-shadow:0 25px 70px #0006!important}.swal2-title{font-size:1.5rem!important;font-weight:700!important}.swal2-html-container{font-size:1rem!important;line-height:1.6!important}.swal2-confirm{background:linear-gradient(135deg,var(--review-primary) 0%,var(--review-primary-dark) 100%)!important;border:none!important;padding:.75rem 2rem!important;font-weight:600!important;border-radius:var(--review-radius-full)!important;box-shadow:0 4px 12px #4f46e54d!important}.swal2-confirm:hover{transform:translateY(-2px)!important;box-shadow:0 6px 16px #4f46e566!important}.swal2-cancel{background:var(--review-light)!important;color:var(--review-text-primary)!important;border:1px solid var(--review-border)!important;padding:.75rem 2rem!important;font-weight:600!important;border-radius:var(--review-radius-full)!important}.swal2-cancel:hover{background:var(--review-border)!important}.validation-error-container{position:fixed;top:1.5rem;left:1.5rem;z-index:10000;display:flex;flex-direction:column;gap:.75rem;max-width:400px;pointer-events:none}.validation-error{background:#fff;border-left:4px solid var(--review-danger);border-radius:var(--review-radius-md);padding:1rem 1.25rem;box-shadow:0 8px 24px #ef444440,0 2px 8px #0000001a;display:flex;align-items:start;gap:.875rem;animation:slideInLeft .4s cubic-bezier(.4,0,.2,1);pointer-events:auto;position:relative;overflow:hidden}.validation-error:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(180deg,var(--review-danger) 0%,#DC2626 100%)}.validation-error-icon{width:24px;height:24px;min-width:24px;background:linear-gradient(135deg,var(--review-danger) 0%,#DC2626 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:.875rem;flex-shrink:0}.validation-error-content{flex:1}.validation-error-title{font-weight:700;font-size:.9375rem;color:var(--review-text-primary);margin:0 0 .25rem;line-height:1.3}.validation-error-message{font-size:.8125rem;color:var(--review-text-secondary);margin:0;line-height:1.5}.validation-error-close{width:20px;height:20px;min-width:20px;background:none;border:none;color:var(--review-text-secondary);cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all var(--review-transition-base);flex-shrink:0}.validation-error-close:hover{background:var(--review-light);color:var(--review-danger)}.validation-error-close svg{width:14px;height:14px}.validation-error.success{border-left-color:var(--review-success);box-shadow:0 8px 24px #10b98140,0 2px 8px #0000001a}.validation-error.success:before{background:linear-gradient(180deg,var(--review-success) 0%,#059669 100%)}.validation-error.success .validation-error-icon{background:linear-gradient(135deg,var(--review-success) 0%,#059669 100%)}.validation-error.warning{border-left-color:var(--review-warning);box-shadow:0 8px 24px #f59e0b40,0 2px 8px #0000001a}.validation-error.warning:before{background:linear-gradient(180deg,var(--review-warning) 0%,#D97706 100%)}.validation-error.warning .validation-error-icon{background:linear-gradient(135deg,var(--review-warning) 0%,#D97706 100%)}@keyframes slideInLeft{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOutLeft{0%{transform:translate(0);opacity:1}to{transform:translate(-100%);opacity:0}}.validation-error.removing{animation:slideOutLeft .3s cubic-bezier(.4,0,.2,1) forwards}.review-modal{display:none;position:fixed;top:0;left:0;right:0;bottom:0;width:100%;height:100%;background:#000000bf;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);z-index:9999;animation:fadeIn .3s ease-out;padding:1rem;overflow-y:auto;overflow-x:hidden}.review-modal.active{display:flex!important;align-items:center;justify-content:center}.modal-content{background:#fff;border-radius:var(--review-radius-2xl);width:100%;max-width:650px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;animation:slideInUp .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;margin:auto}.modal-header{background:linear-gradient(135deg,var(--review-primary) 0%,var(--review-primary-dark) 100%);color:#fff;padding:2rem;border-radius:var(--review-radius-2xl) var(--review-radius-2xl) 0 0;position:relative;overflow:hidden;display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;flex-shrink:0;z-index:20}.modal-header:before{content:"";position:absolute;top:-50%;right:-10%;width:250px;height:250px;background:radial-gradient(circle,rgba(255,255,255,.2) 0%,transparent 70%);border-radius:50%}.modal-title{font-size:1.5rem;font-weight:800;margin:0;display:flex;align-items:center;gap:.75rem;position:relative;z-index:1;line-height:1.3}.modal-title svg{width:24px;height:24px;flex-shrink:0}.modal-subtitle{font-size:.875rem;opacity:.95;margin-top:.5rem;position:relative;z-index:1;line-height:1.4}.modal-close{width:40px;height:40px;min-width:40px;flex-shrink:0;border:none;background:#fff3;color:#fff;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--review-transition-base);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:2}.modal-close:hover{background:#ffffff4d;transform:rotate(90deg) scale(1.1)}.modal-close svg{width:20px;height:20px}.modal-body{padding:2rem;overflow-y:auto;overflow-x:hidden;flex:1 1 auto;min-height:0;max-height:calc(85vh - 200px);scroll-behavior:smooth;position:relative;-webkit-overflow-scrolling:touch}.modal-body::-webkit-scrollbar{width:10px}.modal-body::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.modal-body::-webkit-scrollbar-thumb{background:linear-gradient(135deg,var(--review-primary) 0%,var(--review-primary-dark) 100%);border-radius:10px;border:2px solid #f1f1f1}.modal-body::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,var(--review-primary-dark) 0%,var(--review-secondary) 100%)}.modal-body{scrollbar-width:auto;scrollbar-color:var(--review-primary) #f1f1f1}.modal-footer{padding:1.5rem 2rem;border-top:1px solid var(--review-border-light);background:#fff;border-radius:0 0 var(--review-radius-2xl) var(--review-radius-2xl);display:flex;gap:1rem;justify-content:flex-end;flex-shrink:0;box-shadow:0 -4px 12px #0000000d;z-index:20;position:relative}.form-group{margin-bottom:1.5rem}.form-group:last-child{margin-bottom:0}.form-label{display:block;font-weight:700;color:var(--review-text-primary);margin-bottom:.5rem;font-size:.8125rem;text-transform:uppercase;letter-spacing:.05em}.form-label.required:after{content:"*";color:var(--review-danger);margin-left:.25rem;font-size:1rem}.form-input,.form-textarea{width:100%;padding:.875rem 1rem;border:1.5px solid var(--review-border);border-radius:var(--review-radius-md);font-size:.9375rem;color:var(--review-text-primary);transition:all var(--review-transition-base);background:#fff;font-family:inherit}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--review-primary);box-shadow:0 0 0 4px #4f46e51a;transform:translateY(-1px)}.form-input.error,.form-textarea.error{border-color:var(--review-danger);box-shadow:0 0 0 4px #ef44441a}.form-textarea{resize:vertical;min-height:100px;line-height:1.6}.form-error{color:var(--review-danger);font-size:.875rem;margin-top:.5rem;display:flex;align-items:center;gap:.5rem;animation:shake .3s ease}.form-helper{font-size:.875rem;color:var(--review-text-secondary);margin-top:.75rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.star-rating-input{display:flex;flex-direction:row-reverse;gap:.5rem;margin-top:1rem;justify-content:flex-end}.star-rating-input input[type=radio]{display:none}.star-rating-input label{cursor:pointer;font-size:2.5rem;color:#d1d5db;transition:all var(--review-transition-base);position:relative;line-height:1}.star-rating-input input[type=radio]:checked~label,.star-rating-input label:hover,.star-rating-input label:hover~label{color:#fbbf24;transform:scale(1.15);filter:drop-shadow(0 4px 12px rgba(251,191,36,.5))}.star-rating-input label:active{transform:scale(1.05)}.star-rating-value{margin-top:1rem;font-size:1.125rem;font-weight:700;color:var(--review-text-primary);display:flex;align-items:center;gap:.75rem;padding:.75rem 1.25rem;background:var(--review-light);border-radius:var(--review-radius-lg);border:2px solid var(--review-border)}.star-rating-value svg{width:20px;height:20px;color:#fbbf24}.select2-container--default .select2-selection--multiple{border:2px solid var(--review-border)!important;border-radius:var(--review-radius-lg)!important;padding:.75rem!important;min-height:56px!important;transition:all var(--review-transition-base)!important}.select2-container--default.select2-container--focus .select2-selection--multiple{border-color:var(--review-primary)!important;box-shadow:0 0 0 4px #4f46e51a!important}.select2-container--default .select2-selection--multiple .select2-selection__choice{background:linear-gradient(135deg,var(--review-primary) 0%,var(--review-primary-dark) 100%)!important;border:none!important;color:#fff!important;padding:.5rem 1rem!important;border-radius:var(--review-radius-full)!important;font-weight:600!important;font-size:.875rem!important}.select2-container--default .select2-selection--multiple .select2-selection__choice__remove{color:#fff!important;margin-right:.5rem!important;font-weight:700!important;font-size:1.125rem!important}.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover{color:#fffc!important}.select2-dropdown{border:2px solid var(--review-primary)!important;border-radius:var(--review-radius-lg)!important;box-shadow:var(--review-shadow-xl)!important}.select2-container--default .select2-results__option--highlighted[aria-selected]{background:var(--review-primary)!important}.select2-container--default .select2-search--inline .select2-search__field{font-size:1rem!important}.btn{padding:1rem 2rem;border-radius:var(--review-radius-full);font-weight:700;font-size:1rem;border:none;cursor:pointer;display:inline-flex;align-items:center;gap:.75rem;justify-content:center;transition:all var(--review-transition-slow);position:relative;overflow:hidden;white-space:nowrap}.btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#fff3;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn:hover:before{width:400px;height:400px}.btn-primary{background:linear-gradient(135deg,var(--review-primary) 0%,var(--review-primary-dark) 100%);color:#fff;box-shadow:0 4px 15px #4f46e566}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #4f46e580}.btn-secondary{background:#fff;color:var(--review-text-primary);border:2px solid var(--review-border)}.btn-secondary:hover{background:var(--review-light);border-color:var(--review-primary);color:var(--review-primary)}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.btn:active{transform:scale(.98)}.btn svg{width:20px;height:20px;position:relative;z-index:1}.reviews-section{margin-top:3rem}.reviews-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem;flex-wrap:wrap;gap:1.5rem;padding-bottom:1.5rem;border-bottom:3px solid var(--review-border-light)}.reviews-title{font-size:2rem;font-weight:800;color:var(--review-text-primary);display:flex;align-items:center;gap:1rem}.reviews-title svg{width:32px;height:32px;color:var(--review-primary)}.reviews-count{background:linear-gradient(135deg,var(--review-primary) 0%,var(--review-primary-dark) 100%);color:#fff;padding:.5rem 1.25rem;border-radius:var(--review-radius-full);font-size:.875rem;font-weight:700;box-shadow:0 4px 12px #4f46e54d}.review-filters{display:flex;gap:.5rem;flex-wrap:wrap}.filter-btn{padding:.5rem 1rem;border-radius:var(--review-radius-full);border:1px solid var(--review-border);background:#fff;color:var(--review-text-primary);font-weight:600;font-size:.75rem;cursor:pointer;transition:all var(--review-transition-base)}.filter-btn:hover{border-color:var(--review-primary);color:var(--review-primary);transform:translateY(-2px);box-shadow:var(--review-shadow-md)}.filter-btn.active{background:linear-gradient(135deg,var(--review-primary) 0%,var(--review-primary-dark) 100%);color:#fff;border-color:transparent;box-shadow:0 4px 12px #4f46e54d}.reviews-list{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.review-card{background:#fff;border-radius:var(--review-radius-lg);padding:1.25rem 1.25rem 1.5rem;box-shadow:var(--review-shadow-sm);border:1px solid var(--review-border);transition:all var(--review-transition-slow);animation:fadeInUp .5s ease-out;position:relative;overflow:visible}.review-card:before{content:"";position:absolute;top:0;left:0;width:3px;height:100%;background:linear-gradient(180deg,var(--review-primary) 0%,var(--review-primary-dark) 100%);border-radius:var(--review-radius-lg) 0 0 var(--review-radius-lg);transform:scaleY(0);transition:transform var(--review-transition-slow)}.review-card:hover:before{transform:scaleY(1)}.review-card:hover{transform:translateY(-2px);box-shadow:var(--review-shadow-lg);border-color:var(--review-primary-lighter)}.review-header{display:flex;align-items:start;gap:.875rem;margin-bottom:1rem}.review-avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--review-primary) 0%,var(--review-primary-dark) 100%);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1.125rem;flex-shrink:0;box-shadow:0 2px 8px #4f46e54d;border:2px solid white}.review-info{flex:1}.review-author{font-weight:700;font-size:.9375rem;color:var(--review-text-primary);margin-bottom:.375rem}.review-meta{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.review-rating{display:flex;gap:.15rem}.review-rating svg{width:14px;height:14px}.review-date{color:var(--review-text-secondary);font-size:.6875rem;font-weight:500;display:flex;align-items:center;gap:.25rem}.review-verified{display:inline-flex;align-items:center;gap:.25rem;background:linear-gradient(135deg,var(--review-success) 0%,var(--review-success-dark) 100%);color:#fff;padding:.25rem .625rem;border-radius:var(--review-radius-full);font-size:.625rem;font-weight:700;box-shadow:0 2px 8px #10b9814d}.review-verified svg{width:11px;height:11px}.review-title{font-size:1rem;font-weight:700;color:var(--review-text-primary);margin-bottom:.625rem;line-height:1.4}.review-comment{color:var(--review-text-secondary);line-height:1.6;margin-bottom:.875rem;font-size:.875rem}.review-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.875rem}.review-tag{background:linear-gradient(135deg,#4f46e51a,#7c3aed1a);color:var(--review-primary);padding:.375rem .75rem;border-radius:var(--review-radius-full);font-size:.6875rem;font-weight:600;border:1px solid rgba(79,70,229,.2);transition:all var(--review-transition-base)}.review-tag:hover{background:var(--review-primary);color:#fff;border-color:var(--review-primary);transform:translateY(-2px);box-shadow:0 4px 12px #4f46e54d}.review-actions{display:flex;gap:.625rem;padding-top:.875rem;padding-bottom:.375rem;border-top:1px solid var(--review-border-light);flex-wrap:wrap}.review-action-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem .875rem;border-radius:var(--review-radius-full);border:1px solid var(--review-border);background:#fff;color:var(--review-text-secondary);font-size:.75rem;font-weight:600;cursor:pointer;transition:all var(--review-transition-base)}.review-action-btn:hover{background:var(--review-primary);color:#fff;border-color:var(--review-primary);transform:translateY(-2px);box-shadow:0 4px 12px #4f46e54d}.review-action-btn.edit-btn:hover{background:var(--review-warning);border-color:var(--review-warning);color:#fff;box-shadow:0 4px 12px #f59e0b4d}.review-action-btn.active{background:linear-gradient(135deg,var(--review-primary) 0%,var(--review-primary-dark) 100%);color:#fff;border-color:transparent;box-shadow:0 4px 12px #4f46e566}.review-action-btn svg{width:14px;height:14px}.empty-reviews{text-align:center;padding:5rem 2rem;background:var(--review-light);border-radius:var(--review-radius-2xl);border:3px dashed var(--review-border)}.empty-reviews-icon{width:120px;height:120px;margin:0 auto 2rem;background:linear-gradient(135deg,#4f46e51a,#7c3aed1a);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--review-primary);animation:pulse 2s ease-in-out infinite}.empty-reviews-icon svg{width:64px;height:64px}.empty-reviews-title{font-size:1.75rem;font-weight:800;color:var(--review-text-primary);margin-bottom:.75rem}.empty-reviews-text{color:var(--review-text-secondary);font-size:1.125rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(100px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-8px)}50%{transform:translate(8px)}75%{transform:translate(-4px)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}@media (max-width: 1200px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.validation-error-container{top:1rem;left:1rem;right:1rem;max-width:calc(100% - 2rem)}.validation-error{padding:.875rem 1rem;gap:.75rem}.validation-error-title{font-size:.875rem}.validation-error-message{font-size:.75rem}.review-system-component{margin-left:1rem;margin-right:1rem}.unified-review-card{flex-direction:column;text-align:center;gap:1.5rem;padding:1.5rem}.unified-review-icon{width:64px;height:64px}.unified-review-icon svg{width:32px;height:32px}.unified-review-title{font-size:1.5rem}.unified-review-subtitle{font-size:.875rem;max-width:100%}.btn-unified-review{padding:.75rem 1.5rem;font-size:.875rem}.btn-unified-review svg{width:16px;height:16px}.stats-two-column-layout{grid-template-columns:1fr}.review-modal{padding:1rem}.modal-content{max-width:90%;max-height:90vh}.modal-header{padding:1.5rem;flex-wrap:wrap}.modal-title{font-size:1.25rem}.modal-subtitle{font-size:.8125rem}.modal-body{padding:1.5rem;max-height:calc(90vh - 200px)}.modal-footer{padding:1.25rem 1.5rem}.stats-grid-compact{grid-template-columns:repeat(2,1fr)}.stats-grid{grid-template-columns:1fr}.stat-card{padding:1.5rem}.stat-card-value{font-size:2rem}.stat-card-compact{padding:.75rem}.stat-card-compact-value{font-size:1.25rem}.review-system-header-compact{padding:1rem 1.25rem;margin-bottom:1.25rem}.review-system-header-content-compact{flex-direction:column;text-align:center}.review-system-title-section-compact{min-width:100%}.review-system-main-title-compact{font-size:1.25rem;justify-content:center}.review-system-main-title-compact svg{width:20px;height:20px}.review-system-subtitle-compact{font-size:.6875rem}.review-system-quick-stats-compact{width:100%}.quick-stat-value-compact{font-size:1.5rem}.modal-content{max-width:100%;margin:0;border-radius:var(--review-radius-xl)}.modal-header,.modal-body,.modal-footer{padding:2rem 1.5rem}.modal-title{font-size:1.5rem}.write-review-card{padding:2.5rem 1.5rem}.write-review-title{font-size:1.5rem}.reviews-header{flex-direction:column;align-items:start}.reviews-title{font-size:1.5rem}.review-card{padding:1.5rem}.review-avatar{width:56px;height:56px;font-size:1.25rem}.review-author{font-size:1.125rem}.reviews-list{grid-template-columns:repeat(2,1fr);gap:1rem}}@media (max-width: 480px){.validation-error-container{top:.5rem;left:.5rem;right:.5rem;max-width:calc(100% - 1rem)}.validation-error{padding:.75rem .875rem;gap:.625rem;border-radius:var(--review-radius-sm)}.validation-error-icon{width:20px;height:20px;min-width:20px;font-size:.75rem}.validation-error-title{font-size:.8125rem}.validation-error-message{font-size:.6875rem}.review-system-component{margin-left:.5rem;margin-right:.5rem}.unified-review-card{padding:1.25rem}.unified-review-icon{width:56px;height:56px}.unified-review-icon svg{width:28px;height:28px}.unified-review-title{font-size:1.25rem}.unified-review-subtitle{font-size:.8125rem}.btn-unified-review{width:100%;justify-content:center}.review-modal{padding:0;align-items:flex-start}.modal-content{max-width:100%;width:100%;max-height:100vh;min-height:100vh;border-radius:0;margin:0}.modal-header{border-radius:0;padding:1.25rem}.modal-title{font-size:1.125rem}.modal-title svg{width:20px;height:20px}.modal-subtitle{font-size:.75rem}.modal-close{width:36px;height:36px;min-width:36px}.modal-close svg{width:18px;height:18px}.modal-body{padding:1.25rem;flex:1 1 auto;max-height:calc(100vh - 200px);overflow-y:auto!important}.modal-footer{flex-direction:column;border-radius:0;padding:1.25rem;gap:.75rem}.btn{width:100%;padding:1rem}.form-group{margin-bottom:1.25rem}.star-rating-input label{font-size:2.25rem}.form-input,.form-textarea{font-size:1rem;padding:.875rem}.star-rating-input label{font-size:2.5rem}.review-system-header{padding:1.5rem 1rem;border-radius:var(--review-radius-xl)}.review-system-main-title{font-size:1.5rem;flex-direction:column;gap:.5rem}.review-system-subtitle{font-size:.875rem}.quick-stat-value{font-size:2.5rem}.quick-stat-stars svg{width:20px;height:20px}.write-review-card{padding:2rem 1rem}.write-review-icon{width:56px;height:56px}.write-review-icon svg{width:28px;height:28px}.review-filters{width:100%}.filter-btn{flex:1;min-width:100px}.stat-card-value{font-size:1.75rem}.stat-card-icon{width:48px;height:48px}.reviews-list{grid-template-columns:1fr;gap:1rem}.stats-grid-compact{grid-template-columns:1fr}.review-card{padding:1rem}}@media print{.review-modal,.write-review-section,.review-actions,.review-filters{display:none!important}}
