.review-form-wrapper{max-width:800px;margin:0 auto;padding:30px;font-family:inherit}.review-form-container{background-color:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 10px #0000001a}.review-form-title{color:#333;text-align:center;border-bottom:1px solid #e0e0e0;margin:0;padding:20px;font-size:1.5rem}.review-form-content{padding:20px}.rating-section,.content-section,.image-section{margin-bottom:25px}.rating-section h3,.content-section h3,.image-section h3{color:#333;margin-bottom:10px;font-size:1.1rem}.star-rating{gap:15px;display:flex}.star{cursor:pointer;color:#ddd;font-size:2rem;transition:color .2s}.star.filled{color:#fc0}.content-section textarea{resize:vertical;border:1px solid #ddd;border-radius:4px;width:100%;min-height:150px;padding:15px;font-family:inherit;font-size:.95rem;line-height:1.5}.image-upload{align-items:center;margin-bottom:15px;display:flex}.image-upload input[type=file]{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.image-upload label{color:#333;cursor:pointer;background-color:#f5f5f5;border-radius:4px;padding:10px 20px;font-size:.9rem;transition:background-color .2s}.image-upload label:hover{background-color:#e0e0e0}.image-upload label.disabled{color:#999;cursor:not-allowed;background-color:#e0e0e0}.image-count{color:#666;margin-left:15px;font-size:.9rem}.image-preview-container{flex-wrap:wrap;gap:10px;margin-top:15px;display:flex}.image-preview{border:1px solid #ddd;border-radius:4px;width:100px;height:100px;position:relative;overflow:hidden}.image-preview img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.remove-image{cursor:pointer;color:#333;background-color:#fffc;border:none;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:14px;line-height:1;display:flex;position:absolute;top:5px;right:5px}.error-message{color:#e53935;background-color:#ffebee;border-radius:4px;margin-top:15px;padding:12px;font-size:.9rem}.review-form-actions{justify-content:flex-end;margin-top:20px;display:flex}.review-form-submit{cursor:pointer;color:#fff;background-color:#4caf50;border:none;border-radius:4px;padding:12px 24px;font-size:1rem;font-weight:500;transition:background-color .2s}.review-form-submit:hover{background-color:#43a047}.review-form-submit:disabled{cursor:not-allowed;background-color:#a5d6a7}.review-form-login-required{text-align:center;background-color:#fff;border-radius:8px;padding:40px 20px;box-shadow:0 2px 10px #0000001a}.review-form-login-required h2{color:#333;margin-bottom:15px;font-size:1.5rem}.review-form-login-required p{color:#666;margin-bottom:20px;font-size:1rem}.review-login-button{color:#fff;background-color:#2196f3;border-radius:4px;padding:10px 20px;font-weight:500;text-decoration:none;transition:background-color .2s;display:inline-block}.review-login-button:hover{background-color:#1976d2}.review-form-success{text-align:center;background-color:#fff;border-radius:8px;padding:40px 20px;box-shadow:0 2px 10px #0000001a}.review-form-success h2{color:#4caf50;margin-bottom:15px;font-size:1.5rem}.review-form-success p{color:#666;margin-bottom:20px;font-size:1rem}.review-form-button{color:#fff;cursor:pointer;background-color:#4caf50;border:none;border-radius:4px;padding:10px 20px;font-size:.95rem;font-weight:500;transition:background-color .2s;display:inline-block}.review-form-button:hover{background-color:#43a047}@media (max-width:768px){.review-form-wrapper{padding:15px}.review-form-title{padding:15px;font-size:1.3rem}.review-form-content{padding:15px}.star{font-size:1.8rem}.image-preview{width:80px;height:80px}.review-form-submit{width:100%}}.character-count{color:#666;justify-content:flex-end;gap:2px;margin-top:8px;font-size:12px;display:flex}.character-count span:first-child{font-weight:500}.character-count .warning{color:#dc3545}
